1. 程式人生 > >DB2 命令列中如何執行sql指令碼

DB2 命令列中如何執行sql指令碼

db2 => connect to dbName user xxx using password

db2 => sql語句

如果要執行一個sql指令碼檔案:

db2 => quit

c:\> db2 -tvf sql檔名
db2 [email protected] -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

相關推薦

db2命令執行sql

在命令視窗中執行DB2指令碼,可用     db2     -stvf     指令碼檔名     來實現。          例如,指令碼檔名為sample.sql,執行:db2     -stvf     sample.sql                     

mysql 命令執行sql的幾種方式

1.直接輸入sql執行mysql> select now(); +---------------------+ | now()               | +---------------------+ | 2013-09-18 13:55:45 | +-----

DB2 命令如何執行sql指令碼

db2 => connect to dbName user xxx using password db2 => sql語句 如果要執行一個sql指令碼檔案: db2 => quit c:\> db2 -tvf sql檔名 db2 [email&

在Oracle、MySQL執行sql指令碼生成hive建表語句

python3指令碼: #mysql for i in range(len(table_name)): sql1 = """SELECT CONCAT('create table ','%s','(') UNION ALL SELECT CONCAT(

命令執行 java 程式

一,首先進入檔案所在的目錄,我的 FrequencyCounter(統計字元出現頻率最高的詞) 程式放在桌面, 所以使用 cd desktop 就可,你們的是 cd 路徑名。 二,然後使用 javac FrequencyCounter.java 生成 .class 可執行檔案

命令執行Python,找不到匯入包

命令列中執行python,匯入其他目錄包時報找不到包的錯誤,原因是命令列中執行只會搜尋當前目錄下的包, import sys import os curPath = os.path.abspath(os.path.dirname(__file__)) rootPath = os.path.sp

Eclipse執行sql指令碼檔案

在Eclipse中匯入或新建sql指令碼檔案(.sql檔案),選擇指定的資料庫執行 1、在Data Source Explorer 下的Database Connections右鍵New 如果沒有Data Sourse Explorer檢視,依照如下方法顯示 2、選擇資料庫型別

sh命令 /Linux執行shell指令碼的4種方法總結

bash shell 指令碼的方法有多種,現在作個小結。假設我們編寫好的shell指令碼的檔名為hello.sh,檔案位置在/data/shell目錄中並已有執行許可權。 方法一:切換到shell指令碼所在的目錄(此時,稱為工作目錄)執行shell指令碼:此種方法為阿里雲推

cmd 命令方式執行 matlab 指令碼

                     0. matlab 命令列刪除當前輸入的行ctrl + u1或者 esc1. 命令列執行指令碼首先設定環境變數,將 matlab.exe 新增到環境變數 Path 中,比如我的 matlab 2014a 安裝在 D 盤,則其路徑資訊為:D:\Program Files

命令執行python檔案的函式

以前在命令列中執行python都是執行整個.py檔案,今天需要只執行其中一個函式。看到網上的方法說要先import檔案才能呼叫函式,試過仍不成功。後來找到原因,是要在.py檔案所在的目錄下執行python才能improt。 就像要執行21knn檔案,就要先到它的目錄

Oracle sqlplus執行SQL指令碼 Error SP2-0310

在SQLPLUS環境下,可以使用@path的方式來執行SQL指令碼 命令如下 @d:/oracle scripts/exec_scripts_test.sql 但是我嘗試了多次,最後都是這個錯誤 SP2-0310: unable to open file "/oracle.

在Java執行SQL指令碼總結

利用 Ant 的SQL Task來實現執行SQL 指令碼的功能。 ant 包中的 SQLExec類的擴充套件,此時需要將ant 包(ant.jar)匯入 SQLExec sqlExec = new S

命令執行java的時候指定依賴jar

在windows上: java -cp testjar1-1.jar;gson-2.2.2.jar main.java.JarTest 中間是用分號分隔兩個jar 在LInux上: java -c

在android系統命令執行arm linux程式,出現/system/bin/sh: .xxx No such file or directory問題

android系統的底層就是Linux,理論上arm linux程式在android系統中也能夠執行。但是當我寫了一個“Hello World”程式並執行時,出現了下面的錯誤: system/bin/sh:./ a.out No such file or directory

cmd命令執行Java檔案中文字元亂碼情況解決

如上所示的錯誤 由於JDK是國際版的,在編譯的時候,如果我們沒有用-encoding引數指定我們的JAVA源程式的編碼格式,則javac.exe首先獲得我們作業系統預設採用的編碼格式,也即在編譯ja

考慮以下 Python 程式碼,如果執行結束,命令執行結果是什麼?

l = [] for i in xrange(10):   l.append({‘num’:i}) print l在考慮以下程式碼,執行結束後的結果是什麼? l = [] a = {‘num’:0} for i in xrange(10):   a[‘num’] = i   l.append(a) prin

親測好用系列:命令輸入 npm run *** 一次執行兩條命令

親測好用系列: 1.在當前專案中,執行以下依賴: npm install concurrently --save //concurrently:同時 2. 在package.json檔案的script標籤,嵌入一下程式碼: "start": "concurrently \"npm run d

windom 下cmd命令出現“powershell”不是內部或外部命令,也不是可執行的程式或批處理檔案問題解決

win+R  輸入sysdm.cpl 開啟系統設定 點選高階-》環境變數 在系統變數中檢視path變數,點選編輯 複製出變數值,檢視是否有%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem

Python Flask,flask_script,擴充套件指令碼,擴充套件命令命令啟動Flask

  安裝flask_script包: pip install Flask-Script   demo.py(flask_script): # coding:utf-8 from flask import Flask from flask_script impor

selenium 在命令可以執行但是在pycharm卻報錯

初學python,用到selenium,在python的命令列中輸入:         from selenium import webdriver         driver=webdriver.Chrome()         driver.maximize_wi