天天看点

sql添加、删除表中的列

添加没有默认值:alter table Test add BazaarType char(1)

有默认值的添加列:alter table Test add BazaarType char(1) default(0)

删除没有默认值的列:alter table Test drop COLUMN BazaarType

删除有默认值的列:先删除约束(默认值)alter table Test DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5F,然后在删除列

alter table Test DROP COLUMN BazaarType

系统自带的查询约束条件的存储过程:exec sp_helpconstraint 表名

添加字段:

允许空字符: alter table 表名 add 新字段 字段类型 NULL

不允许空字符: alter table 表名 add 新字段 字段类型 not NULL

增加字段

alter table docdsp add dspcode char(200)

删除字段

ALTER TABLE table_NAME DROP COLUMN column_NAME

修改字段类型

ALTER TABLE table_name ALTER COLUMN column_name new_data_type

改名

sp_rename

更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。

语法

sp_rename [ @objname = ] 'object_name' ,

    [ @newname = ] 'new_name'

    [ , [ @objtype = ] 'object_type' ]

--假设要处理的表名为: tb

--判断要添加列的表中是否有主键

if exists(select 1 from sysobjects where parent_obj=object_id('tb') and xtype='PK')

begin

print '表中已经有主键,列只能做为普通列添加'

--添加int类型的列,默认值为0

alter table tb add 列名 int default 0

end

else

begin

print '表中无主键,添加主键列'

--添加int类型的列,默认值为0

alter table tb add 列名 int primary key default 0

end