最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Sql Server中的用戶名和登錄名

 更新時(shí)間:2014年01月12日 11:09:39   投稿:zxhpj  
Sql Server中的用戶名和登錄名或服務(wù)器賬號(hào)搞迷糊,雖然用sa(登錄名)就搞定一切東西了,當(dāng)然這會(huì)存在一些安全隱患

登錄名
服務(wù)器方的一個(gè)實(shí)體,使用一個(gè)登錄名只能進(jìn)入服務(wù)器,但是不能讓用戶訪問(wèn)服務(wù)器中的數(shù)據(jù)庫(kù)資源。每個(gè)登錄名的定義存放在 master 數(shù)據(jù)庫(kù)的 syslogins 表中

用戶名
一個(gè)或多個(gè)登錄對(duì)象在數(shù)據(jù)庫(kù)中的映射,可以對(duì)用戶對(duì)象進(jìn)行授權(quán),以便為登錄對(duì)象提供對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限。用戶定義信息存放在每個(gè)數(shù)據(jù)庫(kù)的 sysusers 表中。

SQLSERVER把登錄名與用戶名的關(guān)系稱為映射。
用登錄名登錄SQLSERVER后,在訪問(wèn)各個(gè)數(shù)據(jù)庫(kù)時(shí),SQLSERVER會(huì)自動(dòng)查詢此數(shù)據(jù)庫(kù)中是否存在與此登錄名關(guān)聯(lián)的用戶名,若存在就使用此用戶的權(quán)限訪問(wèn)此數(shù)據(jù)庫(kù),若不存在就是用guest用戶訪問(wèn)此數(shù)據(jù)庫(kù)(guest是一個(gè)特殊的用戶名,后面會(huì)講到)。

一個(gè)登錄名可以被授權(quán)訪問(wèn)多個(gè)數(shù)據(jù)庫(kù),但一個(gè)登錄名在每個(gè)數(shù)據(jù)庫(kù)中只能映射一次。即一個(gè)登錄可對(duì)應(yīng)多個(gè)用戶,一個(gè)用戶也可以被多個(gè)登錄使用。好比SQLSERVER就象一棟大樓,里面的每個(gè)房間都是一個(gè)數(shù)據(jù)庫(kù).登錄名只是進(jìn)入大樓的鑰匙,而用戶名則是進(jìn)入房間的鑰匙.一個(gè)登錄名可以有多個(gè)房間的鑰匙,但一個(gè)登錄名在一個(gè)房間只能擁有此房間的一把鑰匙。

鏈接或登錄Sql Server服務(wù)器時(shí)是用的登錄名而非用戶名登錄的,程序里面的鏈接字符串中的用戶名也是指登錄名。
SQLSERVER中有幾個(gè)特殊的登錄名和用戶名:

我們常見(jiàn)的dbo(用戶名)是指  以sa(登錄名)或windows   administration(Windows集成驗(yàn)證登錄方式)登錄的用戶,也就是說(shuō)數(shù)據(jù)庫(kù)管理員在SQLSERVER中的用戶名就叫dbo,而不叫 sa,這一點(diǎn)看起來(lái)有點(diǎn)蹊蹺,因?yàn)橥ǔS脩裘c登錄名相同(不是強(qiáng)制相同,但為了一目了然通常都在創(chuàng)建用戶名時(shí)使用與登錄名相同的名字),

例如創(chuàng)建了一個(gè)登錄名稱為me,那么可以為該登錄名me在指定的數(shù)據(jù)庫(kù)中添加一個(gè)同名用戶,使登錄名me能夠訪問(wèn)該數(shù)據(jù)庫(kù)中的數(shù)據(jù).當(dāng)在數(shù)據(jù)庫(kù)中添加了一個(gè)用戶me 后,之后以me登錄名登錄時(shí)在該數(shù)據(jù)庫(kù)中創(chuàng)建的一切對(duì)象(表,函數(shù),存儲(chǔ)過(guò)程等)的所有者都為me,如me.table1,me.fn_test(),而不是dbo.table1,dbo.fn_test().

