今天有网友问到这个问题,平时也没怎么留意。刚刚做了测试在db2的SQL脚本中,直接写命令就好了。

例如:

[db2inst1@win backups]$ cat test.ddl
--------------------------------------
insert into t3 values (123,'SQL');
select * from t3;
--------------------------------------

如果写成:

----------------------------------------------
db2 "insert into t3 values (123,'SQL')";
db2 "select * from t3";
----------------------------------------------

[db2inst1@win backups]$ db2 -tvf test.ddl
db2 "insert into t3 values (1123,'SQL')"
SQL0104N An unexpected token "db2" was found following "BEGIN-OF-STATEMENT".
Expected tokens may include: "SELECT". SQLSTATE=42601

db2 "select * from t3"
SQL0104N An unexpected token "db2" was found following "BEGIN-OF-STATEMENT".
Expected tokens may include: "SELECT". SQLSTATE=42601

语句后面要写分号,其他符号也可以,需要指定。

上面指出了,脚本中每行命令首不要带db2

再看一看删除table的脚本:

[db2inst1@win ~]$ cat dropexplain.ddl 

connect to mydb1
drop table EXPLAIN_ACTUALS
drop table EXPLAIN_ARGUMENT
connect reset

执行:

[db2inst1@win ~]$ db2 -tvf dropexplain.ddl 

DB21007E  End of file reached while reading the command.

可是还是执行不成功,注意:脚本的结尾一定要有分隔符。修改成下面这样就好了。

[db2inst1@win ~]$ cat dropexplain.ddl
connect to mydb1;
drop table EXPLAIN_ACTUALS ;
drop table EXPLAIN_ARGUMENT ;
connect reset;

执行:

[db2inst1@win ~]$ db2 -tvf dropexplain.ddl
connect to mydb1 Database Connection Information Database server = DB2/LINUXX8664 10.1.0
SQL authorization ID = DB2INST1
Local database alias = MYDB1 drop table EXPLAIN_ACTUALS
DB20000I The SQL command completed successfully. drop table EXPLAIN_ARGUMENT
DB20000I The SQL command completed successfully. connect reset
DB20000I The SQL command completed successfully.

DB2 执行SQL脚本的更多相关文章

  1. SQL Server自动化运维系列——批量执行SQL脚本(Power Shell)

    需求描述 一般在生产环境中,在投产的情况下,需要批量的来执行SQL脚本文件,来完成整个投产,如果投产文件比较多的情况下,无疑这是一个比较痛苦的过程,所以本篇通过PowerShell脚本来批量完成. 监 ...

  2. PL/SQL中批量执行SQL脚本(不可把所有的语句都复制到New SQL Windows)

    PL/SQL中批量执行SQL脚本,不可把所有的语句都复制到New SQL Window,因为这样会导致缓冲区过大而进程卡死! 最好的办法是将要执行的SQL脚本存放到指定文件中,如C:\insert.s ...

  3. Inno Setup执行SQL脚本的方法

    作为和NSIS并立的.两个最流行的免费Windows应用程序安装包制作工具之一,Inno在学习难度上相对要低一些,非常适合对一些简单的桌面程序打包.但对于较复杂的安装过程,或者Web应用程序来说,我个 ...

  4. Java 执行 SQL 脚本文件

    转自:http://blog.csdn.net/hongmin118/article/details/4588941 package com.unmi.db; import java.io.FileI ...

  5. java 执行sql脚本的3种方式 (ant,ibatis,ScriptRunner)

    package com.unmi; import java.io.*; import org.apache.tools.ant.*; import org.apache.tools.ant.taskd ...

  6. mysql执行sql脚本

    最近用mysql执行sql脚本,遇到一些问题,顺便记录一下笔记. 首先,先开启mysql服务,创建一个空数据库(脚本里没有创建数据库) 执行脚本有两个方法 1.未连接数据库:在Windows下使用cm ...

  7. .net(C#)在Access数据库中执行sql脚本

    自己写的一个工具类,主要是业务场景的需要. 主要有两个功能: ①执行包含sql语句的字符串 ②执行包含sql语句的文件 调用方式 /// <summary> /// 执行sql语句 /// ...

  8. mysql执行sql脚本文件

    mysql执行sql脚本文件 方法一:使用cmd命令执行(windows下,unix或Linux在的其控制台下) [MySQL的bin目录]\mysql –u用户名 –p密码 –D数据库<[sq ...

  9. 使用命令执行 sql 脚本文件

    使用命令执行 sql 脚本文件 方法: 在 Windows 下使用 cmd 命令执行(或 Unix 或 Linux 控制台下)[Mysql的bin目录]\mysql –u用户名 –p密码 –D数据库名 ...

随机推荐

  1. jquery.load问题

    简单Jquery--Ajax应用 作为一个新手,最近自己写了一个人主页,虽然性能不怎么样,但就出现的各种大的小的问题拿出来与大家分享分享. ----DanlV 描述 错误描述 自己不知道什么原因,直接 ...

  2. 通用JSONHelp 的通用的封装

    1. 最近项目已经上线了 ,闲暇了几天 想将JSON  的序列化 以及反序列化进行重新的封装一下本人定义为JSONHelp,虽然Microsoft 已经做的很好了.但是我想封装一套为自己开发的项目使用 ...

  3. Jenkins设置svn授权

    1.问题引入 在job的scm部分,subversion modules/credentials出现错误 "Unable to access https://xxx/code : svn: ...

  4. js如何获取样式?

    在某个项目中,我们经常会需要来获取某个元素的样式,比如说获取一个div的color:这样,新的问出现了, var style = box.style.width;console.log(style); ...

  5. 缓动动画(json)

    function animate(obj, json){ clearInterval(obj.timer); obj.timer=setInterval(function(){ var flag = ...

  6. 一大波jQuery事件即将来袭!

    一.jQuery事件 1.focus()元素获得焦点 2.blur()元素失去焦点 3.change() 表单元素的值发生变化(可用于验证用户名是否存在) 4.click() 鼠标单击 5.dbcli ...

  7. 增强for循环赋值

    增强for循环赋值 代码如下: double[] testList01 = new double[5]; java.util.Scanner sc = new java.util.Scanner(Sy ...

  8. 中国剩余定理(CRT)与欧拉函数[数论]

    中国剩余定理 ——!x^n+y^n=z^n 想必大家都听过同余方程这种玩意,但是可能对于中国剩余定理有诸多不解,作为一个MOer&OIer,在此具体说明. 对于同余方程: x≡c1(mod m ...

  9. 文件的默认权限UMASK

    当进入Linux系统后新创建的文件或者文件夹总是会有一个默认的权限,那么这个权限是如何设置的呢? umask就是设置文件与目录的默认权限 1. 查看umask 直接查看, [root@centos6 ...

  10. Caused by: org.apache.catalina.LifecycleException: A child container failed during start

    错误提示: 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache. ...