日期:2014-05-16 浏览次数:20533 次
4、使用DML语言更改数据:
添加新数据:
不管插入是否成功,自动编号都越过去了。
插入单行记录语句是:
insert into 表名 (列表列名) values(列表值);
into是insert和目标之间可以使用的关键字。
表名是插入记录的目标表的名称。
列名列表指定插入记录目标表的列名,是一个以逗号分隔的列名列表。
插入多行记录语句是:
insert into 表名 (列名列表) select select语句;
在insert into语句中,列的数目必须等于从select语句返回的列的数据。
在insert into语句中,列的数据类型必须与从select语句返回的列的数据类型相同。
表数据的复制语句是:
select 列名 into 新表名 form 表名
能复制名称、数据类型,约束只有非空能复制其他的不能。
更改已有数据:
更新还可以把某个列的值变为空。列=null简接删除数据。
update 表名 set 新列值列表 where 过滤条件;
update 表名 set 列1=新值1,列2=新值2 where 过滤条件;
在使用update语句时需要注意——忽略where子句将会改变表中所有行。
更新和删除:就算数据没有删除也不报错,语法错误和内容与原有数据产生了影响才报错。
删除数据:
使用delete删除行:
delete是把数据表里的记录一行一行的删除。
delete form 表名 where 过滤条件;
如果不指定where子句,列表所有的行将被删除。
从列表删除记录时,必须注意维护如引用完整性等关系。如果其他表中有记录连接到了准备删除的记录,为了维护引用完整性,这些记录将不会被删除。
使用truncate语句:
truncate属于DDL,作用是无条件清空,还原到初始状态,后面不能跟其他语句。
truncate table 表名;
使用delete语句系统将一次一次的处理要删除的表中的记录,从表中删除行之前,在事物处理日志中记录相关的删除操作和删除行中的列值,以防止删除失败时,可以和使用事物处理日志来恢复数据。
truncate table则一次性完成删除与表有关的所有数据业操作。另外,truncate table语句并不更新事物处理日志,因此也无法通过事物处
理日志来回滚数据。
虽然truncate table能够删除表中的所有行,但是表的结构、列、约束、索引等不会被改动。
truncate table不能用于有外键约束的表,这种情况下需要使用不带where子句的delete语句。