欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
sys.sysobjects、sys.all
2012-01-05 17:27 5699人閱讀 評論(0) 收藏 舉報
分類(lèi):

Sql server 2005系統視圖sys.sysobjects和sys.all_objects,sys.objects,三者之間有什么區別?


一、這三個(gè)視圖都是存在于SQL Server 2005的每個(gè)數據庫中。在SQL Server 2000中,它們都是系統表,而不是視圖。

關(guān)于兩個(gè)版本中系統表和系統的視圖的對應關(guān)系,參考:點(diǎn)擊打開(kāi)鏈接

1.sys.all_objects:顯示所有架構范圍內的用戶(hù)定義對象和系統對象 ,參考點(diǎn)擊打開(kāi)鏈接

2.sys.sysobjects,sys.objects:用戶(hù)在數據庫中創(chuàng )建的每個(gè)對象(例如約束、默認值、日志、規則以及存儲過(guò)程)都對應一行, 參考點(diǎn)擊打開(kāi)鏈接

3.sys.objects 不顯示 DDL 觸發(fā)器,因為它們不是架構范圍內的對象。所有觸發(fā)器(包括 DML 和 DDL)均位于sys.triggers 中。sys.triggers 支持對各種觸發(fā)器應用混合名稱(chēng)范圍規 則。

在自己的數據庫中測試發(fā)現,sys.objects,sys.sysobjects視圖的內容是完全一致的。這三個(gè)視圖的結構比較類(lèi)似,其中飽含type,id等屬性。其中type的取值代表了各種不同的對象類(lèi)型。對于觸發(fā)器或者約束對象,parent_obj屬性表示父表的id。

 

二、Name, ID相關(guān)的系統函數:
1.SCHEMA_NAME ( [ schema_id ] ):返回與架構 ID 關(guān)聯(lián)的架構名稱(chēng)。
2.OBJECT_NAME ( object_id [, database_id ] ):返回架構范圍內對象的數據庫對象名稱(chēng)。
3.OBJECT_ID (object_name [,'object_type' ] ):返回架構范圍內對象的數據庫對象標識號,包括觸發(fā)器等; 若要返回 DDL 觸發(fā)器的對象標識號,請使用 SELECT OBJECT_ID FROM sys.triggers WHERE name = 'DatabaseTriggerLog'。

 

三、列名 數據類(lèi)型說(shuō)明
name
sysname
對象名稱(chēng)。

object_id
int
對象標識號。在數據庫中是唯一的。

principal_id
int
如果不是架構所有者,則為單個(gè)所有者的 ID。默認情況下,架構包含的對象由架構所有者擁有。不過(guò),通過(guò)使用 ALTER AUTHORIZATION 語(yǔ)句更改所有權可以指定備用所有者。如果沒(méi)有備用的單個(gè)所有者,則為 NULL。

如果對象類(lèi)型為下列類(lèi)型之一,則為 NULL:

C = CHECK 約束

D = DEFAULT(約束或獨立)

F = FOREIGN KEY 約束

PK = PRIMARY KEY 約束

R = 規則(舊式,獨立)

TA = 程序集(CLR 集成)觸發(fā)器

TR = SQL 觸發(fā)器

UQ = UNIQUE 約束

schema_id
int
包含該對象的架構的 ID。始終包含在 sys 或 INFORMATION_SCHEMA 架構中的架構范圍內的系統對象。

parent_object_id
int
此對象所屬對象的 ID。0 = 不是子對象。

type
char(2)
對象類(lèi)型:

AF = 聚合函數 (CLR)

C = CHECK 約束

D = DEFAULT(約束或獨立)

F = FOREIGN KEY 約束

FN = SQL 標量函數

FS = 程序集 (CLR) 標量函數

FT = 程序集 (CLR) 表值函數

IF = SQL 內聯(lián)表值函數

IT = 內部表

P = SQL 存儲過(guò)程

PC = 程序集 (CLR) 存儲過(guò)程

PG = 計劃指南

PK = PRIMARY KEY 約束

R = 規則(舊式,獨立)

RF = 復制篩選過(guò)程

S = 系統基表

SN = 同義詞

SQ = 服務(wù)隊列

TA = 程序集 (CLR) DML 觸發(fā)器

TF = SQL 表值函數

TR = SQL DML 觸發(fā)器

U = 表(用戶(hù)定義類(lèi)型)

UQ = UNIQUE 約束

V = 視圖

X = 擴展存儲過(guò)程

type_desc
nvarchar(60)
對對象類(lèi)型的說(shuō)明:

AGGREGATE_FUNCTION

CHECK_CONSTRAINT

DEFAULT_CONSTRAINT

FOREIGN_KEY_CONSTRAINT

SQL_SCALAR_FUNCTION

CLR_SCALAR_FUNCTION

CLR_TABLE_VALUED_FUNCTION

SQL_INLINE_TABLE_VALUED_FUNCTION

INTERNAL_TABLE

SQL_STORED_PROCEDURE

CLR_STORED_PROCEDURE

PLAN_GUIDE

PRIMARY_KEY_CONSTRAINT

RULE

REPLICATION_FILTER_PROCEDURE

SYSTEM_TABLE

SYNONYM

SERVICE_QUEUE

CLR_TRIGGER

SQL_TABLE_VALUED_FUNCTION

SQL_TRIGGER

USER_TABLE

UNIQUE_CONSTRAINT

