程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DB2向表中寫數據的幾種方法

DB2向表中寫數據的幾種方法

編輯:DB2教程

DB2向表中寫數據的幾種方法   常用的向表中添加數據的方法如下: 1、insert into table values(...) 根據表指定的列,寫入相應的數據,若只給出表名,則表示按照列順序添加數據。 添加單條數據的寫法:insert into table(col1,col2) values(value1,value2) 添加多條數據的寫法:insert into table(col1,col2) values(value1,value2),(value3,value4),...   2、insert into table select ... 這種寫法表示添加的數據來自於一個基於一個或者多個表或試圖查詢,該查詢可以進行排序分組等操作。 如, db2 => create table empk(empno char(6),ename varchar(15),salary decimal(9,2)) DB20000I  SQL 命令成功完成。 取薪水最高的三位員工: db2 => insert into empk select empno,lastname,salary from employee order by salary desc fetch first 3 rows only DB20000I  SQL 命令成功完成。 db2 => select *from empk EMPNO  ENAME           SALARY ------ --------------- ----------- 000010 HAAS              152750.00 000030 KWAN               98250.00 000070 PULASKI            96170.00   3 條記錄已選擇。   3、復制表結構和數據 我們也可以在創建表的時候,復制表結構,再使用這種方法添加數據。 create table emp_test like employee insert into emp_test select * from employee where salary > 80000.00   也可以在復制表結構的同時,復制數據。 create table emp_test as (select * from employee where salary > 80000.00) data initially deferred refresh immediate | deferred 創建完表之後,需要刷新一下: db2 => refresh table emp_test DB20000I  SQL 命令成功完成。 否則將會報錯:SQL0668N  不允許對表 "LENOVO.EMP_TEST" 執行操作,原因碼為 "1"。  SQLSTATE=57016   如果只是想復制表結構,不需要復制數據,可以如下創建表: create table emp_tt as (select empno,job,salary from employee) definition only --★ 或者 create table emp_tt as (select empno,job,salary from employee) with no data --★ db2 => describe table emp_tt                                 數據類型                      列 列名                             模式       數據類型名稱      長     小數位      NULL ------------------------------- --------- ------------------- ---------- ----- ------ EMPNO                           SYSIBM    CHARACTER                    6     0 否 JOB                             SYSIBM    CHARACTER                    8     0 是 SALARY                          SYSIBM    DECIMAL                      9     2 是   3 條記錄已選擇。   db2 => select count(*) from emp_tt 1 -----------           0   1 條記錄已選擇。   4、Merge into語句 merge into語句用於將一個表中的數據合並到另一個表中,當數據已經存在時,我們可以不處理或者更新之;   來源:http://blog.csdn.net/bobo12082119/article/details/8780814   --the end--

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved