【问题标题】:DATASTAGE- SQL Server from datastage: load table with strange nameDATASTAGE- 来自 datastage 的 SQL Server:加载具有奇怪名称的表
【发布时间】:2011-06-21 13:51:34
【问题描述】:

我有一个 SQL Server 表,其名称类似于 Vers-xxx_yyy。 如您所见,有一个字符“-”。

我不知道为什么要制作这个表,但我必须从 datastage 作业中加载它。
所以当我运行我的工作时,我收到错误“表不存在”。
我使用 odbc 阶段。

直接在 SQL Server 上可以使用语法[Vers-xxx_yyy],但不能在 datastage 中使用。

此数据库已存在,并被其他应用程序使用。

有没有办法避免/解决问题?

【问题讨论】:

    标签: sql-server datastage


    【解决方案1】:

    尝试在表名上使用双引号。另外最好不要使用连字符,而是可以使用下划线

    【讨论】:

    • 我不是DB的所有者,所以我什么都做不了。我找到了解决方案,在表名和带有选项 upsert 的 odbc 阶段周围使用方括号。使用选项写入,它给出了错误。谢谢
    【解决方案2】:

    尝试使用反斜杠 \ 来转义 - 字符 - Vers\-xxx_yyy

    【讨论】:

      【解决方案3】:

      您应该也可以在 ODBC 连接器上以这种形式输入表名:[Vers-xxx_yyy]

      另一种解决方案是通知 SQL 查询此表:SELECT * FROM [Vers-xxx_yyy]

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-04-19
        • 2013-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多