对数据库执行 SQL 语句并运行脚本文件。
dbisql -c "connection-string" [ options ] [ dbisql-statement | dbisql-script-file ]
dbisql -c "connection-string" -ul [ options ] [ dbisql-statement | dbisql-script-file ]
dbisql-statement:由命令分隔符分隔的一个 SQL 语句或一系列 sql 语句。
选项 | 说明 |
---|---|
@data |
读取来自指定的环境变量或配置文件的选项。 如果存在和配置文件同名的环境变量,则使用环境变量。请参见配置文件。 要保护口令或配置文件中的其它信息,可以使用文件隐藏实用程序对配置文件的内容进行模糊处理。请参见文件隐藏实用程序 (dbfhide)。 |
-c "keyword=value; ..." |
指定连接参数。如果 Interactive SQL 不能连接,则将显示一个窗口,您可以在其中输入连接参数。如果未指定用户 ID 和口令,则会使用缺省 UID DBA 和 PWD sql。请参见连接参数。 |
-d delimiter |
指定命令分隔符。分隔符两侧的引号是可选的,但是,当分隔符对于命令解释程序自身来说具有特殊含义时,引号则是必需的。 此选项会替换 command_delimiter 选项的设置。请参见command_delimiter 选项 [Interactive SQL]。 |
-d1 | 将用户显式执行的所有语句都回写到命令窗口 (STDOUT)。在调试 SQL 脚本或在 Interactive SQL 处理长 SQL 脚本时,这样可以提供有用的反馈。(最后一个字符是数字 1,而不是小写的 L)。只有在将 Interactive SQL 作为命令行程序运行时,才可以使用此选项。 |
-datasource DSN-name | 指定要连接的 ODBC 数据源。 |
-f filename |
在 [SQL 语句] 窗格中打开(但不运行)名为 filename 的文件。 如果有 -f 选项,将忽略 -c 选项;即不会连接数据库。 文件名可用引号括起来;如果文件名包含空格,则必须 用引号括起来。 如果文件不存在,或它实际上是目录而非文件,则 Interactive SQL 会输出错误消息,然后退出。 如果文件名不包括完整的驱动器和路径说明,则假定它相对于当前目录。 只有在将 Interactive SQL 作为窗口式应用程序运行时,才支持此选项。 |
-host hostname | 指定正运行数据库服务器的计算机的 hostname 或 IP 地址。可以使用名称 localhost 来代表当前计算机。 |
-nogui |
以控制台应用程序的形式运行 Interactive SQL,不使用窗口式用户界面。这对于批处理操作是很有用的。 如果指定 dbisql-statement 或 dbisql-script-file,则假定已指定 -nogui。 在此模式下,Interactive SQL 将设置程序退出代码以指示成功或失败。在 Windows 操作系统中,可使用环境变量 ERRORLEVEL 检查程序退出代码。请参见软件组件的退出代码。 |
-onerror { continue | exit } |
控制在从脚本文件读取语句时如果遇到错误将采取的操作。在批处理操作中使用 Interactive SQL 时,它是很有用的。此选项会替换 on_error 设置。请参见on_error 选项 [Interactive SQL]。 定义以下支持的 behavior 值之一:
|
-q |
取消输出消息。将实用程序设置为在安静模式下运行。只有在使用语句或脚本文件启动 Interactive SQL 时,此选项才有用。指定此选项不会取消错误消息,但会取消以下各项:
|
-ul |
指定 UltraLite 数据库为缺省数据库。Interactive SQL 会根据您连接到的数据库类型来决定可供使用的选项。 缺省情况下,Interactive SQL 会假定您连接的是 SQL Anywhere 数据库。如果指定 -ul 选项,缺省设置会更改为 UltraLite 数据库。不管已将哪种数据库设置为缺省数据库,您都可以通过在 [连接] 窗口的 [更改数据库类型] 下拉列表中选择需要的数据库类型来连接到 SQL Anywhere 或 UltraLite 数据库。 有关从 Interactive SQL 连接到 UltraLite 数据库的详细信息,请参见用于 UltraLite 的 Interactive SQL 实用程序 (dbisql)。 |
-version |
显示 Interactive SQL 的版本号。您也可以在 Interactive SQL 中查看版本号;在 [帮助] 菜单中,单击 [关于 Interactive SQL]。 |
-x |
扫描语句,但不执行这些语句。对于检查长脚本文件的语法错误,此选项很有用。 有关 SQL 语句的详细说明,请参见SQL 语句。 |
dbisql-statement | dbisql-script-file |
执行 SQL 语句或执行指定的 dbisql-script-file。 如果未指定 dbisql-statement 或 dbisql-script-file,则 Interactive SQL 将进入交互模式,在这种模式下,可以在命令窗口中键入语句。 |
Interactive SQL 允许您浏览数据库,执行 SQL 语句,并运行脚本文件。还提供关于以下内容的反馈:
可以使用 Interactive SQL 连接到 SQL Anywhere 数据库、UltraLite 数据库、SAP Sybase IQ 数据库、SAP HANA 数据库或通用 ODBC 数据库。
对于 Windows,有两个可执行文件:
批处理脚本应调用 dbisql 或 dbisql.com 而不是 dbisql.exe。dbisql.com 可执行文件作为控制台应用程序进行链接。
dbisql.exe 可执行文件作为窗口式应用程序进行链接,且不阻止用于启动该应用程序的命令 shell。如果 dbisql.exe 从批处理文件运行,您将不会看到有任何输出发送到标准输出或标准错误文件。
还可使用 default_isql_encoding 选项来临时设置 Interactive SQL 的缺省编码。请参见default_isql_encoding 选项 [Interactive SQL]。
可使用 INPUT、OUTPUT 或 READ 语句的 ENCODING 子句,指定在读取或写入文件时要使用的编码。请参见:
退出代码是零(成功)或非零(失败)。只有在批处理模式中运行 Interactive SQL(即执行包含 SQL 语句或脚本文件名称的命令行)时才会设置非零退出代码。请参见软件组件的退出代码。
在命令提示符模式下,Interactive SQL 将设置程序退出代码以指示成功或失败。在 Windows 操作系统中,可使用环境变量 ERRORLEVEL 检查程序退出代码。
通过 Interactive SQL 执行 reload.sql 文件且数据库已加密时,必须将加密密钥指定为一个参数。如果未在 READ 语句中提供密钥,Interactive SQL 会提示您输入密钥。
您可以通过下列方法来启动 Interactive SQL:
以下命令针对 UltraLite 的 CustDB.udb 数据库运行脚本文件 mycom.sql。因为未定义用户 ID 和口令,所以假定缺省用户 ID 为 DBA 且口令为 sql。-onerror 选项定义为 Exit;因此,如果脚本文件存在错误,则该过程将终止。
dbisql -ul -c DBF=CustDB.udb -onerror exit mycom.sql |
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |