ASP在SQL Server 2000中新建帐号和权限

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

(0)

相关推荐

  • ASP在SQL Server 2000中新建帐号和权限

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

  • SQL Server 2000中的触发器使用

    下面我摘录了SQL Server官方教程中的一段关于触发器的文字,确实有用的一点文字描述. 可以定义一个无论何时用INSERT语句向表中插入数据时都会执行的触发器. 当触发INSERT触发器时,新的数据行就会被插入到触发器表和inserted表中.inserted表是一个逻辑表,它包含了已经插入的数据行的一个副本.inserted表包含了INSERT语句中已记录的插入动作.inserted表还允许引用由初始化INSERT语句而产生的日志数据.触发器通过检查inserted表来确定是否执行触发器动

  • 利用SQL SERVER建立登录WINDOWS帐号

    那一刻,我的心跳到了嗓子眼. 运行建立帐号命令,OK! 远程登录,输入帐号,密码,OK!终于又进去了! ××××××××××××××××××× 我忽然发现,数据库服务器登录不了了. 提示帐号密码过期.按提示修改,提交,又说我没权限修改密码! CNM,这样来害我.这个帐号属于administrators,原先那个默认的administrator被我停掉了.因此这个帐号是进入系统的唯一通道. 接着发现后果比我想象的要严重更多: 1.硬盘做了RAID5,这样即使拿到硬盘,可能也读不出数据库文件了. 2

  • sql server 2000中禁止创建表(权限设置方法)

    最近帮网站管理服务器的时候,发现一个sqlserver数据库中被创建了D99_CMD .D99_Tmp .D99_REG,网站安全也做了不少了,不知道哪里出的问题,这里先分享下临时解决方法 1.禁止创建数据库表 在要禁止的数据上,例如(jb51net) 右键 >属性 >权限 2.结合macfee禁止创建用户,修改asp php文件等.具体的大家可以参考我们以前的文章. 3.测试能否正常创建表 conn.execute("create table dxytmp(name varchar

  • SQL Server 2000向SQL Server 2008 R2推送数据图文教程

    最近做的一个项目要获取存在于其他服务器的一些数据,为了安全起见,采用由其他"服务器"向我们服务器推送的方式实现.我们服务器使用的是sql server 2008 R2,其他"服务器"使用的都是SQL Server 2000,还都是运行在Windows XP上的,整个过程遇到了一些问题,也参考了一些文档,最终费了好多事才算搞定. [一.配置分发服务器] SQLServer 2000的复制服务包括三个角色:发布服务器.分发服务器和订阅服务器,关系如图1所示. 图1 其中

  • SQL Server 2005 中使用 Try Catch 处理异常

    TRY...CATCH是Sql Server 2005/2008令人印象深刻的新特性.提高了开发人员异常处理能力.没有理由不尝试一下Try.. Catch功能. * TRY 块 - 包含可能产生异常的代码或脚本 * CATCH 块 - 如果TRY块出现异常,代码处理流将被路由到CATCH块.在这里你可以处理异常,记录日志等. Sql Server中的Try Catch和C#,JAVA等语言的处理方式一脉相承.这种一致性才是最大的创新之处. 一.SQL SERVER 2000中异常处理 CREAT

  • SQL Server误区30日谈 第13天 在SQL Server 2000兼容模式下不能使用DMV

    误区 #13.在SQL Server 2000兼容模式下不能使用DMV 错误       对于兼容模式已经存在了很多误解.80的兼容模式的数据库是否意味着能够附加或恢复到SQL Server 2000数据库?当然不是.这只是意味着一些T-SQL的语法,查询计划的行为以及一些其它方面和SQL Server 2000中行为一样(当然,如果你设置成90兼容模式则和SQL Server 2005中一样). 在SQL Server 2008中,你可以使用ALTER DATABASE SET COMPATI

  • 在sqlserver2005中安装sql server 2000的示例数据库northwind的方法

    装完sql server 2005后却没有找到ms的示例数据库northwind 后来查看安装光盘发现sql server 2005种只有adventurework与adventureworkDW这两个sample database 到ms官方站找了好久 才找到sql server 2000的sample database 下载链接如下http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46A0-8DA2-

  • SQL Server 2000 注入防护大全(二)

    SQL Server 2000 注入防护大全(二) 传统查询构造:select * FROM news where id=... AND topic=... AND .....admin'and 1=(select count(*) from [user] where username='victim' and right(left(userpass,01),1)='1') and userpass <>'select 123;--;use master;--:a' or name like

  • SQL Server 2000安全配置详解

    SQL server2000数据库应用非常广泛,一旦出现安全问题,造成的损失往往难以估量!应提前预防,防患于未然.这里,我们主要谈论有关SQL Server2000数据库的安全配置以及一些相关的安全和使用上的问题. 在进行SQL Server 2000数据库的安全配置之前,首先你必须对操作系统进行安全配置,保证你的操作系统处于安全状态.然后对你要使用的操作数据库软件(程序)进行必要的安全审核,比如对ASP.PHP等脚本,这是很多基于数据库的WEB应用常出现的安全隐患,对于脚本主要是一个过滤问题,

随机推荐