判斷資料庫中是否存在相應的表

2021-04-23 23:02:29 字數 1128 閱讀 4553

這句話是什麼意思?if exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[perper

請問:if exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[perpersondata]') and objectproperty(id, n'isusertable') = 1)

中的object_id(n'[dbo].[perpersondata]')是什麼意思?那個object_id函式?那個n?

還有objectproperty(id, n'isusertable') = 1中的objectproperty函式是什麼意思?那個=1又是什麼意思?

object_id:返回資料庫物件標識號。n是顯式的將非unicode字元轉成unicode字元,它來自 sql-92 標準中的 national(unicode)資料型別,用於擴充套件和標準化,在這裡可以不用,寫作object_id(perpersondata)。

objectproperty:返回當前資料庫中物件的有關資訊。1表「真」。同樣可以寫成objectproperty(id, susertable) = 1。

整條語句的意思是判斷資料庫裡有沒有存在perpersondata這樣一張表。

整條語句可以簡寫成:

if exists (select * from sysobjects where objectproperty(object_id('perpersondata'),'

create table [dbo].[picturenews] (

[id] [int] identity (1, 1) not null ,

[image] [image] null ,

[content] [varchar] (500) collate chinese_prc_ci_as null ,

[detail] [varchar] (5000) collate chinese_prc_ci_as null

) on [primary] textimage_on [primary]

go說明 collate 乙個子句,可應用於資料庫定義或列定義以定義排序規則,或應用於字串表示式以應用排序規則投影。

判斷資料庫中是否存在表的方法

1 sqlite 資料庫 select count from sqlite master where type table and name tablename sqlite master 是 sqlite維護的系統表 2 sqlserver2000資料庫 if exists select 1 fr...

IOS SQLite資料庫判斷表是否存在

sqlite資料庫中乙個特殊的名叫 sqlite master 上執行乙個select查詢以獲得所有表的索引。每乙個 sqlite 資料庫都有乙個叫 sqlite master 的表,它定義資料庫的模式。sqlite master 表看起來如下 create table sqlite master ...

判斷SQL資料庫是否存在表,是否存在記錄

sql資料庫,當判斷一條記錄存在時,則更新更記錄,當記錄不存在時,則新增該記錄 使用sql語句在c 中實現,sql語句 if exists select from 表 where 條件 begin update 表 set 字段 字段值 where 條件 endelse begin insert i...