ASP在SQLServer2k中新建帐号和权限


' 以下为在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&"!"
本文作者:' 以下为在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&"!"
本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3