--SQLServer:一、操作步驟首先進(jìn)入數(shù)據(jù)庫(kù)級(jí)別的【安全性】-【登錄名】-【新建登錄名】(圖1:新建登錄名)2.在【常規(guī)】選項(xiàng)卡中,如下圖所示,創(chuàng)建登陸名,并設(shè)置默認(rèn)的數(shù)據(jù)庫(kù)。(圖2:設(shè)置選項(xiàng))3.在【用戶映射】選項(xiàng)卡中,如下圖所示,勾選需要設(shè)置的數(shù)據(jù)庫(kù),并設(shè)置【架構(gòu)】,點(diǎn)擊【確認(rèn)】按鈕,完成創(chuàng)建用戶的操作(圖3:選擇對(duì)應(yīng)數(shù)據(jù)庫(kù))4.現(xiàn)在我們就可以對(duì)TestLog數(shù)據(jù)庫(kù)中的User表進(jìn)行權(quán)限的設(shè)置了,【表】-【屬性】(圖4:選擇對(duì)應(yīng)表)5.在【權(quán)限】選項(xiàng)卡中,如下圖所示,依此點(diǎn)擊【添加】-【瀏覽】-【選擇對(duì)象】(圖5:設(shè)置訪問表的用戶)6.在上面點(diǎn)擊【確認(rèn)】后,我們就可以下面的列表中找到對(duì)應(yīng)的權(quán)限,如果你還想細(xì)化到列的權(quán)限的話,右下角還有一個(gè)【列權(quán)限】的按鈕可以進(jìn)行設(shè)置,點(diǎn)擊【確認(rèn)】按鈕就完成了這些權(quán)限的設(shè)置了(圖6:權(quán)限列表)7.現(xiàn)在就使用TestUser用戶登陸數(shù)據(jù)庫(kù)了,登陸后如下圖所示,現(xiàn)在只能看到一個(gè)表了(圖7:效果)二、注意事項(xiàng)在上面的第3步驟中需要注意:如果這里沒有選擇對(duì)應(yīng)的數(shù)據(jù)庫(kù)的話,之后去TestLog數(shù)據(jù)庫(kù)中是找不到TestUser。(圖8:找不到TestUser用戶)2.在上面的第3步驟,設(shè)置完TestLog數(shù)據(jù)后,需要點(diǎn)擊【確認(rèn)】按鈕,完成創(chuàng)建用戶操作,如果這個(gè)時(shí)候去設(shè)置【安全對(duì)象】,是無法在【添加】-【特定對(duì)象】-【對(duì)象類型】-【登陸名】-【瀏覽】中找到剛剛新建的TestUser用戶的。3.其實(shí)在數(shù)據(jù)庫(kù)級(jí)別的【安全性】創(chuàng)建的用戶是屬于全局的,當(dāng)設(shè)置了某個(gè)數(shù)據(jù)庫(kù),比如TestLog之后,這個(gè)用戶就會(huì)出現(xiàn)在這個(gè)數(shù)據(jù)庫(kù)的【安全性】列表中。如果刪除TestLog這個(gè)用戶,會(huì)出現(xiàn)下面的提示。刪除了后,這個(gè)用戶就無法登陸了。需要去對(duì)應(yīng)的數(shù)據(jù)庫(kù)中刪除用戶,如果沒有刪除又創(chuàng)建,是會(huì)報(bào)錯(cuò)的。(圖9:刪除TestUser用戶)4.在第6步的【顯式權(quán)限】列表中,如果選擇了【Control】這個(gè)選項(xiàng),那么在【Select】中設(shè)置查詢【列權(quán)限】就沒有意義了,查詢就不會(huì)受限制了。如果設(shè)置【列權(quán)限】,在正常情況下會(huì)顯示下圖的報(bào)錯(cuò)信息:(圖10:效果)5.在TestLog數(shù)據(jù)庫(kù)的【安全性】-【TestUser】-【屬性】-【安全對(duì)象】-【添加】-【對(duì)象類型】這里有關(guān)于數(shù)據(jù)庫(kù)級(jí)別的一些對(duì)象類型可以設(shè)置。(圖11:其它對(duì)象類型)
為達(dá)茂旗等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及達(dá)茂旗網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、達(dá)茂旗網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
使用 inserted 和 deleted 表
觸發(fā)器語(yǔ)句中使用了兩種特殊的表:deleted 表和 inserted 表。Microsoft? SQL Server? 2000 自動(dòng)創(chuàng)建和管理這些表。可以使用這兩個(gè)臨時(shí)的駐留內(nèi)存的表測(cè)試某些數(shù)據(jù)修改的效果及設(shè)置觸發(fā)器操作的條件;然而,不能直接對(duì)表中的數(shù)據(jù)進(jìn)行更改。
inserted 和 deleted 表主要用于觸發(fā)器中:
擴(kuò)展表間引用完整性。
在以視圖為基礎(chǔ)的基表中插入或更新數(shù)據(jù)。
檢查錯(cuò)誤并基于錯(cuò)誤采取行動(dòng)。
找到數(shù)據(jù)修改前后表狀態(tài)的差異,并基于此差異采取行動(dòng)。
Deleted 表用于存儲(chǔ) DELETE 和 UPDATE 語(yǔ)句所影響的行的復(fù)本。在執(zhí)行 DELETE 或 UPDATE 語(yǔ)句時(shí),行從觸發(fā)器表中刪除,并傳輸?shù)?deleted 表中。Deleted 表和觸發(fā)器表通常沒有相同的行。
Inserted 表用于存儲(chǔ) INSERT 和 UPDATE 語(yǔ)句所影響的行的副本。在一個(gè)插入或更新事務(wù)處理中,新建行被同時(shí)添加到 inserted 表和觸發(fā)器表中。Inserted 表中的行是觸發(fā)器表中新行的副本。
更新事務(wù)類似于在刪除之后執(zhí)行插入;首先舊行被復(fù)制到 deleted 表中,然后新行被復(fù)制到觸發(fā)器表和 inserted 表中。
在設(shè)置觸發(fā)器條件時(shí),應(yīng)當(dāng)為引發(fā)觸發(fā)器的操作恰當(dāng)使用 inserted 和 deleted 表。雖然在測(cè)試 INSERT 時(shí)引用 deleted 表或在測(cè)試 DELETE 時(shí)引用 inserted 表不會(huì)引起任何錯(cuò)誤,但是在這種情形下這些觸發(fā)器測(cè)試表中不會(huì)包含任何行。
說明 如果觸發(fā)器操作取決于一個(gè)數(shù)據(jù)修改所影響的行數(shù),應(yīng)該為多行數(shù)據(jù)修改(基于 SELECT 語(yǔ)句的 INSERT、DELETE 或 UPDATE)使用測(cè)試(如檢查 @@ROWCOUNT),然后采取相應(yīng)的對(duì)策。
SQL Server? 2000 不允許 AFTER 觸發(fā)器引用 inserted 和 deleted 表中的 text、ntext 或 image 列;然而,允許 INSTEAD OF 觸發(fā)器引用這些列。有關(guān)更多信息,請(qǐng)參見 CREATE TRIGGER。
在 INSTEAD OF 觸發(fā)器中使用 inserted 和 deleted 表
傳遞到在表上定義的 INSTEAD OF 觸發(fā)器的 inserted 和 deleted 表遵從與傳遞到 AFTER 觸發(fā)器的 inserted 和 deleted 表相同的規(guī)則。inserted 和 deleted 表的格式與在其上定義 INSTEAD OF 觸發(fā)器的表的格式相同。inserted 和 deleted 表中的每一列都直接映射到基表中的列。
有關(guān)引用帶 INSTEAD OF 觸發(fā)器的表的 INSERT 或 UPDATE 語(yǔ)句何時(shí)必須提供列值的規(guī)則與表沒有 INSTEAD OF 觸發(fā)器時(shí)相同:
不能為計(jì)算列或具有 timestamp 數(shù)據(jù)類型的列指定值。
不能為具有 IDENTITY 屬性的列指定值,除非該列的 IDENTITY_INSERT 為 ON。當(dāng) IDENTITY_INSERT 為 ON 時(shí),INSERT 語(yǔ)句必須提供一個(gè)值。
INSERT 語(yǔ)句必須為所有無 DEFAULT 約束的 NOT NULL 列提供值。
對(duì)于除計(jì)算列、標(biāo)識(shí)列或 timestamp 列以外的任何列,任何允許空值的列或具有 DEFAULT 定義的 NOT NULL 列的值都是可選的。
當(dāng) INSERT、UPDATE 或 DELETE 語(yǔ)句引用具有 INSTEAD OF 觸發(fā)器的視圖時(shí),數(shù)據(jù)庫(kù)引擎將調(diào)用該觸發(fā)器,而不是對(duì)任何表采取任何直接操作。即使為視圖生成的 inserted 和 deleted 表中的信息格式與基表中的數(shù)據(jù)格式不同,該觸發(fā)器在生成執(zhí)行基表中的請(qǐng)求操作所需的任何語(yǔ)句時(shí),仍必須使用 inserted 和 deleted 表中的信息。
傳遞到在視圖上定義的 INSTEAD OF 觸發(fā)器的 inserted 和 deleted 表格式與為該視圖定義的 SELECT 語(yǔ)句的選擇列表相匹配。例如:
CREATE VIEW EmployeeNames (EmployeeID, LName, FName)
AS
SELECT EmployeeID, LastName, FirstName
FROM Northwind.dbo.Employees
視圖的結(jié)果集有三列:一個(gè) int 列和兩個(gè) nvarchar 列。傳遞到在視圖上定義的 INSTEAD OF 觸發(fā)器的 inserted 和 deleted 表也具有名為 EmployeeID 的 int 列、名為 LName 的 nvarchar 列和名為 FName 的 nvarchar 列。
視圖的選擇列表還包含不直接映射到單個(gè)基表列的表達(dá)式。一些視圖表達(dá)式(如常量調(diào)用或函數(shù)調(diào)用)可能不引用任何列,這類表達(dá)式會(huì)被忽略。復(fù)雜的表達(dá)式會(huì)引用多列,但在 inserted 和 deleted 表中,每個(gè)插入的行僅有一個(gè)值。如果視圖中的簡(jiǎn)單表達(dá)式引用具有復(fù)雜表達(dá)式的計(jì)算列,則這些簡(jiǎn)單表達(dá)式也有同樣的問題。視圖上的 INSTEAD OF 觸發(fā)器必須處理這些類型的表達(dá)式。
這個(gè)問題你可以考慮變通一下
能否在服務(wù)器端運(yùn)行一段腳本
利用計(jì)時(shí)器不斷把當(dāng)前系統(tǒng)時(shí)間寫入到某個(gè)特定的表
客戶端插入數(shù)據(jù)時(shí),不利用date獲取時(shí)間
而是直接讀取該表中的時(shí)間
理論上應(yīng)該可行。
Transact-SQL參考sp_adduser為當(dāng)前數(shù)據(jù)庫(kù)中的新用戶添加安全帳戶。包括此過程是為了向后兼容。請(qǐng)使用sp_grantdbaccess。 語(yǔ)法sp_adduser[@loginame=]'login' [,[@name_in_db=]'user'] [,[@grpname=]'group']參數(shù)[@loginame=]'login' 用戶的登錄名稱。login的數(shù)據(jù)類型是sysname,沒有默認(rèn)值。login必須是現(xiàn)有Microsoft?SQLServer?登錄或MicrosoftWindowsNT?用戶。 [@name_in_db=]'user' 新用戶的名稱。user的數(shù)據(jù)類型為sysname,其默認(rèn)值為NULL。如果沒有指定user,則用戶的名稱默認(rèn)為login名稱。指定user即為新用戶在數(shù)據(jù)庫(kù)中給予一個(gè)不同于SQLServer上的登錄ID的名稱。 [@grpname=]'group' 組或角色,新用戶自動(dòng)地成為其成員。group的數(shù)據(jù)類型為sysname,默認(rèn)值為NULL。group必須是當(dāng)前數(shù)據(jù)庫(kù)中有效的組或角色。MicrosoftSQLServer7.0使用角色而不是組。 返回代碼值0(成功)或1(失敗)注釋SQLServer用戶名可以包含1到128個(gè)字符,包括字母、符號(hào)和數(shù)字。但是,用戶名不能: 含有反斜線符號(hào)(/)。 為NULL,或?yàn)榭兆址?'')。 在添加完用戶之后,可以使用GRANT、DENY和REVOKE語(yǔ)句來定義權(quán)限,這些權(quán)限控制著用戶進(jìn)行的活動(dòng)。 使用sp_helplogin可顯示有效登錄名的列表。 使用sp_helprole可顯示有效角色名的列表。當(dāng)指定一個(gè)角色時(shí),用戶會(huì)自動(dòng)地獲得為該角色定義的那些權(quán)限。如果沒有指定角色,則用戶獲得的權(quán)限將是授予默認(rèn)public角色的權(quán)限。若要將用戶添加到角色,必須提供username的值(username可與login_id相同)。 為了訪問數(shù)據(jù)庫(kù),必須使用sp_adduser或sp_grantdbaccess對(duì)登錄授予訪問權(quán),或者數(shù)據(jù)庫(kù)中必須存在guest安全帳戶。 不能在用戶定義的事務(wù)內(nèi)執(zhí)行sp_adduser。 權(quán)限只有sysadmin固定服務(wù)器角色的dbo和成員才能執(zhí)行sp_adduser。 示例 A.添加用戶下面的示例使用現(xiàn)有的登錄Victoria,將用戶Victoria添加到當(dāng)前數(shù)據(jù)庫(kù)中現(xiàn)有的fort_mudge角色中。 EXECsp_adduser'Victoria','Victoria','fort_mudge' B.添加用戶名(使用相同的登錄ID) EXECsp_adduser'Margaret' C.添加用戶(使用不同的用戶名) EXECsp_adduser'Haroldq','Harold','fort_mudge' sp_adduser[@loginame=]'login'
本文名稱:sqlserver新建行,新建sql server注冊(cè)
網(wǎng)頁(yè)鏈接:http://m.kartarina.com/article24/hdopce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站收錄、面包屑導(dǎo)航、網(wǎng)站策劃、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)