Sql_Server中如何判断表中某字段是否存在

--比如说要判断表A中的字段C是否存在两个方法:    
一,    
IF EXISTS (    
 SELECT 1 FROM SYSOBJECTS T1    
  INNER JOIN SYSCOLUMNS T2 ON T1.ID=T2.ID    
 WHERE T1.NAME='A' AND T2.NAME='C'    
 )    
 PRINT '存在'    
  ELSE    
 PRINT '不存在'    
     
二, 短小精悍,可谓精典    
IF COL_LENGTH('A', 'C') IS NOT NULL    
    PRINT N'存在'    
ELSE    
    PRINT N'不存在'    
    
方法一:     
select   *   from   syscolumns   where   id=object_id('表名')   and   name='列名'    
说明:存在则返回此列的一条说明记录,不存在返回空;    
    
方法二:    
select   count(*)   from   sysobjects   a,syscolumns   b  where a.id=b.id  and  b.name='flag1'  and a.type='u'   and   a.name='T_Pro_ProductClass'    
说明:存在返回1,不存在则返回0    

 

posted @ 2018-06-20 10:19  欧阳宇  阅读(33874)  评论(0编辑  收藏  举报