SQL Server中還有一個(gè)特殊的數(shù)據(jù)庫(kù)角色public,它存在于每一個(gè)數(shù)據(jù)庫(kù)中,包括系統(tǒng)數(shù)據(jù)庫(kù),如master、msdb、model和用戶數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)的所有用戶都屬于public角色,并且不能從public角色中刪除。

在SQLSERVER數(shù)據(jù)庫(kù)中,guest帳戶是特殊的用戶帳戶。如果用戶使用USE database語(yǔ)句訪問(wèn)的數(shù)據(jù)庫(kù)中沒(méi)有與此用戶關(guān)聯(lián)的帳戶,此用戶就與guest用戶相關(guān)聯(lián)。 

另外SQLSERVER采取登錄名-用戶名的安全規(guī)則,和Oracle里面的schema有點(diǎn)像。SQLSERVER使用所有者進(jìn)行限定(類似于Oracle中的schema),是因?yàn)椴煌挠脩艨赡軇?chuàng)建同名的對(duì)象,  例如登錄名me和登錄名you在pubs數(shù)據(jù)庫(kù)中分別創(chuàng)建了用戶名me和you,這二個(gè)用戶都創(chuàng)建了testtable這個(gè)同名表,而這二個(gè)表雖然同名但結(jié)構(gòu)或數(shù)據(jù)可能完全不同,為了避免調(diào)用錯(cuò)誤,必須使用所有者名稱進(jìn)行限定.

如何來(lái)調(diào)用別的用戶創(chuàng)建的對(duì)象呢?  例如me用戶訪問(wèn)you用戶創(chuàng)建的表或訪問(wèn)dbo創(chuàng)建的表. 此種情況,必須同時(shí)滿足二個(gè)條件: 

1. 將me用戶的數(shù)據(jù)庫(kù)角色設(shè)置為db_owner,否則無(wú)法訪問(wèn)其他用戶(包括dbo用戶)創(chuàng)建的對(duì)象.(企業(yè)管理器-> 用戶,右鍵菜單 <屬性> 中設(shè)置)  :

2. 使用所有者進(jìn)行限定. 
例如用戶me訪問(wèn)用戶you創(chuàng)建的testtable: 
select   *   from   you.testtable 
另外, dbo用戶作為管理員,系統(tǒng)賦予其所有的權(quán)限,可以調(diào)用任何用戶創(chuàng)建的對(duì)象. 
若某個(gè)數(shù)據(jù)庫(kù)存在2個(gè)或2個(gè)以上的用戶名,如果具有db_owner角色的用戶在訪問(wèn)對(duì)象時(shí)省略了所有者,則系統(tǒng)先查找該用戶的對(duì)象,若找不到則查找dbo用戶是否有同名對(duì)象.例如: 
select   *   from   testtable     或 
select   *   from   pubs..testtable

