遗留问题:
1、如何查询值为null的数据行:
select *from 表名 where 列名 is null -- 列的数据是空的
select *from 表名 where 列名 is not null --列的数据不是空的
2、nvarchar(max)长度,是不允许作为主键列的
3、自增列:identity
create table 表名
(
列名 int primary key identity (1,1), --identity(从几开始递增,每次增几个)列自增,
列名 nvarchar (50),
列名 int
)
select *from 表名
注意:identity一直处于自增状态,序号不管删除不删除,都是占用状态,只出现一次
事务:保障流程的完整执行
格式:
create table 表名
(
列名 int primary key identity (1,1),
列名 nvarchar (50),
列名 int
)
select *from 表名
begin tran --开始的位置
insert into 表名 values ( '张三',18)
insert into 表名 values ('李四','aa')
if @@error >0 -- 只要有一个错error就加1,没有错就是0
begin
rollback tran --回滚事务,返回begin tran
end
else
begin
commit tran --提交事务
end
备份:不用将数据库的服务关闭,就可以直接备份
要备份的数据库右键--》任务--》备份--》数据库选择要备份的数据库,备份类型选择完整,备份过期时间一般不会设置,保存路径一般不改,除了搭建服务器
保存位置:在与数据库同文件mssql里的backup
还原:右键已备份的数据库--》还原--》目标数据库要改
分离:将数据库与数据库服务分开,可以拷走
右键任务,分离--》点击删除链接--》可以把mdf和ldf复制或是剪切
附加:将数据库文件添加到服务列表中, 右键 数据库 --》 附加 -->添加 --》找到mdf文件