1. 怎样使用命令行执行DB2的SQL
一、准备工作
运行db2cmd或者db2cw打开DB2命令行处理器
进入SQL脚本存放目录
用db2 connect to <dbname> user <username> using <password> 命令连接数据库
用db2 set current schema <schema_name> 设置当前的SCHEMA,这个SCHEMA可以是未创建的,DB2会自动创建。
二、执行不同类型的SQL
1、在命令行执行简单SQL命令
db2 <SQL语句内容>
2、在命令行执行SQL脚本文件
db2 -td; -cf <SQL脚本文件路径> -l <输出日志文件路径>
说明:-td; 指定语句结束标志。因为一般SQL都是以分号结尾,所以就写成“-td;”。
-l <输出日志文件路径> 是可选的。
3、在命令行执行DB2 存储过程文件
db2 -td@ -f <SQL过程文件路径> -l <输出日志文件路径>
说明:-td@ 指定语句结束标志。因为一般SQL过程都是以@结尾,所以就写成“-td@”。
-l <输出日志文件路径> 是可选的。
2. 如何在db2命令行运行sql必知必会例子
db2 => connect to dbName user xxx using password
db2 => sql语句
如果要执行一个sql脚本文件:
db2 => quit
c:\> db2 -tvf sql文件名
db2 -td@ -f filename
@是语句结束符。
E:\>db2 ? options
db2 [option ...] [db2-command | sql-statement |
[? [phrase | message | sqlstate | class-code]]]
option:-a、-c、-e{c|s}、-finfile、-lhistfile、-n、-o、-p、-rreport、-s、-t、
-td;、-v、-w、-x 和 -zoutputfile。
选项 描述 缺省设置
------ ---------------------------------------- ---------------
-a 显示 SQLCA OFF
-c 自动落实 ON
-e 显示 SQLCODE/SQLSTATE OFF
-f 读取输入文件 OFF
-l 将命令记录到历史文件中 OFF
-n 除去换行字符 OFF
-o 显示输出 ON
-p 显示 db2 交互式提示符 ON
-r 将输出报告保存到文件 OFF
-s 在命令出错时停止执行 OFF
-t 设置语句终止字符 OFF
-v 回送当前命令 OFF
-w 显示 FETCH/SELECT 警告消息 ON
-x 不打印列标题 OFF
-z 将所有输出保存到输出文件 OFF
注意:
使用 DB2OPTIONS 环境变量定制选项缺省值。
紧跟选项字母后的减号(-)使该选项关闭。
使用 UPDATE COMMAND OPTIONS 更改选项设置(以交互式或
文件输入方式)。
只能提供nt环境下编写脚本的例子给你以供参考:
脚本样例:
db2 connect to yourdb user yourname using yourpassword
db2 insert into newuser(username,password,email) values('Amy','1234','[email protected]')
db2 insert into newuser(username,password,email) values('Judy','1234','[email protected]')
db2 commit
db2 disconnect yourdb
运行脚本: 运行db2cmd X:\XXX.bat
以下摘自本论坛的FAQ可参考:
"
在命令窗口中运行DB2脚本,可用 db2 -svtf 脚本文件名 来实现。
例如,脚本文件名为sample.sql,运行:db2 -svtf sample.sql
参数中:
s 代表遇到错误时中止运行脚本
v 代表输出结果到屏幕
t 指以;号作为每行的分隔符
f 指后面需跟脚本文件名 "---此摘录版权归斑竹非本人所有
具体在AS400如何编写脚本非常遗憾.
db2 -x select SERIALNO from tabname where clause
C:>db2 attach to db2164 user ccp
输入 ccp 的当前密码:
实例连接信息
实例服务器 = DB2/NT 8.2.0
授权标识 = CCP
本地实例别名 = DB2164
C:>db2 connect to dw164 user ccp
输入 ccp 的当前密码:
数据库连接信息
数据库服务器 = DB2/NT 8.2.0
SQL 授权标识 = CCP
本地数据库别名 = DW164
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
CUST_ID NOW_PRED_S LOAD_TIME
-------------------- -------------------- --------------------------
3094736. ZFS 2008-05-07-10.02.00.453000
3145886. ZFS 2008-05-07-10.02.00.453000
2 条记录已选择。
C:>db2 list command options
命令行处理器选项设置
后端进程等待时间(秒) (DB2BQTIME) = 1
连接至后端的重试次数 (DB2BQTRY) = 60
请求队列等待时间(秒) (DB2RQTIME) = 5
输入队列等待时间(秒) (DB2IQTIME) = 5
命令选项 (DB2OPTIONS) = +m
选项 描述 当前设置
------ ---------------------------------------- ---------------
-a 显示 SQLCA OFF
-c 自动落实 ON
-d 检索并显示 XML 声明 OFF
-e 显示 SQLCODE/SQLSTATE OFF
-f 读取输入文件 OFF
-i 显示 XML 数据并带有缩进 OFF
-l 将命令记录到历史记录文件中 OFF
-m 显示受影响的行数 OFF
-n 除去换行字符 OFF
-o 显示输出 ON
-p 显示交互式输入提示符 ON
-q 保留空格和换行符 OFF
-r 将输出保存到报告文件 OFF
-s 在命令出错时停止执行 OFF
-t 设置语句终止字符 OFF
-v 回传当前命令 OFF
-w 显示 FETCH/SELECT 警告消息 ON
-x 不打印列标题 OFF
-z 将所有输出保存到输出文件 OFF
C:>db2set DB2OPTIONS=-x
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
4654908. ZFS 2008-05-07-10.02.00.453000
3716687. ZFS 2008-05-07-10.02.00.453000
3. 如何在Windows CMD里面用命令行操作DB2数据库
1、打开电脑,进入电脑操作系统,点击开始菜单,在电脑开始菜单中,找到命令行cmd,或者使用快捷键组合WIN+R键可以直接打开运行,输入cmd命令行,即可直接打开命令行cmd。
4. 如何用db2输入SQL命令
可以在命令编辑器或者Windows 的DB2 命令窗口或者 linux 的shell 中执行SQL 脚本。在windows 的DB2 命令窗口或者 linux 的shell 中执行SQL语句,可以使用下面的命令执行script1.sql脚本:
db2 -t -v -f script1.sql -z script1.log
或者:
db2 –tvf script1.sql –z script1.log
在上面的命令中,
-t 表示语句使用默认的语句终结符——分号;
-v 表示使用冗长模式,这样 DB2 会显示每一条正在执行命令的信息;
-f 表示其后就是脚本文件;
-z 表示其后的信息记录文件用于记录屏幕的输出,方便以后的分析(这是可选的,但建议使用该选项)。
当使用了-t选项而没有标明语句终结符,则分号(;)会默认为语句的终结符。有时可能会出现使用另外的终结符的情况,例如用SQL PL 编写的的脚本使用其它的符号而不是默认的分号,因为分号在SQL PL 是用于定义数据库对象过程中的语句结束。
5. db2 强制重启命令
如果仍然连接到数据库,可对所有连接的数据库分别先运行force application all.
windows上可以直接用控制面板停止相关服务.
linux上直接杀进程.
这些暴力手法可能导致数据损失,如果重要还是先备份或者部分备份重要数据再做.
最后一定可以成功的方法,重新启动机器.但如杀进程等一样也有一定风险.反正一定要先确保数据安全然后怎么做都可以了.
6. 执行DB2的命令有哪些方式
什么样的批处理文件?
如果文件里面都是sql语句,可以在命令行中 db2 -tvf filename即可
如果脚本中包含db2 开头的提示符,建议做成bat文件来执行
7. DB2安装过程没有任何报错,安装完成后 db2sampl ,db2cc,db2ca 等命令都找不到
确认db2已正确安装,并创建实例用户,测试一把,su - db2isnt1。切换到db2用户下
db2sample 是创建一个DB2SAMPL样板库,一般装好db2是可以直接运行的
db2cc 是启动控制中心,一般在客户端发出该命令即可启动
db2ca 同上,都是要db2client客户端支持
8. DB2未初始化命令行环境 怎么使用命令行运行db2
工具/原料
电脑、window命令行cmd
DB2命令行、db2cmd
电脑已经安装db2数据库
方法/步骤
找到命令行cmd
打开电脑,进入电脑操作系统,点击开始菜单,在电脑开始菜单中,找到命令行cmd,或者使用快捷键组合WIN+R键可以直接打开运行,输入cmd命令行,即可直接打开命令行cmd。
进入命令行cmd
通过以上方法,在电脑中找到命令行cmd后,点击确定或者直接点击回车键,进入命令行cmd的运行程序界面。
3
使用命令行cmd运行db2命令
在电脑中进入命令行cmd后,在命令行cmd中,输入db2命令后点击回车,此时可以看到命令行提示DB2未初始化命令行环境,这就是说明,在命令行cmd下面,是不可以直接使用db2命令、不可以直接运行db2命令的。但命令行cmd是识别db2命令的,如果命令行cmd不知别db2命令的话,那么命令行cmd的提示信息就是:不是内部或外部命令,也不是可运行的程序或批处理文件。
9. 在db2的命令行如何创建存储过程和函数
1.首先连接数据库 2.发出一下命令: DB2 -td@ -vf createSQLproc.DB2 createSQLproc.DB2文件中是创建存储过程的SQL语句; -td 选项让命令行处理程序使用@作为语句终止字符; -v 选项让命令处理程序将命令文本回显到标准输出; -f 让命令行处理程序从指定文件读取命令输入。
10. 在DB2命令行中什么命令能查看数据库所在实例
db2ilist可以查看系统上的所有实例,有一个环境变量可以设置默认启动的实例。如果是在Lniux或UNIX系统,会存在一个实例用户,用这个实例用户连接的实例名与实例用户名相同。
副本跟实例不是一个概念。一个副本可以理解为一个DB2数据库产品的安装,一个系统上可以安装多个副本,主要是为了在同一个系统上使用多个DB2的版本,比如V8 和 V9。安装DB2时如果系统里不存在一个叫DB2的实例,则会默认创建名为DB2的实例,如果已经存在,则会创建DB2_01,依此类推