插入记录 INSERT INTO 语句
单条记录插入语法
INSERT INTO target [(field1[, field2[, ...]])]
VALUES (value1[, value2[, ...])
target 参数要插入数据的表名;field1、field2 等参数为要插入的表的字段名;value1、value2 等参数为对应插入的字段的值。
微软官方帮助信息 INSERT INTO Statement
注意,字段名和字段值都需要用括号括起来,如果需要向多个字段插入值,那么需要用逗号分隔这些字段名和字段名对应的值,它们的顺序必须是一一对应的。
例1、向 NorthWind 数据库的“运货商”数据表中插入一个新的运货商记录。输入 SQL 语句如下:
INSERT INTO 运货商(公司名称, 电话) VALUES ('神行太保快递', '(010)57776941')
执行完毕后,如果没有错误,即可弹出一个确认框,如下:
选择“是”按钮,即可向数据库插入一条新的运货商记录。
多条记录插入数据表的语法
INSERT INTO target [(field1[, field2[, ...]])] [IN externaldatabase]
SELECT [source.]field1[, field2[, ...]
FROM tableexpression
我们可以将上面的语法理解为,通过 SELECT…FROM… 语句来选取一系列的数据,成为一个结果集,而后通过复制到 target 表中。
在 ASP 中插入的数据可以生成一个 SQL 语句,保存在变量中,而后使用数据库对象的相应方法来执行这个语句的方式,特别要注意的是,SQL 语句中的逗号、单引号等内容,这可能会导致我们的 SQL 语句是一个错误语句。
更新记录 UPDATE 语句
用于数据库中的记录进行更新,它的语法如下:
UPDATE table
SET newvalue
WHERE criteria;
table 参数,需要修改的记录的表名;
newvalue 参数,表达式,一般采取“字段名 = 值”的形式,多个更新字段,用逗号分隔;
cirteria 参数,表达式指明记录更新的条件。
例2、在客户表中,我们将客户所在国家的名称改写为简写,例如,将“中国”改为 CN,SQL 语句如下:
UPDATE 客户 SET 国家='CN' WHERE 国家='中国'
选择“是”按钮,即可将客户表中所有记录中国家是“中国”的记录改写为“CN”,结果如下:
删除记录 DELETE 语句
这是一个具有破坏性的语句,使用前一定要仔细,避免误删了数据,DELETE 语句用于删除表中的记录,仅仅是删除记录而不是表本身,具体语法如下:
DELETE
FROM table
WHERE criteria
table 参数指定了从中删除记录的表的名称;
criteria 表达式,用于确定要删除哪些记录;
例3、假设 NorthWind 商贸公司已经终止了与“急速快递”公司的合作,需要从运货商表中删除该快递公司相应的记录,SQL 语句如下:
DELETE FROM 运货商 WHERE 公司名称='急速快递'
执行后,如果语句没有错误,会弹出下面确定对话框,如下,
选择“是”,继续弹出下面的对话框,如下:
出现上面的对话框,意思是因为订单表中的运货商字段与运货商表存在关系,具体关系通过【数据库工具 | 关系】查看:
此时,我们可以有两个选择:
- 解除这个关系
- 删除订单表中相应订单信息后,再删除运货商中的记录。
对于第二个方案,我们通过配置两个表关系中的参照完整性规则来实现删除运货商中的记录时,自动删除订单表中与其关联的数据。
在关系视图中,选择订单表和运货商之间的折线并鼠标右键【编辑关系(R)…】,如下图:
在弹出的“编辑关系”对话框中勾选中“级联删除相关记录”即可,如下:
通过上面关系的设置后,我们再次执行 SQL 语句后,就正常了,我们通过查看运货商表和订单表中运货商字段,已经全部删除了。