以下为在asp中增加一个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
