当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp在SQL SER2k中新建帐号和给帐号权限的实现

ASP
深入研究“用ASP上载文件”(一)
深入研究“用ASP上载文件”(二)
一个投票系统的源程序(coveryourasp.com)
一 些 ASP 小 源 程 序
用ASP制作个性化的调查板(附源程序)
一些源程序 - 获得文件大小和字符串处理
用ASP创建日志文件(附源程序)
在一个ASP页面停留的多少时间的程序
用VB6做一个简单的文件上传组件(一)
用VB6做一个简单的文件上传组件(二)
构建你的网站新闻自动发布系统之七
实 现 滚 动 新 闻
网上“店铺”DIY(1)
网上“店铺”DIY(2)
网上“店铺”DIY(3)
负载平衡环境下的ASP会话管理(1)
负载平衡环境下的ASP会话管理(2)
FrontPage创建HTML/ASP混合页面Ⅰ
FrontPage创建HTML/ASP混合页面Ⅱ
在ASP应用中验证用户身份(1)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 53 ::
收藏到网摘: n/a

' 以下为在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