关闭

用 pdsql 管理和部署 IBM Rational ClearQuest 数据库

发表于:2008-4-02 16:03

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

2.2 执行标准 SQL 语句

        pdsql 支持所有的标准 SQL 语句,如 select、insert、delete、update、create、drop、grant、commit 和 rollback 等等,可以在登陆后提示符“>”下执行,也可以在文件中批处理执行。下面是两个执行标准 SQL 语句的示例:

>select id, version from defect;
C:\>pdsql -v ora -s oracleserver -db cqdbsid -u cquser -p cqpassword < sql.txt
 

        pdsql 也支持调用数据库的存储过程,语法是:{call [arg=]<storedproc>(arg,arg,arg)};,下面是个调用 Oracle 数据库存储过程的示例:

>select id, version from defect;
 

2.3 执行指定数据库特有语句

        pdsql 也支持不同厂商数据库特有的语句,例如对于 SQL Server 数据库可以使用 use 命令在不同的数据库之间自由切换,如:>use cqmasterdb;

        如果要在一个通用的命令文件中执行指定数据库特有的语句,可以用 vendor_filter 命令开始和 end_vendor_filter 命令结束从而对特定数据库进行筛选,下面是一个筛选功能的示例:

>vendor_filter SQL_SERVER ORACLE MS_ACCESS;
>create unique index master_schemas_name on master_schemas (name);
>end_vendor_filter;
>vendor_filter DB2;
>create unique index mast_schemas_name on master_schemas (name);
>end_vendor_filter;
 

2.4 执行 pdsql 增强命令

        所有的 pdsql 命令都要以分号“;”结束,你可以用多行来表达一个长的命令,只有到分号此长命令才会被执行。以“#”开始到行末尾表示是注释(如果要用“#”号而不是注释就用“\#”转义即可)。

        下面是一些 pdsql 增强命令和相应的描述:

time_on; time_off; 
        启用或禁用显示命令执行时间,可以在 pdsql 登陆时用 -time 选项启用该功能。
echo_on; echo_off; 
        启用或禁用回显所执行的命令,可以在 pdsql 登陆时用 -echo 选项启用该功能。
prompt_on; prompt_off; 
        启用或禁用显示命令执行时间,可以在 pdsql 登陆时用 -noprompt 选项启用该功能。
fatal_on; fatal_off; 
        启用或禁止命令执行错误后终止 pdsql,可以在 pdsql 登陆时用 -errors_are_fatal 选项启用该功能。
autocommit_on; autocommit_off; 
        启用或禁用命令执行后自动提交,可以在 pdsql 登陆时用 -autocommit 选项启用该功能。
whatdb; 
        输出当前连接数据库信息。
例如:

>whatdb;
DATA_SOURCE_NAME:
DRIVER_NAME: rkdb222.dll
DRIVER_VER: 05.20.0059 (b0036, u0023)
DRIVER_ODBC_VER: 03.52
SERVER_NAME: DB2SERVER
DBMS_NAME: UDB DB2 for Windows, UNIX, and Linux
DBMS_VER: 09.10.0000
DATABASE_NAME: CQUSERDB
USER_NAME: db2admin
INTERNAL VENDOR TYPE: DB2
 

driver_features; 
        输出当前使用的 ODBC 功能驱动详细信息。
例如:

>driver_features;
ACCESSIBLE_PROCEDURES 78
SQL_ACCESSIBLE_TABLES 78
SQL_ACTIVE_CONNECTIONS 0
SQL_ACTIVE_STATEMENTS 100
*SQL_ALTER_TABLE 61545
*SQL_BOOKMARK_PERSISTENCE 80
SQL_COLUMN_ALIAS 89
SQL_CONCAT_NULL_BEHAVIOR 0
*SQL_CONVERT_BIGINT 0
*SQL_CONVERT_BINARY 0
*SQL_CONVERT_BIT 0
*SQL_CONVERT_CHAR 98310
*SQL_CONVERT_DATE 1
... ...
tables;
输出当前用户在当前数据库下的所有表名。
views;
输出当前数据库下的所有视图。
procedures;
输出当前数据库下的所有存储过程。
types;
输出当前数据库管理系统支持的所有数据类型信息。
例如:

>types;
LONGVARBINARY:
BLOB (precision = 2147483647)
LONG VARCHAR FOR BIT DATA (precision = 32700)
LONGVARCHAR:
CLOB (precision = 2147483647)
LONG VARCHAR (precision = 32700)
TIMESTAMP:
TIMESTAMP (precision = 26)
CHAR:
CHAR (precision = 254)
VARCHAR:
VARCHAR (precision = 32672)
INTEGER:
INTEGER (precision = 10)
FLOAT:
FLOAT (precision = 15)
DOUBLE:
DOUBLE (precision = 15)
REAL:
REAL (precision = 7)
DECIMAL:
DECIMAL (precision = 31)
NUMERIC:
NUMERIC (precision = 31)
WLONGVARCHAR:
DBCLOB (precision = 1073741824)
LONG VARGRAPHIC (precision = 16336)
WCHAR:
GRAPHIC (precision = 127)
WVARCHAR:
VARGRAPHIC (precision = 16336)

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号