SQL常用方法(添加字段/修改约束/修改表名等)
[*]修改表名格式:sp_rename tablename,newtablename
sp_rename tablename,newtablename
[*]修改字段名格式:sp_rename 'tablename.colname',newcolname,'column'
sp_rename 'tablename.colname',newcolname,'column'
[*]添加字段格式:alter table table_name add new_column data_type
示例1ALTER TABLE student Add nationality varchar(20)
--示例2 添加int类型的列,默认值为 0
alter table student add studentName int default 0
--示例3 添加int类型的列,默认值为0,主键
alter table student add studentId int primary key default 0
--示例4 判断student中是否存在name字段且删除字段
if exists(select * from syscolumns where id=object_id('student') and name='name') begin
alter table student DROP COLUMN name
end
[*]更改字段格式:alter table table_name alter column column_name
ALTER TABLE student ALTER COLUMN name VARCHAR(200)
[*]删除字段格式:alter table table_name drop column column_name
ALTER TABLE student DROP COLUMN nationality;
[*]查看字段约束格式: select * from information_schema.constraint_column_usage where TABLE_NAME = table_name
SELECT TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME FROM information_schema.CONSTRAINT_COLUMN_USAGE
WHERE TABLE_NAME = 'student'
[*]查看字段缺省约束表达式 (即默认值等)格式:select * from information_schema.columns where TABLE_NAME = table_name
SELECT TABLE_NAME, COLUMN_NAME, COLUMN_DEFAULT FROM information_schema.COLUMNS
WHERE TABLE_NAME='student'
[*]查看字段缺省约束名格式:select name from sysobjects where object_id(table_name)=parent_obj and xtype=’D’
select name from sysobjects
where object_id('表?名?')=parent_obj and xtype='D'
[*]删除字段约束格式:alter table tablename drop constraint constraintname
ALTER TABLE student DROP CONSTRAINT PK__student__2F36BC5B772B9A0B
[*]添加字段约束格式:alter table tablename add constraint constraintname primary key (column_name)
--示例1
ALTER TABLE stuInfo ADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo)
--示例2添加主键约束(Primary Key)
-- 存在主键约束PK_stuNO,则删除
IF EXISTS(SELECT * FROM sysobjects WHERE name='PK_stuNo' and xtype='PK')
Alter TABLE stuInfo
Drop Constraint PK_stuNo
Go
-- 重新添加主键约束PK_stuNO
ALTER TABLE stuInfoADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo)
Go
--示例3 添加 唯一UQ约束(Unique Constraint)
-- 存在唯一约束UQ_stuNO,则删除
IF EXISTS(SELECT * FROM sysobjects WHERE name='UQ_stuID' and xtype='UQ')
Alter TABLE stuInfo
Drop Constraint UQ_stuID
Go
-- 重新添加唯一约束UQ_stuID
ALTER TABLE stuInfo ADD CONSTRAINT UQ_stuID UNIQUE (stuID)
--示例4 添加默认DF约束(Default Constraint)
-- 存在默认约束UQ_stuNO,则删除
IF EXISTS(SELECT * FROM sysobjects WHERE name='DF_stuAddress' and xtype='D')
Alter TABLE stuInfo Drop Constraint DF_stuAddress
Go
-- 重新添加默认约束DF_stuAddress
ALTER TABLE stuInfoADD CONSTRAINT DF_stuAddress DEFAULT ('地址不详') FOR stuAddress
--示例5 检查CK约束(Check Constraint)
-- 存在检查约束UQ_stuNO,则删除
IF EXISTS(SELECT * FROM sysobjects WHERE name='CK_stuAge' and xtype='C')
Alter TABLE stuInfo Drop Cons
11 123422343234 即墨还雀 发表于 2016-7-8 09:39
123422343234
我想知道你在群里是谁 66666,关键不换行挺费力看起来 Amy尾巴 发表于 2016-7-8 09:52
66666,关键不换行挺费力看起来
{:3_62:} 66666666666 ibcadmin 发表于 2016-7-8 09:40
我想知道你在群里是谁
这是天涯吖 66666666666666666 Amy尾巴 发表于 2016-7-8 14:11
这是天涯吖
是他 是他 就是他
页:
[1]
2