Sql Server 添加删除字段判断表或字段是否存在得到
来源: 阅读:2100 次 日期:2014-11-03 11:49:09
温馨提示: 小编为您整理了“Sql Server 添加删除字段判断表或字段是否存在得到”,方便广大网友查阅!

增加字段

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

/**************************************************************************************/

判断table1中是否存在name字段

if exists(select * from syscolumns where id=object_id('table1') and name='name') begin

select * from people;

end

========================================================================

如果是实表可以用

if exists (select * from sysobjects where id = object_id(N'[dbo].[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[表名]--如果表存在就删除

如果是临时表可以用

if object_id('tempdb..##temp') is not null

drop table ##temp

说明,如果用查找实表方法来打临时表会找不到.发布区别对代.

==========================================================

得到表字段的描述

我一般用这个视图

Create view fielddesc

as

select o.name as oname, c.name as cname,convert(varchar(30),p.value) as value,p.smallid as psmallid,t.name as tname

from syscolumns c

join systypes t on c.xtype = t.xtype

join sysobjects o on o.id=c.id

left join sysproperties p on p.smallid=c.colid and p.id=o.id

where o.xtype='U'

查询时:

Select * from fielddesc where oname = '你的表名'

注:更多精彩教程请关注三联教程 频道,

更多信息请查看IT技术专栏

更多信息请查看 数据库
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们| 联系我们| 人才招聘| 网站声明| 网站帮助| 非正式的简要咨询| 简要咨询须知| 加入群交流| 手机站点| 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00) 版权所有:
云南网警报警专用图标
Baidu
map