OPEN SQL:插入、删除、修改语法

1. UPDATE 用于实现对数据据的更新操作,语法如下:

    UPDATE <dbtab> set f1...fn (where <condition>).

    UPDATE <dbtab> FROM TABLE <itab>  (where <condition>).

    UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值。

 

例如1:更新某一行中的一个列

LastNameFirstNameAddressCity
Gates Bill Xuanwumen 10 Beijing
Wilson   Champs-Elysees  

 我们为lastname是Wilson的人添加firstname:

UPDATE PERSON SET FIRSTNAME 'Fred' 
WHERE LASTNAME 'Wilson'

 结果:

 

LastNameFirstNameAddressCity
Gates Bill Xuanwumen 10 Beijing
Wilson Fred Champs-Elysees  


例如2:更新某一行中的若干列

 如上,我们要修改地址(address),并添加城市名称(city):

UPDATE PERSON SET ADDRESS =  'Zhongshan 23'
CITY 'Nanjing'
WHERE LASTNAME 'Wilson'.

 结果:

 

LastNameFirstNameAddressCity
Gates Bill Xuanwumen 10 Beijing
Wilson Fred Zhongshan 23 Nanjing

 例如3:

UPDATE SCUSTOM SET:DISCOUNT '003',
TELEPHONE '0592-123456'
WHERE ID '456789'.

 

2.INSERT 用于实现对数据的新增,其语法结构如下:

   INSERT INTO <dbtab> VALUES <condition>.

   INSERT <dbtab> FROM TABLE <itab>.

   INSERT INTO 表名称 VALUES (值1,值2,...)      "指插入新的行

   INSERT INTO table_name(列1,例2,...) VALUES (值1,值2,...)  "指在指定的列中插入数据

 例如1:在这一行下插入新的行lastname = gates的值

 

LastNameFirstNameAddressCity
Carter Thomas Changan Street Beijing

INSERT INTO PERSONS VALUES 'Gates''Bill''Xuanwumen 10''Beijing' )

 结果:

 

LastNameFirstNameAddressCity
Carter Thomas Changan Street Beijing
Gates Bill Xuanwumen 10 Beijing

 

 例如2.在指定列中插入数据

LastNameFirstNameAddressCity
Carter Thomas Changan Street Beijing
Gates Bill Xuanwumen 10 Beijing

INSERT INTO Persons (LastNameAddressVALUES ('Wilson''Champs-Elysees')

 结果:

 

LastNameFirstNameAddressCity
Carter Thomas Changan Street Beijing
Gates Bill Xuanwumen 10 Beijing
Wilson   Champs-Elysees  

 例3.

TABLES SCUSTOM.
SCUSTOM-ID '11279'.
SCUSTOM-NAME 'JACK BLOGS'.
SCUSTOM-POSTCODE '658896'.
SCUSTOM-CITY 'SIGAPO'.
INSERT INTO SCUSTOM VALUES SCUSTOM"从某一结构体获取新增数据

TABLES SAIRPORT.
SAIRPORT-ID 'KIT'.
SAIRPORT-NAME 'NEW ZLAND'.
INSERT SAIRPORT"直接对表HEADER LINE赋值新增

 

 3. DELETE 用于删除表中的数据,其语法结构如下:

     DELETE  FROM dbtab WHERE cond.

     DELETE dbtab.

     DELETE dbtab FROM TABLE itab.


TABLES SBOOK.
DELETE FROM SBOOK WHERE CARRID 'LH'

                    AND CONNID '0400'

                    AND FLDATE '19950228'."按赋值条件删除透明表数据



TABLES SBOOK.
SBIIK-CARRID 'LH'.
SBOOK-CONNID '0400'.
SBOOK-FLDATE '19950228'.
SBOOK-BOOKID '00000003'.
DELETE SBOOK."按结构体条件删除表数据,按内表数据进行删除基本类似

 

 4.MODIFY 用于修改表中的数据

   当修改条件符合时,直接按条件更新表数据,若改数据不存在,则在数据表中新增一条,通过MODIFY修改或新增数据的执行效率,此使用UPDATE和INSERT效率你,其语法如下:

    MODIFY dbtab.

    MODIFY dbtab FROM TABLE itab.

TABLES SCUSTOM.
SCUSTOM-ID '186999868'.
SCUSTOM-NAME 'DAYRON ROBLES'.
SCUSTOM-POSTCODE '39866'.
SCUSTOM-CITY 'CUBA'.
MODIFY SCUSTOM."该表以ID为主键,此时数据库中没有符合ID='186999868'的数据,故先插入一条.

 


TABLES SCUSTOM.
SCUSTOM-ID '186999868'.
SCUSTOM-NAME 'DAYRON ROBLES'.
SCUSTOM-POSTCODE '39866'.
SCUSTOM-CITY 'CUBA'.
MODIFY SCUSTOM"此时数据库中存在ID='186999868'的数据,故将其更新。

posted on 2013-08-08 16:17  青春之帆  阅读(828)  评论(0编辑  收藏  举报