国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
SQL Server 2000 ——系統(tǒng)表和系統(tǒng)視圖


一、系統(tǒng)表

數(shù)據(jù)字典的詳細(xì)信息請查SQL SERVER BOL,這里僅列出一部分。

1.1sysservers

1、查看所有本地服務(wù)器及鏈接服務(wù)器

select * from master..sysservers

1.2sysdatabases

1:查詢sa創(chuàng)建的所有數(shù)據(jù)庫

select * from master..sysdatabases

where sid not in(select sid from master..syslogins where name='sa')

--或者

select dbid, name AS DB_NAME from master..sysdatabases

where sid <> 0x01

1.3、sysobjects

1:獲取當(dāng)前數(shù)據(jù)庫中的所有用戶表

select name from sysobjects where xtype='U' and status>0

為什么要加status>0,因?yàn)楸?/span>dtproperties,雖然該表的xtypeU,實(shí)質(zhì)上它是系統(tǒng)表。

dtproperties這個表里保存的是關(guān)系圖,如果沒建關(guān)系圖就是空的。

注意:這個表只是數(shù)據(jù)庫對象的屬性,如果想要看表、索引詳細(xì)的屬性,查看sysindexes

2:查看當(dāng)前數(shù)據(jù)庫中所有存儲過程

select name as 存儲過程名稱 from sysobjects where xtype='P' and status>0

為什么要加status>0,是為了去掉當(dāng)前數(shù)據(jù)庫中的系統(tǒng)存儲過程。

注:該系統(tǒng)表中typextype的區(qū)別是什么?

Type是在SQL SERVER 6.0就有的,xTypeSQL SERVER 7.0才出現(xiàn),Type的保留只是為了向后兼容。每種數(shù)據(jù)庫對象的類型詳見SQL SERVER BOL

1.4、syscolumns

1:獲取表或視圖的所有字段,存儲過程或函數(shù)的所有參數(shù)

select name from syscolumns where id=object_id('表名')

1.5、sysproperties

1怎么把SQL SERVER中表設(shè)計和表注釋讀出來

--表的注釋全在sysproperties

select b.name,value from sysproperties as a,sysobjects as b

where a.id=b.id and b.name='表名'

1.6、sysindexes

1:根據(jù)聚集索引,快速查詢表的行數(shù)

SELECT rowcnt,indid FROM sysindexes WHERE id=OBJECT_ID('tableName')and indid < 2

注意:使用這種方法可能不精確,因?yàn)橄到y(tǒng)的統(tǒng)計信息在某些時候不一定是準(zhǔn)確的。關(guān)于統(tǒng)計的維護(hù)(dbcc updateusage()),詳見《SQL SERVER 性能優(yōu)化——查詢優(yōu)化》series。

2:查看索引表信息

select

table_Name=sysobjects.Name,

index_Name=sysindexes.Name,

Type=sysobjects.type,

分配索引頁=sysindexes.reserved,

使用索引頁=sysindexes.used,

葉子層頁=sysindexes.Dpages,

非葉子層頁=sysindexes.used-sysindexes.Dpages,

rows=sysindexes.rowcnt

from sysindexes left outer join sysobjects on sysindexes.id=sysobjects.id

where sysindexes.indid>0 and sysindexes.indid<255 and sysindexes.status & 64=0

注意:若發(fā)現(xiàn)非葉子層的頁數(shù)為負(fù)數(shù),最好是運(yùn)行DBCC UPDATEUSAGE ('dbname','tbname','ixname')來更新一下sysindexes的信息

1.7、syslogins

SQL SERVER 服務(wù)器的登錄信息,比如:sa,有關(guān)登錄、用戶、角色的信息詳見《SQL SERVER 2000 管理——安全——用戶權(quán)限》。

select * from syslogins

select * from sysxlogins

sysxloginssyslogins的精簡版,BOL中沒有說明,不推薦使用。

1.8、sysprocesses

1:查看用戶進(jìn)程信息

select spid,uid,syslogins.name,login_time,net_address from sysprocesses,syslogins where sysprocesses.sid=syslogins.sid

2:查看數(shù)據(jù)庫啟動時間

select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1

1.9、sysdepends

1:查看與某一個表相關(guān)的視圖、存儲過程、函數(shù)

select * from sysdepends where depid=object_id('表名')

--或者

select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%'

注意:這種查法,只適用在沒有with Encryption選項,即沒有加密該對象時。

--或者

sp_depends

注意:這個表的統(tǒng)計信息并不準(zhǔn)確,沒有什么好的辦法,查詢結(jié)果只可用于參考。

1.10sysmessages

SQL SERVER返回的內(nèi)部錯誤都有在這里,可自行定義進(jìn)行錯誤的添加,但一般我習(xí)慣于新建一個錯誤的表來定義自己程序中的錯誤。

select * From master..sysmessages where error=5037

1.11、sysfilessysfilegroups

1、查詢當(dāng)前數(shù)據(jù)庫的文件使用情況

select name,filename,size/128 as 'used(M)',case maxsize/128 when 0 then 'no limit' else cast(maxsize/128 as varchar(10)) end as 'total(M)' from sysfiles

2、查詢當(dāng)前數(shù)據(jù)庫的表所在文件組

select distinct a.id,a.name,b.groupid,c.groupname from sysobjects a inner join sysindexes b on a.id=b.id

inner join sysfilegroups c on b.groupid=c.groupid

where a.xType='U' and a.status>0 order by a.name

sysfiles1sysfiles的精簡版,BOL中沒有說明,不推薦使用。

二、系統(tǒng)視圖

master數(shù)據(jù)庫中有INFORMATION_SCHEMAsystem_function_schema兩個用戶,它們的登錄是<>,這是系統(tǒng)內(nèi)置的兩個用戶。

INFORMATION_SCHEMA擁有自已的視圖,在SQL Server 2000中沒有被廣泛使用,因?yàn)楹芏鄷r候都可以從系統(tǒng)表中得到我們想要的結(jié)果,同樣到了SQL Server 2005中,被廣泛使用的仍然是sys所擁有的視圖,SQL Server 2005的相關(guān)內(nèi)容詳見后續(xù)《SQL Server 2005series文章。舉例如下:

1、查詢某個表的哪些字段不允許為空

select COLUMN_NAME from INFORMATION_SCHEMA.COLUMNS

where IS_NULLABLE='NO' and TABLE_NAME='stb_User'

2、查詢某個表的鍵約束

select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE

where TABLE_NAME='stb_User'

注:鍵約束,是指除了CHECK、NOT NULL外的約束,即PKFK,UNIQUE,DEFAULT不是約束。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
sql server 系統(tǒng)表sysobjects、sysindexes、syscolumns損壞的修...
SQL SERVER得到表、視圖、存儲過程、觸發(fā)器、字段的信息
SQL Server判斷對象是否存在 (if exists (select * from sysobjects )(轉(zhuǎn))
精講sql server數(shù)據(jù)庫sysObjects表中xtype字段值的含義
SQL2000常用命令收集
找SQL表的主鍵
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服