SQL 常用语句(一)
--SQL 语句为表添加字段并设置默认值 alter table TableName add ColumnName int --字段类型 not null --是否为空 default 15 --默认值 --SQL 语句为表添加字段并设置递增 alter table TableName add ColumnName int not null IDENTITY(1, 1) --修改字段的数据类型和是否为空 alter table Student alter column S_Sex varchar(10) null --设置数据库兼容性 ALTER DATABASE Test --数据库名 SET COMPATIBILITY_LEVEL = 80||90||100 --可以设置为80、90或100 GO -- with 把查询出来的表当做源表,但是必须把数据库的兼容性设置为:90+ with t as (select * from Student) select * from t
----------------------------------------------------------------------------------------------------------------
--为已存在的表添加主键 alter table TableName add constraint S_C_Id --主键约束名 primary key (S_Id) --指定要添加主键的列 -- 为表 TableName 的字段 C_Id 添加唯一约束 ALTER TABLE TableName ADD CONSTRAINT UQ_CourseID_Primary_Key -- 约束名 UNIQUE (C_Id) -- 指定字段名 -- 为表 TableName 的字段 S_Name 添加默认值约束 ALTER TABLE TableName ADD CONSTRAINT DF_S_Name_Default -- 约束名 DEFAULT('233') FOR S_Name -- 指定字段名 -- 为表TableName 新增列添加外键约束 alter table TableName -- 需要建立外键的表名 add constraint C_S_Id -- 外键约束名 foreign key (C_S_Id) -- 指定外键表的外键列的列名 references Course(C_Id) -- 关联表的关联列的列名 go -- 查询出指定表(TableName )的外键约束名 select name from sys.foreign_key_columns f inner join sys.objects o on f.constraint_object_id=o.object_id where f.parent_object_id=object_id('TableName ') -- 删除指定外键约束名的外键约束 alter table Course drop constraint FK__Course__Stu_Id__15502E78 --FK__Course__Stu_Id__15502E78 外键约束名
------------------------------------------------------------------------------------------------------------------------------- --返回一个指定数据库的信息 sp_helpdb Test --返回所有数据库的信息 sp_helpdb --返回一个指定数据库对象(即表、视图等)的信息 sp_help Course --返回所有数据库表对象(即表、视图等)的信息 sp_help -- 设置允许将显式值插入表的标识列中 SET IDENTITY_INSERT Student on go -- 设置不允许将显式值插入表的标识列中 SET IDENTITY_INSERT Student off go --on:表示设置为可以手动输入标识列的值 --off:表示设置为不可以手动输入标识列的值 SET NOCOUNT ON --当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。 --当 SET NOCOUNT 为 OFF 时,返回计数。 SET QUOTED_IDENTIFIER ON --当 SET QUOTED_IDENTIFIER 为 ON 时,标识符可以由双引号分隔,而文字必须由单引号分隔。 --当 SET QUOTED_IDENTIFIER 为 OFF 时,标识符不可加引号,且必须遵守所有 Transact-SQL 标识符规则。 SET ANSI_NULLS ON --当SET ANSI_NULLS为ON时,那么SQL语句中,判断为空的写法就要修改为WHERE 字段 IS NULL。 --当SET ANSI_NULLS为OFF时,判断为空的写法就要修改为WHERE 字段=NULL。
使用 for xml path 把查询的数据转换为 XML 格式
select * from TableName where S_Id='7' for xml path