當前位置:首頁 » 編程語言 » sql默認架構名字
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql默認架構名字

發布時間: 2022-08-27 21:53:04

sql server資料庫,如何查找所有用戶默認的schema

sys.database_principals視圖包含所有資料庫用戶的默認架構,default_schema_name列即為默認架構,這個很容易理解,執行一下看看效果吧

SELECT * FROM sys.database_principals

② 在sql中sys.與dbo.有什麼區別,是一個指架構一個指表嗎

架構是指包含表、視圖、過程等的容器。
sys是包含系統對象的架構。
dbo是用戶默認架構,sysadmin 固定伺服器角色的所有成員都有默認架構 dbo.

③ sql資料庫架構的問題

sample並不是什麼架構名,SQL Server也沒有這一說。
sample是一個用戶名,book這個表屬於這個用戶而不是默認的dbo用戶,當你把資料庫附加到本地的時候,並沒有把sample這個用戶名也加進來,產生孤立用戶,所以會這樣。

兩種解決辦法
1。把book表的所有者改為dbo
方法一:右鍵點擊該表-》設計表,在上面的一排小圖標中,點最後一個「條件約束」,點「表」頁,在裡面更改所有者。(若沒有條件約束的小圖標,可以點右鍵,能看到一個「check約束」的選項) 方法二:利用腳本直接執行,用sa登陸到該資料庫,然後執行下面語句: sp_configure 'allow updates','1'
go
reconfigure with override
go
update sysobjects set uid=1 where uid<>1
go
sp_configure 'allow updates','0'
go
reconfigure with override

2。新建login,將資料庫中指定的 user 鏈接到 login,用新的login登錄就可以直接
select * from Book。

④ sql中 dbo 是什麼意思

DBO是每個資料庫的默認用戶,具有所有者許可權,即DbOwner。

通過用DBO作為所有者來定義對象,能夠使資料庫中的任何用戶引用而不必提供所有者名稱。比如:你以User1登錄進去並建表Table,而未指定DBO,

當用戶User2登進去想訪問Table時就要知道這個Table是User1建立的,要寫上User1.Table,如果不知道是User1建的,則訪問會有問題。

如果建表時把所有者指給了Dbo,則別的用戶進來時寫上Dbo.Table就行了,不必知道User1。不光表是如此,視圖等等資料庫對象建立時也要如此才算是好。

(4)sql默認架構名字擴展閱讀

sql資料庫中系統語言的作用

1、查詢資料庫中都有哪些資料庫

select*fromdbo.sysdatabases

2、查詢用戶創建的資料庫中有哪些用戶創建的表

select*fromSysobjectswherextype='U'

3、查詢用戶創建的資料庫中有哪些用戶創建的存儲過程

select*fromSysobjectswherextype='P'

4、批量生成刪除資料庫中所有用戶表的sql語句

select'droptable'+namefromSysobjectswherextype='U'

⑤ sql server中的架構是什麼意思

在sqlserver 2005中,可能大家在工作或學習的時候會經常發現這樣一些問題,你使用一個賬戶在資料庫中創建了一張表,卻發現你自己創建的表卻沒有修改和查詢的許可權,這是一件很郁悶的事情,在sqlserver2000中卻不存在這樣的問題,那為什麼在2005中會出現這樣的事情,這樣的設置可以帶來哪些好處?其實導致這一問題的原因主要在於2005中多了一個新的概念—架構。
首先我們來看一下msdn中對架構的定義:架構(Schema)是形成單個命名空間的資料庫實體的集合。命名空間是一個集合,其中每個元素的名稱都是唯一的。在這里,我們可以將架構看成一個存放資料庫中對象的一個容器。
架構實際上在sqlserver2000中就已經存在,當我們使用查詢分析器去查詢一個表的時候,一個完整的表的名稱應該包括伺服器名.資料庫名.用戶名.對象名,而在sqlserver2005中一個表的完全限定名稱應該為伺服器名.資料庫名.架構名.對象名
在2000中,假如有一個賬戶tt在test資料庫中創建了一張表table1的時候,在伺服器上對查詢的語句應為select * from test.tt.table1,也就是說,在sqlserver 2000中一張表所屬的架構默認就是表的創建者的登錄名稱,用戶可以和修改他所創建的所有資料庫對象。但在2005中已經將用戶和其創建對象所屬架構的關聯取消了,而加入了一個全新的架構體系,這樣做的優點主要在於下面幾個方面:
1. 多個用戶可以通過角色(role)或組(Windows groups)成員關系擁有同一個架構。
2. 刪除資料庫用戶變得極為簡單。
3. 共享預設架構使得開發人員可以為特定的應用程序創建特定的架構來存放對象,這比僅使用管理員架構(DBO schema)要好。
4. 在架構和架構所包含的對象上設置許可權(permissions)比以前的版本擁有更高的可管理性。
5. 區分不同業務處理需要的對象,例如,我們可以把公共的表設置成pub的架構,把銷售相關的設置為sales,這樣管理和訪問起來更容易.