相關(guān)文章

  • SQLServer中排查死鎖及死鎖問(wèn)題解決

    SQLServer中排查死鎖及死鎖問(wèn)題解決

    在并發(fā)訪問(wèn)數(shù)據(jù)庫(kù)的環(huán)境中,死鎖是一個(gè)常見(jiàn)的問(wèn)題,本文主要介紹了SQLServer中排查死鎖及死鎖問(wèn)題解決,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • MSSQL優(yōu)化之探索MSSQL執(zhí)行計(jì)劃(轉(zhuǎn))

    MSSQL優(yōu)化之探索MSSQL執(zhí)行計(jì)劃(轉(zhuǎn))

    最近總想整理下對(duì)MSSQL的一些理解與感悟,卻一直沒(méi)有心思和時(shí)間寫,晚上無(wú)事便寫了一篇探索MSSQL執(zhí)行計(jì)劃,本文講執(zhí)行計(jì)劃但不僅限于講執(zhí)行計(jì)劃
    2011-10-10
  • sql查詢結(jié)果列拼接成逗號(hào)分隔的字符串方法

    sql查詢結(jié)果列拼接成逗號(hào)分隔的字符串方法

    SQL查詢時(shí)會(huì)經(jīng)常需要,把查詢的結(jié)果拼接成一個(gè)字符串。那么怎么直接把sql查詢結(jié)果列拼接成逗號(hào)分隔的字符串方法,下面就一起來(lái)了解一下
    2021-05-05
  • Sql Server 分組統(tǒng)計(jì)并合計(jì)總數(shù)及WITH ROLLUP應(yīng)用

    Sql Server 分組統(tǒng)計(jì)并合計(jì)總數(shù)及WITH ROLLUP應(yīng)用

    WITH ROLLUP 在生成包含小計(jì)和合計(jì)的報(bào)表時(shí),ROLLUP 運(yùn)算符很有用,ROLLUP 運(yùn)算符生成的結(jié)果集類似于 CUBE 運(yùn)算符所生成的結(jié)果集,接下來(lái)介紹Sql Server 分組統(tǒng)計(jì)并合計(jì)總數(shù)實(shí)現(xiàn)代碼,感興趣的朋友可以了解下哦
    2013-01-01
  • 沒(méi)有sa密碼無(wú)法集成windows身份驗(yàn)證登錄的解決方法

    沒(méi)有sa密碼無(wú)法集成windows身份驗(yàn)證登錄的解決方法

    以前都是通過(guò)windows集成身份驗(yàn)證登錄進(jìn)去的(sa密碼早忘記了),今天就改了服務(wù)器的機(jī)器名,現(xiàn)在無(wú)論如何都登錄不進(jìn)去,下面是解決方法
    2014-01-01
  • mssql server .ldf和.mdf的文件附加數(shù)據(jù)庫(kù)的sql語(yǔ)句

    mssql server .ldf和.mdf的文件附加數(shù)據(jù)庫(kù)的sql語(yǔ)句

    mssql server .ldf和.mdf的文件附加數(shù)據(jù)庫(kù)的sql語(yǔ)句...
    2007-07-07
  • SQL?Server日志清理3種實(shí)現(xiàn)方式

    SQL?Server日志清理3種實(shí)現(xiàn)方式

    這篇文章主要給大家介紹了關(guān)于SQL?Server日志清理3種實(shí)現(xiàn)方式的相關(guān)資料,在數(shù)據(jù)庫(kù)使用很久后日志文件會(huì)累計(jì)的越來(lái)越大,如果硬盤空間不足可能會(huì)導(dǎo)致宕機(jī),需要的朋友可以參考下
    2023-09-09
  • sql?server如何去除數(shù)據(jù)中的一些無(wú)用的空格

    sql?server如何去除數(shù)據(jù)中的一些無(wú)用的空格

    這篇文章主要介紹了sql?server去除數(shù)據(jù)中的一些無(wú)用的空格,本文給大家提到了一些常用的函數(shù),結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • SQL中EXISTS的用法示例詳解

    SQL中EXISTS的用法示例詳解

    這篇文章主要介紹了SQL中EXISTS的用法,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • 隱藏在SQLServer 字段中的超詭異字符解決過(guò)程

    隱藏在SQLServer 字段中的超詭異字符解決過(guò)程

    這套系統(tǒng)做了大半年,這個(gè)導(dǎo)入導(dǎo)出還是問(wèn)題不斷,我負(fù)責(zé)的這塊導(dǎo)入導(dǎo)出就是夾在網(wǎng)絡(luò)版和單機(jī)版系統(tǒng)之間,只要任何一邊對(duì)數(shù)據(jù)庫(kù)做了改動(dòng)這個(gè)導(dǎo)入導(dǎo)出就會(huì)失敗。哎,煩心的事不止這些,最近又遇到了一個(gè)非常奇怪的問(wèn)題。
    2009-10-10

最新評(píng)論

通城县| 海阳市| 周口市| 沂南县| 舞钢市| 锡林浩特市| 延安市| 镇平县| 榆树市| 竹溪县| 新宾| 汝城县| 教育| 中山市| 曲麻莱县| 颍上县| 龙里县| 甘肃省| 阳城县| 河南省| 怀集县| 类乌齐县| 塔城市| 河东区| 昌江| 射阳县| 张家港市| 四会市| 东光县| 屏边| 和平区| 谷城县| 穆棱市| 双流县| 葵青区| 安康市| 连州市| 安塞县| 甘南县| 新源县| 彩票|