【问题标题】:How to Generate Format file without doing BCP out operation in SYBASE explicitly如何在不显式在 SYBASE 中执行 BCP 输出操作的情况下生成 Format 文件
【发布时间】:2016-06-07 00:53:52
【问题描述】:

我正在寻找一个实用程序,它可以帮助我为任何表生成格式文件,而无需在 Sybase 中执行 BCP。

我了解并了解通过调用 BCP out 操作生成 Format 文件的解决方案。但这种方法的缺点如下 1. 它完全是手动的,并且在我必须为 1600 个具有大量列的表做的情况下,这将是一场噩梦。 2.如果任何表的DDL发生变化,那么跟踪和重新生成将是一个痛苦。

如果有人可以建议/建议我一个解决方案,我可以通过该解决方案实现两个或其中一个要求,那么它将简化我的工作。

谢谢 安迪

【问题讨论】:

  • 您绝对需要格式文件吗?通常使用“-c”很简单,如果需要,您可以将字段分隔符更改为数据中不存在的字符或字符串。
  • "-c" 选项在处理具有 250 M 数据的表时速度较慢。 BCP 有一个更快的原生格式选项,并且将它与格式文件选项结合起来让我可以控制选择需要推入或推出的内容。我正在处理一项数据迁移任务并改进我无法冒险的实时环境的架构。
  • 我明白了。好吧 - 我想我会使用 perl 来读取 syscolumns 和 systypes 来生成格式文件。我可以看到这可能是一件苦差事,但我认为它可以正常工作。您可能有用户类型,这会使事情变得有点复杂,但原则上......

标签: sybase bcp


【解决方案1】:

您可以通过使用 xp_cmdshell 启动 BCP-out 以生成格式文件来自动执行此操作。您可以从存储过程中调用 xp_cmdshell,这样您就可以对目录中的每个表执行它。 但正如这里也提到的,你真的需要所有这些格式文件吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-07
    • 2014-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    • 2013-10-04
    相关资源
    最近更新 更多