在PB中插入、刪除和修改數(shù)據(jù)
[導(dǎo)讀]1.插入數(shù)據(jù)
在數(shù)據(jù)庫(kù)中插入一條數(shù)據(jù)使用INSERT語(yǔ)句,格式如下:
INSERT INTO 表名 (字段列表) VALUES (值列表) {USING 事務(wù)對(duì)象};
不同的字段使用逗號(hào)(“,”
1.插入數(shù)據(jù)
在數(shù)據(jù)庫(kù)中插入一條數(shù)據(jù)使用INSERT語(yǔ)句,格式如下:
INSERT INTO 表名 (字段列表) VALUES (值列表) {USING 事務(wù)對(duì)象};
不同的字段使用逗號(hào)(“,”)分隔,并且不包含blob類型的字段;值列表中不同的值之間用逗號(hào)分隔,和字段列表中字段的類型對(duì)應(yīng)兼容(最好類型相同),并且字符型和日期型取值用引號(hào)引起來。省略事務(wù)對(duì)象時(shí)使用默認(rèn)的全局事務(wù)對(duì)象SQLCA。下面是一個(gè)向表中增加記錄的SQL語(yǔ)句:
insert into dept (deptno,deptname,workers) values (:ls_deptno, "銷售部",10);
該例子向表dept中插入一條記錄,給該表中的字段deptno賦值為變量ls_deptno的取值,給字段deptname賦值為“銷售部”,給字段workers賦值為10??赡茉摫碇羞€包含其他的字段,但是一般情況下,這三個(gè)字段中最起碼應(yīng)該有主鍵,除非使用了Identify類型的字段,因?yàn)橹麈I肯定是不允許為空的。如果該表就包含這三個(gè)字段,上面的SQL語(yǔ)句可以簡(jiǎn)寫成:
insert into dept values (:ls_deptno, "銷售部",10);
2.刪除數(shù)據(jù)
SQL語(yǔ)句刪除數(shù)據(jù)是以行為單位刪除的,不能刪除某行中某字段的數(shù)據(jù)。刪除數(shù)據(jù)的SQL語(yǔ)句格式是:
DELETE FROM 表名 WHERE 條件表達(dá)式 {USING 事務(wù)對(duì)象};
刪除游標(biāo)中和當(dāng)前數(shù)據(jù)對(duì)應(yīng)的記錄可以使用下面格式的語(yǔ)句:
DELETE FROM 表名 WHERE CURRENT OF 游標(biāo)名稱;
例如,下面的例子刪除表dept中workers=10的所有記錄:
delete from dept where workers=10;
再如,下面的例子是刪除和光標(biāo)中當(dāng)前數(shù)據(jù)對(duì)應(yīng)的記錄:
delete from dept where current of dept_cur;
3.修改數(shù)據(jù)
使用修改語(yǔ)句可以修改數(shù)據(jù)表中的一條或多條記錄中的一個(gè)或多個(gè)字段的取值。語(yǔ)法格式如下:
UPDATE 表名 SET 字段名=:變量名(或常數(shù))[,字段名=:變量名(或常數(shù))] WHERE 條件 {USING 事務(wù)對(duì)象};
修改游標(biāo)中和當(dāng)前數(shù)據(jù)對(duì)應(yīng)的記錄時(shí)可以使用下面格式的語(yǔ)句:
UPDATE 表名 SET 字段名=:變量名(或常數(shù))[,字段名=:變量名(或常數(shù))] WHERE CURRENT OF 游標(biāo)名;
下面是一個(gè)修改數(shù)據(jù)的例子:
update dept set workers=100 where workers=10.
該例子修改表dept中所有workers=10的數(shù)據(jù),將字段workers修改為100。
在數(shù)據(jù)庫(kù)中插入一條數(shù)據(jù)使用INSERT語(yǔ)句,格式如下:
INSERT INTO 表名 (字段列表) VALUES (值列表) {USING 事務(wù)對(duì)象};
不同的字段使用逗號(hào)(“,”)分隔,并且不包含blob類型的字段;值列表中不同的值之間用逗號(hào)分隔,和字段列表中字段的類型對(duì)應(yīng)兼容(最好類型相同),并且字符型和日期型取值用引號(hào)引起來。省略事務(wù)對(duì)象時(shí)使用默認(rèn)的全局事務(wù)對(duì)象SQLCA。下面是一個(gè)向表中增加記錄的SQL語(yǔ)句:
insert into dept (deptno,deptname,workers) values (:ls_deptno, "銷售部",10);
該例子向表dept中插入一條記錄,給該表中的字段deptno賦值為變量ls_deptno的取值,給字段deptname賦值為“銷售部”,給字段workers賦值為10??赡茉摫碇羞€包含其他的字段,但是一般情況下,這三個(gè)字段中最起碼應(yīng)該有主鍵,除非使用了Identify類型的字段,因?yàn)橹麈I肯定是不允許為空的。如果該表就包含這三個(gè)字段,上面的SQL語(yǔ)句可以簡(jiǎn)寫成:
insert into dept values (:ls_deptno, "銷售部",10);
2.刪除數(shù)據(jù)
SQL語(yǔ)句刪除數(shù)據(jù)是以行為單位刪除的,不能刪除某行中某字段的數(shù)據(jù)。刪除數(shù)據(jù)的SQL語(yǔ)句格式是:
DELETE FROM 表名 WHERE 條件表達(dá)式 {USING 事務(wù)對(duì)象};
刪除游標(biāo)中和當(dāng)前數(shù)據(jù)對(duì)應(yīng)的記錄可以使用下面格式的語(yǔ)句:
DELETE FROM 表名 WHERE CURRENT OF 游標(biāo)名稱;
例如,下面的例子刪除表dept中workers=10的所有記錄:
delete from dept where workers=10;
再如,下面的例子是刪除和光標(biāo)中當(dāng)前數(shù)據(jù)對(duì)應(yīng)的記錄:
delete from dept where current of dept_cur;
3.修改數(shù)據(jù)
使用修改語(yǔ)句可以修改數(shù)據(jù)表中的一條或多條記錄中的一個(gè)或多個(gè)字段的取值。語(yǔ)法格式如下:
UPDATE 表名 SET 字段名=:變量名(或常數(shù))[,字段名=:變量名(或常數(shù))] WHERE 條件 {USING 事務(wù)對(duì)象};
修改游標(biāo)中和當(dāng)前數(shù)據(jù)對(duì)應(yīng)的記錄時(shí)可以使用下面格式的語(yǔ)句:
UPDATE 表名 SET 字段名=:變量名(或常數(shù))[,字段名=:變量名(或常數(shù))] WHERE CURRENT OF 游標(biāo)名;
下面是一個(gè)修改數(shù)據(jù)的例子:
update dept set workers=100 where workers=10.
該例子修改表dept中所有workers=10的數(shù)據(jù),將字段workers修改為100。





