欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Asp在SQL SER2k中新建帐号和给帐号权限的实现

程序员文章站 2024-01-30 11:42:22
’ 以下为在中增加一个sql server2000用户函数,并为建立一个,给他dbo的权限  ’ ****************注意:sql server的验证方式不要...

’ 以下为在中增加一个sql server2000用户函数,并为建立一个,给他dbo的权限 
’ ****************注意:sql server的验证方式不要选仅为windows方式, 
’ **************** 允许远程sql server连接 
’ ****************该函数已通过测试**************************** 
’ 有什么问题欢迎和我交流,以后会推出对sql server的一些管理操作程序 

’ 参数:strloginname:新增登录名,strpwd:登录名的密码,strdbname:新建数据库名 
’ 函数内局部变量说明:strserver:服务器所在机器名(本机为local),struid:sql管理员, 
’ strsapwd:sql管理员密码。以上三个变量应根据你的情况设置 
’ 该函数主要调用存储过程来实现的 
’ 注意:本函数没有容错处理,如出现错误,可以确定是你的sql server设置有问题,或已存在该login帐号或该数据库 
’ call addusertomssql("testlogin","iamhere","db_test") 
sub addusertomssql(strloginname,strpwd,strdbname) 
’定义服务器变量和系统管理员登录信息,根据具体情况修改 
dim strserver,struid,strsapwd 
strserver="(local)" 
struid="sa" 
strsapwd="" 
dim conn ’数据库连接 
dim strdsn ’数据库连接字符串 
dim strcmd ’命令字符串 
strdsn="driver={sql server};server="&strserver&";uid="&struid&";pwd="&strsapwd&";database=master" 
’建立和数据库master的连接 
set conn = server.createobject("adodb.connection") 
conn.open strdsn 
’新建一数据库 
strcmd="create database "&strdbname 
conn.execute(strcmd) 
’新建一登录帐号 
strcmd="sp_addlogin ’"&strloginname&"’,’"&strpwd&"’,’"&strdbname&"’" 
conn.execute(strcmd) 
conn.close 
’建立与新建数据库的连接,并赋给新登录帐号访问新建数据库的权利 
strdsn="driver={sql server}; server="&strserver&";uid="&struid&";pwd="&stsarpwd&";database="&strdbname 
strcmd="sp_grantdbaccess ’"&strloginname&"’" 
conn.open strdsn 
conn.execute(strcmd) 
’使新登录帐号成为新建数据库的拥有者 
strcmd="sp_addrolemember ’db_owner’,’"&strloginname&"’" 
conn.execute(strcmd) 
’关闭释放连接 
conn.close 
set conn=nothing 
response.write "用户 "&strloginname&" 成功建立!,并且已为他建立了一个数据库 "&strdbname&"!" 
end sub