'以下為在asp中增加一個sqlserver2000用戶函數,並為建立一個數據庫,給他dbo的權限'****************注意:sqlserver的驗證方式不要選僅為windows方式,'****************允許遠程sqlserver連接'****************該函數已通過測試****************************'有什麼問題歡迎和我交流,以後會推出對sqlserver的一些管理操作程序
'參數:StrLoginName:新增登錄名,StrPwd:登錄名的密碼,StrDBName:新建數據庫名'函數內局部變量說明:StrServer:服務器所在機器名(本機為local),StrUid:sql管理員,'StrSaPwd:sql管理員密碼。以上三個變量應根據你的情況設置
'該函數主要調用系統存儲過程來實現的
'注意:本函數沒有容錯處理,如出現錯誤,可以確定是你的sqlserver設置有問題,或已存在該login帳號或該數據庫'callAddUserToMSSQL("testlogin","iamhere","db_test")
SubAddUserToMSSQL(StrLoginName,StrPwd,StrDBName)'定義服務器變量和系統管理員登錄信息,根據具體情況修改
DimStrServer,StrUid,StrSaPwdStrServer="(local)"StrUid="sa"StrSaPwd=""DimConn'數據庫連接
DimStrDSN'數據庫連接字符串
DimStrCmd'命令字符串
StrDSN="driver={SQLserver};server="&StrServer&";uid="&StrUid&";pwd="&StrSaPwd&";database=master"'建立和數據庫master的連接setConn=Server.CreateObject("ADODB.Connection")Conn.OpenStrDSN
'新建一數據庫StrCmd="CREATEDATABASE"&StrDBNameConn.execute(StrCmd)'新建一登錄帳號StrCmd="sp_addlogin'"&StrLoginName&"','"&StrPwd&"','"&StrDBName&"'"Conn.execute(StrCmd)Conn.Close
'建立與新建數據庫的連接,並賦給新登錄帳號訪問新建數據庫的權利StrDSN="driver={SQLserver};server="&StrServer&";uid="&StrUid&";
pwd="&StSarPwd&";database="&StrDBNameStrCmd="sp_grantdbaccess'"&StrLoginName&"'"Conn.OpenStrDSNConn.execute(StrCmd)
'使新登錄帳號成為新建數據庫的擁有者StrCmd="sp_addrolemember'db_owner','"&StrLoginName&"'"Conn.execute(StrCmd)'關閉釋放連接Conn.CloseSetConn=NothingResponse.Write"用戶"&StrLoginName&"成功建立!,並且已為他建立了一個數據庫"&StrDBName&"!"EndSub