SQL——Sql_Server中如何判斷表中某字段、判斷表、判斷存儲過程以及判斷函數是否存在


一.比如說要判斷表A中的字段C是否存在兩個方法:    

(1) 直接查表——有點笨,有點常規

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 '不存在'    

(2)  直接判斷列長度的函數——短小精悍,可謂精典    

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    

 

二.判斷表是否存在、創建表、並加索引:

三、判斷存儲過程是否存在,並創建存儲過程:

 

四.判斷函數是否存在並創建函數:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM