四、添加、修改、删除
1、Insert 往表中插入新的记录
2、Update 修改表中已有记录的修改
3、Delete 删除表中已有记录的删除
五、分页语句
分页是根据记录的序号栏分的,【row_number()】函数获取记录序号。
select * from (select *, row_number() over(order by Stuid) as row StuInfo) AA where row between 1 and 15
--- 该语句返回StuInfo表中以Stuid排序的记录集AA中提取1~15号记录。
select * from (select *, row_number() over(order by Stuid) as row StuInfo) AA where row between 16 and 30
--- 该语句返回StuInfo表中以Stuid排序的记录集AA中提取16~30号记录。
以此类推,获得分页数据。
六、所有数据库的对象全都可以直接用命令创建、修改、删除
Create 建立(创建)
Alter 修改
Drop 删除
七、约束
保持数据的完整性。可以设置默认值(如:日期),可以限制范围(如:年龄范围)
八、常用函数
1、Getdate() 获取当前日期时间
2、DateAdd(mm,1,Getdate()) 在当前日期上加一个月(在指定日期上加是定数量单位的日期时间)获得新日期。
3、DateDiff(yy,Getdate(),2020/12/31) 按指定的单位获取两个日期间的差额。
指定单位:datepart 缩写
year yy, yyyy
quarter qq, q
month mm, m
dayofyear dy, y
day dd, d
week wk, ww
hour hh
minute mi, n
second ss, s
millisecond ms
microsecond mcs
nanosecond ns
4、IsNull(变量,null时取代的值)
如:IsNull(Country,'中国') ---当Country字段取值为null时用'中国'取代
九、查询命令中可用的Case语句
Case When 条件1 Then 结果1 Case语句相当于分支语句。
When 条件2 Then 结果2
....
When 条件n Then 结果n
Else 结果n+1
End
十、索引
1、聚集索引 表中的主键就是聚集索引,一个表中只能有一个聚集索引。
2、非聚集索引 一个表中可以有很多个非聚集索引,此类索引也所谨慎使用。
通常对数据量大,查询频度高的财讯要建立非聚集索引。
** 索引使用一段时间后会产生碎片,需要定期重新组织后重新生成。
十一、视图
视图实际就是联合查询,可以用GUI方式建立视图。
十二、存储过程
存储过程提供可以在后台进行批处理的方法。
十三、触发器(Trigger)
1、Insert触发器 当表中有Insert操作时触发该过程。
2、Update触发器 当表中有Update操作时触发该过程。
3、Delete触发器 当表中有Delete操作时触发该过程。
十四、备份、还原
1、使用数据库提供的备份功能。
还原时先创建同名数据库,然后覆盖恢复备份数据就OK。
2、先分离数据库,在复制出刚刚分离的数据库作为备份。
还原时直接把备份的数据库附加到sql server 就OK。
** 版本兼容问题:高版本兼容低版本内,但低版本无法使用高版本创建的数据库。
在高板本数据库的数据库属性-->选项-->兼容级别-->先合适的版本生成备份文件即可。
十五、导入、导出
1、使用数据库提供的导入、导出功能。
有源数据库导出到目的数据库中,或有源数据库导入到目的数据库中。
** 导入、导出时要注意消失主键的问题。
十六、作业
按指定时间执行规定的命令方法。
1、新建作业
2、步骤-->给出步骤名称-->再写相关作业要执行的命令。
自动备份:Backup Database MyDB To Disk = 'D:Test' With Format, Name='MyDB-20151023'
** 给Name的值不能用函数赋值,如需要动态这name时需要建立@变量来传递。
3、计划-->给出计划名称-->设置频率、持续时间-->确定。
** 作业建好之后按照计划制定的时间频度执行步骤制定的命令。