数据更新-添改删-MSSQL版本

数据更新-传统3方法-添加修改删除
chinanetboy
目录
1.插入
1.1单行插入
1.2批量插入

2.修改
2.1按行修改
2.2按列更新

3.删除
3.1多行删除
3.2全部删除

---------------------------------------------------

测试表
create table tb_gz
(
ghid int not null primary key,
name varchar(30) not null,
bm varchar(20) not null,
gz real default 0.0,
remark varchar(100) default ''
)


create table tb_gz_other
(
ghid int not null primary key,
name varchar(30) not null,
bm varchar(20) not null,
gz real default 0.0,
remark varchar(100) default ''
)

补充:ghid=职员工号,name=职员名字,bm=部门,gz=工资,remark=备注

---------------------------------------------------
内容
1.插入总体语法:
insert into tablename
[(columnlist)]
values(valuelist)|select [columnlist] from tablename

1.1单行列-值对插入语法:
insert into tablename
(coumnlist)
values(valueslist)
补充:这个只要列名和值一一对应,就可以正确的插入数据!

代码:
insert into tb_gz
(ghid,bm,name,gz,remark)
values(118,'IT','zhangsan',5200,'他技术很好')
(所影响的行数为 1 行)


1.2单行值插入语法:
insert into tablename
(coumnlist)
values(valueslist)
补充:插入数据必须按列名顺序填写正确才可以插入,数据顺序放的不正确,插入失败!

代码:
insert into tb_gz
values(120,'wangjun','IT',8200,'负责数据库设计')
(所影响的行数为 1 行)

1.3从表A批量插入到表B
批量语法:
insert into tablename
select [column list] from tablename
代码:
先清空数据
delete from tb_gz_other

再批量插入测试
insert into tb_gz_other
select * from tb_gz
(所影响的行数为 2 行)

---------------------------------------------------
2.修改
1.修改总体语法:
update tablename
[set column=express]
[where condition-express]


2.1按行修改
按行修改的条件有[where condition-express]
且只选中所有记录的一部分记录,达到批量修改的目的!

代码:
为部门为IT的上涨18%的工资
update tb_gz
set gz=gz*1.18
where bm='IT'
为了应对经济危机,对全体员工的工资都下调5%
update tb_gz
set gz=gz*(1 - 0.05)

2.2按列更新
把表中一个列的数据全部复制到另一个列上面

代码:
把姓名复制到remark列
update tb_gz_other
set remark=name
把部门和姓名一起复制到remark
update tb_gz_other
set remark=bm+'-'+name

---------------------------------------------------
3.删除
1.修改总体语法:
delete from tablename
[where condition-express]

3.1多行删除
语法:
delete from tablename [where condition-express]
代码:
delete from tb_gz_other
where bm<>'IT'


3.2全部删除
语法:
delete from tablename
代码:
delete from tb_gz_other
全部被清除

你可能感兴趣的:(测试,null,table,delete,express,insert)