【问题标题】:Run script with create table on sybase-iq在 sybase-iq 上使用 create table 运行脚本
【发布时间】:2012-08-09 19:06:16
【问题描述】:

我想从 sybase-iq 上的脚本创建表。 脚本 table.sql 包含:

create table abc
(
 id int
)
go

我运行脚本命令

isql -U*** -P*** -S*** -D*** -itable.sql  -oout.txt

我确定连接参数没问题。脚本名称也正确。

但它不起作用,脚本没有创建表,我在输出文件中没有任何错误。

提前感谢您的建议。

PX

【问题讨论】:

  • 您是否尝试过先以交互方式运行脚本,看看它是否有效。

标签: sybase sap-iq isql


【解决方案1】:

我找到了!

脚本由 isql 生成,带有选项 -o,它是 Macintosh 格式! 我在 np++ 中见过它。 我已将格式更改为 DOS\Windows 并且可以正常工作!

EOL 出现问题。我有 char(13) (Mac),但正确的是 char(13)+char(10) (DOS)。

感谢您的回答!

【讨论】:

    【解决方案2】:

    输入语法错误以查看是否正确找到了“go”并且该语句实际上正在发送到服务器。你应该得到一个错误。

    如果是,那么它是默认数据库吗?我不确定 Sybase IQ 是否有不同的数据库,如 ASE,但如果有,那么您的登录 ID 可能有一个默认数据库,可以将选项卡安装到不同的数据库?

    【讨论】:

    • 感谢您的回答!我输入了一个语法错误,但什么也没发生。我在 isql 命令中更改了文件名,但出现错误“无法打开输入文件”。因此,isql 获取文件,但没有其他内容
    • 那么“go”肯定有问题。在 ASE(即不是 IQ)上,如果前面有空格,它将失败。) isql 当它在行的开头准备好“go”时,将它作为 sql 批处理的结尾,并将该 sql 发送到服务器.因为当您明显错误的 sql 意味着“go”不起作用时,您没有收到错误消息。我不能代表智商,所以检查 isql 肯定是一样的。以交互方式尝试 isql - “go”有效吗?
    • EOL 出现问题。我有 char(13),但正确的是 char(13)+char(10)。
    猜你喜欢
    • 1970-01-01
    • 2018-09-08
    • 2018-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多