第一天 -- 《2014-07-05 sql server》2——简单CRUD
一、下午 《04、数据插入》--《07、检索初步》
1、数据插入
--语法: 方法调用(一 一 对应 顺序对应,数量对应,类型对应)
--insert into 表名(字段列表) values(值列表)
--说明: (1)标识列值不管什么时候都不可能插入值,其他列插入的值需要满足表的所有完整性约束(5个约束 + 数据类型 + no null)
(2)如果表中某列可null,插入值的时候可以不插入该列名和列值。当然如果非写该列名的话,值要显式写null。
(3)如果表中某列有default默认值,插入值的时候可以不插入该列名和列值。(结果就是插入行该列值为默认值)当然如果非写该列名的话,值要显式写default。
2、更新操作
--:更新后的数据不能违反表的约束
--语法:
--update 表名 set 字段=值(表达式), 字段=值 where 条件(一般能够做条件的是主键,唯一键,标识列)
1 --修改张8 性别 修改为女,同时将年龄修改25 将工资加1000蚊 2 update Teacher set Gender=0,Age=250,Salary+=1000 where Name='张8'
3、数据的删除
--删除是对行记录而言
--(1)删除是一条一条删除,每一次删除都会将操作写入到日志文件--效率低
--(2)标识列的值不会从种子重新计算
--(3)可以触发触发器
--(4)可以通过日志还原数据。
--语法(where条件至关重要):
--delete from 表 where 条件
--(5)不写where条件的话删除所有数据
delete from Teacher
--truncate
--一次性删除所有记录,日志文件以最小化的方式写入。效率更高。但是无法通过日志还原数据
--标识列从种子值重新计算
--不可以触发触发器
--语法:
--truncate table 表名 (不能添加条件,因为它不是一条一条删除,而是一次性删除所有记录,不关注删除的条数)
truncate table teacher
--(6)实际开发中,有的记录不会直接delete删除掉,而是对isDel字段更新为true,即标记为已删除。(假删除)
4、检索初步
--数据检索-
--语法:
--select 字段列表/ * from 表列表 where 条件
1 --为列指定中文别名 --只是结果集的显示。不会修改原始的表结构 2 select Id as 工号, Name 姓名, 工资=Salary, 公司='传智' 3 from Teacher where Gender=0 and Age<30
浙公网安备 33010602011771号