mssql和sqlite中關于if not exists 的寫法
來源:易賢網 閱讀:2907 次 日期:2014-05-12 14:36:38
溫馨提示:易賢網小編為您整理了“mssql和sqlite中關于if not exists 的寫法”,方便廣大網友查閱!

在sql語名中,if not exists 即如果不存在,if exists 即如果存在。

下面學習下二者的用法。

a,判斷數據庫不存在時

代碼如下:

if not exists(select * from sys.databases where name = 'database_name')

b,判斷表不存在時

代碼如下:

if not exists (select * from sysobjects where id = object_id('table_name') and OBJECTPROPERTY(id, 'IsUserTable') = 1)

c,判斷列不存在

代碼如下:

if not exists (select * from syscolumns where id=object_id('table_name') and name='column_name')

當判斷的表不存時,我可以執行創建數據庫,創建表,增加列,可以執行相應的SQL語句;

而if exists同理判斷,首先判斷查詢結果是否存在,如果存在執行判斷后面的語句,查詢的數據庫,表,列的方法相同;

mssql語法:

代碼如下:

if not exists (SELECT 1 FROM [t_Table] where [fName] = '張三')

insert into [t_Table] ([fName]) values ('張三');

sqlite語法:

代碼如下:

insert into [t_Table] ([fName]) select '張三'

where not exists (SELECT 1 FROM [t_Table] where [fName] = '張三');

更多信息請查看IT技術專欄

更多信息請查看數據庫
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
未满十八18勿进黄网站免费看