SQL-数据的插入、更新和删除 (转载)

来源:互联网 发布:ce5..4源码 编辑:程序博客网 时间:2024/05/21 13:58
数据插入

格式1:
insert   into   < 表名 >  ( < 列名1 >   [ ,<列名2> ] values  ( < 值1 >   [ ,<值2> ] )
insert语句把values后给出的各值按排列顺序依次赋到表名后列出的各列,每次只能在一列中插入一条记录,没有值的列为:
null
例1:
insert   into  taihang 
     
values ( ' 007 ' , ' ' , ' 太行 ' )
例2:
insert   into  taihang(id,sex,name) 
     value (
' 007 ' , ' ' , ' 太行 ' )

格式2:
insert   into   < 表名 >  ( < 列名1 >   [ ,<列名2> ] ) select语句
1 .把select语句查询结果按顺序插入到对应的列中,允许一次插入多条记录。
2 .select查询的条列值必须与 < 表名 > 后的各列名在个数、类型及顺序上一致。
3 .若 < 表名 > 后没有(列名),则对该表的所有字段插入
例:
insert   into  taihang1(id1,sex1,name1)
  
select  id,sex,name  from  taihang 

数据修改
格式:
update   < 表名 >   set   < 列名1 > < 表达式1 >   [ ,<列名2>=<表达式2> ]   [ where<条件> ]
1 .该语句在指定表中符合where < 条件 > 的行中指定列赋新值,如没有where,则对整表修改。
例1:将学生taihang转入computert系
update  student
set  dept = ' computer '
where  name = ' taihang '
例2: 所有学生年龄加1
update  student
set  age = age + 1

删除数据
格式:
delete   [ from ]  {table_name | view_name}  [ where子句 ]
1 .删除表中符合条件的行,delete只能删除整行,不能删除一行的部分,若无where部

分,则成空表,只留表结构。
例1:删除学号为007的学生信息
delete   from  student
where  no = ' 007 '
例2:删除没有成绩的学生信息
delete   from  student
where  grade  is   null

注意:
1 .数据更新语句只能对单表打操作,不能同时对多表更新。(从而引起阶段性的数据不一致)
2 .数据更新语句仅当事务( transaction )提交( commit )后才正式生效。也可通过事务回滚( rollback )来作废。这回的还简单些。  
原创粉丝点击