asp在SQL SER2k中新建帳號與給帳號權(quán)限的完成
發(fā)表時間:2023-08-14 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]' 以下為在asp中增加一個sql server2000用戶函數(shù),并為建立一個數(shù)據(jù)庫,給他dbo的權(quán)限 ' ****************注意:sql server的驗證方式不要選...
' 以下為在asp中增加一個sql server2000用戶函數(shù),并為建立一個數(shù)據(jù)庫,給他dbo的權(quán)限
' ****************注意:sql server的驗證方式不要選僅為windows方式,
' **************** 允許遠(yuǎn)程sql server連接
' ****************該函數(shù)已通過測試****************************
' 有什么問題歡迎和我交流,以后會推出對sql server的一些管理操作程序
' 參數(shù):StrLoginName:新增登錄名,StrPwd:登錄名的密碼,StrDBName:新建數(shù)據(jù)庫名
' 函數(shù)內(nèi)局部變量說明:StrServer:服務(wù)器所在機(jī)器名(本機(jī)為local),StrUid:sql管理員,
' StrSaPwd:sql管理員密碼。以上三個變量應(yīng)根據(jù)你的情況設(shè)置
' 該函數(shù)主要調(diào)用系統(tǒng)存儲過程來實現(xiàn)的
' 注意:本函數(shù)沒有容錯處理,如出現(xiàn)錯誤,可以確定是你的sql server設(shè)置有問題,或已存在該login帳號或該數(shù)據(jù)庫
' call AddUserToMSSQL("testlogin","iamhere","db_test")
Sub AddUserToMSSQL(StrLoginName,StrPwd,StrDBName)
'定義服務(wù)器變量和系統(tǒng)管理員登錄信息,根據(jù)具體情況修改
Dim StrServer,StrUid,StrSaPwd
StrServer="(local)"
StrUid="sa"
StrSaPwd=""
Dim Conn '數(shù)據(jù)庫連接
Dim StrDSN '數(shù)據(jù)庫連接字符串
Dim StrCmd '命令字符串
StrDSN="driver={SQL server};server="&StrServer&";uid="&StrUid&";pwd="&StrSaPwd&";database=master"
'建立和數(shù)據(jù)庫master的連接
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open StrDSN
'新建一數(shù)據(jù)庫
StrCmd="CREATE DATABASE "&StrDBName
Conn.execute(StrCmd)
'新建一登錄帳號
StrCmd="sp_addlogin '"&StrLoginName&"','"&StrPwd&"','"&StrDBName&"'"
Conn.execute(StrCmd)
Conn.Close
'建立與新建數(shù)據(jù)庫的連接,并賦給新登錄帳號訪問新建數(shù)據(jù)庫的權(quán)利
StrDSN="driver={SQL server}; server="&StrServer&";uid="&StrUid&";pwd="&StSarPwd&";database="&StrDBName
StrCmd="sp_grantdbaccess '"&StrLoginName&"'"
Conn.Open StrDSN
Conn.execute(StrCmd)
'使新登錄帳號成為新建數(shù)據(jù)庫的擁有者
StrCmd="sp_addrolemember 'db_owner','"&StrLoginName&"'"
Conn.execute(StrCmd)
'關(guān)閉釋放連接
Conn.Close
Set Conn=Nothing
Response.Write "用戶 "&StrLoginName&" 成功建立!,并且已為他建立了一個數(shù)據(jù)庫 "&StrDBName&"!"
End Sub