VIEW

EXTENDED_STORED_PROCEDURE

create_date
datetime
對象的創(chuàng )建日期。

modify_date
datetime
上次使用 ALTER 語(yǔ)句修改對象的日期。如果對象為表或視圖,則創(chuàng )建或修改表或視圖的聚集索引時(shí),modify_date 也會(huì )隨之更改。

is_ms_shipped
bit
對象由內部 SQL Server 組件創(chuàng )建。

is_published
bit
對象為發(fā)布對象。

is_schema_published
bit
僅發(fā)布對象的架構。

 

四、備注
可將 OBJECT_ID 、OBJECT_NAME 和 OBJECTPROPERTY () 內置函數應用于 sys.objects 中顯示的對象。

此視圖有一個(gè)具有相同架構的版本,名為 sys.system_objects ,該版本顯示系統對象。還有另一個(gè)同時(shí)顯示系統對象和用戶(hù)對象的視圖,名為 sys.all_objects 。所有這三個(gè)目錄視圖的結構都相同。

在此版本的 SQL Server 中,擴展索引(例如 XML 索引或空間索引)將視為 sys.objects 中的內部表(type = IT,type_desc = INTERNAL_TABLE)。對于擴展索引:

name 是索引表的內部名稱(chēng)。
parent_object_id 是基表的 object_id。
is_ms_shipped、is_published 和is_schema_published 列設置為 0。

五、權限
在 SQL Server 2005 及更高版本中,目錄視圖中僅顯示用戶(hù)擁有的安全對象的元數據,或用戶(hù)對其擁有某些權限的安全對象的元數據。有關(guān)詳細信息,請參閱元數據可見(jiàn)性配置。

 

六、示例
A. 返回在最近 N 天內修改過(guò)的所有對象
運行以下查詢(xún)之前,請使用有效值替換 <database_name> 和 <n_days> 。

復制代碼
USE <database_name>;
Go
SELECT name AS object_name
,SCHEMA_NAME(schema_id) AS schema_name
,type_desc
,create_date
,modify_date
FROM sys.objects
WHERE modify_date > GETDATE() - <n_days>
ORDER BY modify_date;
GO
B. 返回指定存儲過(guò)程或函數的參數
運行以下查詢(xún)之前,請使用有效名稱(chēng)替換 <database_name> 和 <schema_name.object_name> 。

復制代碼
USE <database_name>;
GO
SELECT SCHEMA_NAME(schema_id) AS schema_name
,o.name AS object_name
,o.type_desc
,p.parameter_id
,p.name AS parameter_name
,TYPE_NAME(p.user_type_id) AS parameter_type
,p.max_length
,p.precision
,p.scale
,p.is_output
FROM sys.objects AS o
INNER JOIN sys.parameters AS p ON o.object_id = p.object_id
WHERE o.object_id = OBJECT_ID('<schema_name.object_name>')
ORDER BY schema_name, o.object_name, p.parameter_id;
GO
C. 返回數據庫中的所有用戶(hù)定義函數
運行以下查詢(xún)之前,請使用有效數據庫名稱(chēng)替換 <database_name> 。

USE <database_name>;
GO
SELECT name AS function_name
,SCHEMA_NAME(schema_id) AS schema_name
,type_desc
,create_date
,modify_date
FROM sys.objects
WHERE type_desc LIKE '%FUNCTION%';
GO
D. 返回架構中每個(gè)對象的所有者。
運行以下查詢(xún)之前,請使用有效名稱(chēng)替換所有的 <database_name> 和 <schema_name> 。

USE <database_name>;
GO
SELECT 'OBJECT' AS entity_type
,USER_NAME(OBJECTPROPERTY(object_id, 'OwnerId')) AS owner_name
,name
FROM sys.objects WHERE SCHEMA_NAME(schema_id) = '<schema_name>'
UNION
SELECT 'TYPE' AS entity_type
,USER_NAME(TYPEPROPERTY(SCHEMA_NAME(schema_id) + '.' + name, 'OwnerId')) ASowner_name
,name
FROM sys.types WHERE SCHEMA_NAME(schema_id) = '<schema_name>'
UNION
SELECT 'XML SCHEMA COLLECTION' AS entity_type
,COALESCE(USER_NAME(xsc.principal_id),USER_NAME(s.principal_id)) AS owner_name
,xsc.name
FROM sys.xml_schema_collections AS xsc JOIN sys.schemas AS s
ON s.schema_id = xsc.schema_id
WHERE s.name = '<schema_name>';
GO

 

七、問(wèn)題:若系統提示,對象名‘sys.objects’不存在,如何解決?

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[tb1]') AND type in (N'U'))

修改為

IF NOT EXISTS (SELECT * FROM sysobjects WHERE id = OBJECT_ID(N'[dbo].[tb1]') AND type in (N'U'))

 

來(lái)自: http://hi.baidu.com/yingjianglinx/blog/item/cb12041663dd1600c83d6de6.html

0
0

我的同類(lèi)文章

參考知識庫

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Oracle Audit 審計 說(shuō)明
mysql數據庫語(yǔ)法總結--存儲過(guò)程、函數、視圖、觸發(fā)器、表
SQL Server表鎖定原理以及如何解除鎖定
查詢(xún)數據庫各種歷史記錄
SQL Server DDL觸發(fā)器
SQL Server 索引優(yōu)化
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久