在SQL中如何判断指定的列名是否存在

判断一个数据表(T_TestTable)是否存在列名为sum的一个SQL语句,如果不存在则向表中插入列名为sum的列,数据类型为 float.
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[T_TestTable]'and OBJECTPROPERTY(id, N'IsUserTable'= 1)

if
 (NOT exists ( select * from dbo.syscolumns where name = 'sum' and id in 
(
select id from dbo.sysobjects where id = object_id(N'[dbo].[T_TestTable]'and OBJECTPROPERTY(id, N'IsUserTable'= 1))

ALTER TABLE [dbo].[T_TestTable] ADD sum float 
GO

简单记录一下,不知道有没有其他的缺陷,反正暂时是可以运行的,如果有错,请指教,本人sql语句不怎么样。总感觉这语句不好。
修改已存在的列的列名:sp_rename 'T_INFO_TestTable.HouseNo','HouseNONew','column' ;
GO
posted @ 2005-09-22 17:44  可乐加冰  阅读(1715)  评论(1编辑  收藏  举报