日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【转自CDDN】随笔:sysobjects.Xtype

發布時間:2024/10/8 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转自CDDN】随笔:sysobjects.Xtype 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

sysobjects.Xtype

SQL?Server數據庫的一切信息都保存在它的系統表格里。?

在大多數情況下,對你最有用的兩個列是Sysobjects.name和Sysobjects.xtype。前面一個用來列出待考察對象的名字,而后一個用來定義對象的類型

sysobjects

在數據庫內創建的每個對象(約束、默認值、日志、規則、存儲過程等)在表中占一行。只有在?tempdb?內,每個臨時對象才在該表中占一行。

列名數據類型描述
namesysname對象名。
Idint對象標識號。
xtypechar(2)對象類型。可以是下列對象類型中的一種:

C = CHECK 約束
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束
L = 日志
FN = 標量函數
IF = 內嵌表函數
P = 存儲過程
PK = PRIMARY KEY 約束(類型是 K)
RF = 復制篩選存儲過程
S = 系統表
TF = 表函數
TR = 觸發器
U = 用戶表
UQ = UNIQUE 約束(類型是 K)
V = 視圖
X = 擴展存儲過程

uidsmallint所有者對象的用戶 ID。
infosmallint保留。僅限內部使用。
statusint保留。僅限內部使用。
base_schema_
ver
int保留。僅限內部使用。
replinfoint保留。供復制使用。
parent_objint父對象的對象標識號(例如,對于觸發器或約束,該標識號為表 ID)。
crdatedatetime對象的創建日期。
ftcatidsmallint為全文索引注冊的所有用戶表的全文目錄標識符,對于沒有注冊的所有用戶表則為 0。
schema_verint版本號,該版本號在每次表的架構更改時都增加。
stats_schema_
ver
int保留。僅限內部使用。
typechar(2)對象類型。可以是下列值之一:

C = CHECK 約束?
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束?
FN = 標量函數
IF = 內嵌表函數
K = PRIMARY KEY 或 UNIQUE 約束?
L = 日志
P = 存儲過程
R = 規則
RF = 復制篩選存儲過程
S = 系統表?
TF = 表函數
TR = 觸發器
U = 用戶表
V = 視圖
X = 擴展存儲過程

userstatsmallint保留。
sysstatsmallint內部狀態信息。
indexdelsmallint保留。
refdatedatetime留作以后使用。
versionint留作以后使用。
deltrigint保留。
instrigint保留。
updtrigint保留。
seltrigint保留。
categoryint用于發布、約束和標識。
cachesmallint保留。

Type是在6.0就有的,XType在7.0才出現:

Type
對象類型。可以是下列值之一:?
C = CHECK 約束?
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束?
FN = 標量函數
IF = 內嵌表函數
K = PRIMARY KEY 或 UNIQUE 約束?
L = 日志
P = 存儲過程
R = 規則
RF = 復制篩選存儲過程
S = 系統表?
TF = 表函數
TR = 觸發器
U = 用戶表
V = 視圖
X = 擴展存儲過程

XType
對象類型。可以是下列對象類型中的一種:?
C = CHECK 約束
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束
L = 日志
FN = 標量函數
IF = 內嵌表函數
P = 存儲過程
PK = PRIMARY KEY 約束(類型是 K)
RF = 復制篩選存儲過程
S = 系統表
TF = 表函數
TR = 觸發器
U = 用戶表
UQ = UNIQUE 約束(類型是 K)
V = 視圖
X = 擴展存儲過程

1、問:object_id(N'中N'代表什么意思

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[text]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[text]

答:N'' 代表 Unicode類型,National縮寫。可以支持不同語種的對象名 2、 問:select ? * ? from ? dbo.sysobjects ? where ? id ? = ? object_id(N'[dbo].[usertab]') ? and ? OBJECTPROPERTY(id, ? N'IsUserTable') ? = ? 1???
?這句中的object_id(N'[dbo].[usertab]')和OBJECTPROPERTY(id, ? N'IsUserTable') ? = ? 1???是什么意思? 答:object_id(N'[dbo].[usertab]'):是得出系統給表usertab分配的唯一ID OBJECTPROPERTY(id, ? N'IsUserTable') ? = ? 1???該對象的屬性是表類型的 objectproperty(id,property)函數的使用,參考:http://www.cnblogs.com/greateast/archive/2007/07/31/837312.html 3、 問: USE master?
SELECT * FROM ...sysobjects “...sysobjects”三個句點的前綴是什么意思? 答: 對數據庫對象名的 Transact-SQL 引用可以是由四部分組成的名稱,格式如下:[ server_name.[[database_name].[owner_name]. | database_name.[owner_name]. | owner_name.] ] object_name

  

當引用某個特定對象時,不必總是為 SQL Server 指定標識該對象的服務器、數據庫和所有者。可以省略中間級節點,而使用句點表示這些位置。對象名的有效格式是:

server.database.owner.object

server.database..object

server..owner.object

server...object

database.owner.object

database..object

owner.object

?

例: 1.找出所有用戶表: select id,name,xtype,crdate from sysobjects where? xtype='U'
order by name;
--或者
select id,name,xtype,crdate from sysobjects where objectproperty(id,N'IsUserTable')=1?
order by name; 2.找出所有存儲過程 select id,name,xtype,crdate from sysobjects where? xtype='P'
order by name;
--或者
select id,name,xtype,crdate from sysobjects where objectproperty(id,N'IsProcedure')=1?
order by name;

轉載于:https://www.cnblogs.com/wupingzsf/archive/2011/09/10/2173396.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的【转自CDDN】随笔:sysobjects.Xtype的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。