Interactive SQL 能让您使用 dbisql 实用程序键入 SQL 命令或运行命令文件。dbisql 还提供有关受影响行数、每个命令所需时间、查询执行计划以及任何错误消息的反馈信息。
dbisql 的语法为:
dbisql [ option] [ dbisql_command | command_file ]
如果使用 dbisql_command,Interactive SQL 就会执行此命令。还可以指定命令文件名称。如果您不指定 dbisql_command 或 command_file,Interactive SQL 就会进入交互式方式,此时您可以在命令窗口中键入命令。
退出代码是 0(成功)或非 0(失败)。
Table 1-1 给出可供 dbisql 使用的命令行选项。
选项 |
说明 |
|---|---|
-c “keyword=value” |
提供数据库连接参数 |
-codepage code_page |
指定在读取或写入文件时使用的代码页。 |
-d delimiter |
将给定的字符串用作命令分隔符。 |
-d1 |
在语句执行的同时将其显示出来(仅命令提示符模式)。 |
-datasource dsn_name |
指定要连接的 ODBC 数据源。 |
-f file_name |
打开(但不运行)名为 file_name 的文件。 |
-host host_name |
指定运行数据库服务器的计算机的 host_name 或 IP 地址。 |
-jConnect |
使用 jConnect 可连接到数据库。 |
-nogui |
在命令提示符模式下运行。 |
-onerror {continue | exit} |
覆盖所有用户的 ON_ERROR 选项。 |
-port port_number |
在指定的端口号上查找数据库服务器。 |
-q |
安静模式 – 不显示消息或窗口(注意,这并不禁止错误消息的显示)。 |
-x |
仅检查语法;不执行命令。 |
-c – 如果 Interactive SQL 无法连接,它会显示一个对话框,以供您输入连接参数。
-codepage – 指定在读取或写入文件时使用的代码页。缺省的代码页是所运行平台的缺省代码页。
例如,在英语版的 Windows NT 计算机上,窗口化程序使用 1252 (ANSI) 代码页。如果您希望 Interactive SQL 读取使用 297(IBM 法语版)代码页创建的文件,请指定以下选项。
-codepage 297
还可以使用 DEFAULT_ISQL_ENCODING 选项为 Interactive SQL 设置缺省代码页。另外,还可以通过在发出 input、output 或 read 语句时指定 encoding 子句,来选择代码页。
-d – 分隔符两侧的引号是可选的,但如果命令 shell 自身以某种特殊方式解释分隔符,则引号就是必需的。
命令分隔符对该 Interactive SQL 会话中的所有连接都有效,无论数据库中存储的设置如何都是如此(对于用户,则指 public 设置)。
-d1 –(末尾字符是数字 1,而不是小写 L。)Interactive SQL 在执行语句的同时会将这些语句都显示在“命令”窗口中。这对调试 SQL 脚本或在 Interactive SQL 处理较长的 SQL 脚本时很有用。
-f – 打开(但不运行)名为 filename 的文件。可以用引号将文件名引起来,如果文件名中含有空格,则必须用引号引起来。如果文件不存在,或者实际上是目录,而不是文件,Interactive SQL 就会在控制台中显示错误消息,并随后退出。如果文件名中不包含完整的驱动器和路径指定,系统就会假定它是相对于当前目录的。
-host – 指定运行数据库服务器的计算机的主机名或 IP 地址。可以使用名称“localhost”来代表当前计算机。
-nogui – 在命令提示符模式下运行 Interactive SQL,而不显示窗口化用户界面。这适用于批处理操作。如果您指定 dbisql 命令或命令文件,则会用到 –nogui。
在此模式下,Interactive SQL 会设置程序退出代码以指明是成功还是失败。在 Windows 操作系统上,可将环境变量 ERRORLEVEL 设置为程序退出代码。退出代码如下所示:
程序退出代码 |
说明 |
|---|---|
0 |
成功 |
1 |
一般故障。这说明,SQL 或 Interactive SQL 语句未能成功执行,用户选择停止执行 SQL 语句。另外,Interactive SQL 也可以记录一个内部错误。 |
5 |
用户终止了交互式 SQL。执行过程中发生错误时,系统会提示用户忽略错误、停止或退出 Interactive SQL。如果用户选择退出,程序会返回代码 5。如果发生错误,而且 Interactive SQL 选项 ON_ERROR 设置为 EXIT,则也会返回代码 5。 |
9 |
无法连接。 |
255 |
命令有误。命令中含有不完整或无效的选项。 |
-onerror – 对在从命令文件中读取语句的过程中遇到错误时发生的事情进行控制。此选项会覆盖 ON_ERROR 设置。如果是在批处理操作中使用 Interactive SQL,则此选项很有用。
-port – 指定数据库服务器在其上运行的端口号。
-q – 不显示输出消息。只有在通过命令或命令文件启动 Interactive SQL 时,此选项才有用。请注意,指定此选项不会禁止错误消息的显示。仅检查语法 (-x) 会扫描命令,但不执行命令。这适用于检查较长的命令文件中有无语法错误。