问两个平常少遇到的问题,有兴趣的人进

jonas401 2006-03-07 05:22:22
平台:SqlServer 2000

问题1: 查询出当前登陆用户所能访问的数据库

(不知道这个问题是不是属于sqlserver的)
问题2: 外部应用程序通过ado连接数据库时,在不指定具体数据库的情况下,怎么判断提供的连接字符串中的验证方式(用户/密码或者window信任验证)是否可以登陆到SqlServer
...全文
101 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
chb5210 2006-03-08

以前遇到过,没有解决,学习
回复
jonas401 2006-03-08
我现在想做的功能是,外部程序通过输入的验证方式(帐号/密码或者window登陆验证)来列出这次登陆所能访问的数据库.这么说来,如果这次登陆没有访问master数据库权限的话,是没法达到目的了
回复
xeqtr1982 2006-03-07
学习:)
回复
lsqkeke 2006-03-07
学习 :)
回复
zjcxc 2006-03-07
问题2...


不登录的话, 当然确定不了能否登录数据库, 因为验证是在服务器端完成的, 不登录服务器无法验证.

如果已经提交验证到服务器了, 则服务器自己会验证, 不用你去检查.
回复
zjcxc 2006-03-07
HAS_DBACCESS
返回信息,说明用户是否可以访问指定的数据库。

语法
HAS_DBACCESS ( 'database_name' )

参数
database_name

数据库的名称,用户想获取有关该数据库的访问信息。database_name 的数据类型为 sysname。

返回类型
int

注释
如果用户可以访问该数据库,那么 HAS_DBACCESS 返回 1。如果用户不能访问该数据库,那么它返回 0。如果该数据库名无效,则返回 NULL。

回复
zjcxc 2006-03-07
SELECT name FROM master.dbo.sysdatabases
WHERE HAS_DBACCESS(name) = 1
回复
-狙击手- 2006-03-07
2\ master..sp_helpuser 查询这个结果集中是否有用户信息
回复
zlp321002 2006-03-07
--分析 sp_who2 存储过程
回复
-狙击手- 2006-03-07
2、那就连接master库试试
回复
-狙击手- 2006-03-07
1、master..sp_helplogins
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-03-07 05:22
社区公告
暂无公告