判斷sql server表是否存在的方法如果需要知道SQL資料庫中表是否存在,應該怎麼做呢?下面就將教您這種判斷sql server表是否存在的方法,如果您對此有興趣的話,不妨一看。
AD:
在sql server中,如何判斷sql server表是否存在呢?下面就將為您詳細介紹該方法,供您參考,希望對您加深理解sql server表能起到些許作用。
sql server中如何判斷表或者資料庫的存在,但在實際使用中,需判斷Status狀態位: 其中某些狀態位可由使用者使用 sp_dboption(read only、dbo use only、single user 等)進行設定: 1 = autoclose;使用 sp_dboption 設定。 資料庫完全關閉,其資源在最後一個使用者登出後釋放。 4 = select into/bulkcopy;使用 sp_dboption 設定。允許使用 Select INTO 語句和快速大量複製。 8 = trunc. log on chkpt;使用 sp_dboption 設定。如果資料庫處於日誌截斷模式,則檢查點將截斷日誌中非活動的部分。只能為 master 資料庫設定此選項。16 = torn page detection,使用 sp_dboption 設定。可以檢測殘缺頁。 32 = loading。 64 = pre recovery。 128 = recovering。 256 = not recovered。 512 = offline;使用sp_dboption 設定。資料庫將處於離線狀態。 1024 = read only;使用 sp_dboption 設定。使用者僅能讀取資料庫中的資料而無法對其進行修改。 2048 = dbo use only;使用sp_dboption 設定。只有資料庫擁有者可以使用資料庫。 4096 = single user;使用 sp_dboption 設定。每次只能有一個使用者訪問資料庫。 32768 = emergency mode。 4194304 = autoshrink。 1073741824 = cleanly shutdown。 可以同時開啟多個位。
譬如:
判斷一個資料庫是否存在
offline select * From master.dbo.sysdatabases where name='pubs' and status<>512
SQL Server中判斷表對象是否存在:
select count(*) from sysobjects where id = object_id('資料庫名.Owner.表名')
if exists (select count(*) from sysobjects where id = object_id('資料庫名.Owner.表名')) print '存在' else print '不存在'
SQL Server中判斷表中欄位是否存在:
if exists(select * from syscolumns where name='colname1' and id=object_id('資料庫名.Owner.表名')) print '存在' else print '不存在'
Access中判斷表對象是否存在: 其實,Access資料庫也有系統資料表,存放有對象名 Select Count(*) AS Qty FROM MSysObjects Where ((MSysObjects.Name) Like '表名');