我有一个 MS Access 前端,其中的表链接到 SQL Server。我使用文件 DSN 链接表,打开 Access 数据库后,用户必须输入 SQL 服务器用户 ID 和密码。
有没有办法从已建立的 ODBC 连接中提取该用户 ID(而不是密码),例如将其用于显示和审核目的?
我有一个 MS Access 前端,其中的表链接到 SQL Server。我使用文件 DSN 链接表,打开 Access 数据库后,用户必须输入 SQL 服务器用户 ID 和密码。
有没有办法从已建立的 ODBC 连接中提取该用户 ID(而不是密码),例如将其用于显示和审核目的?
是的,您可以在 Access 中创建一个直通查询,只需以下语句...
SELECT CURRENT_USER
...然后在该查询的属性表中单击旁边的省略号按钮ODBC Connect Str
并选择您的文件 DSN。(当询问您是否要将密码保存在连接字符串中时,请说“否”。)
然后保存 Pass-Through 查询(我称为“getCurrentSqlUser”)并运行它以获取 SQL 服务器上当前用户的名称。
(注意:在测试时,我以身份登录sa
并发现查询返回dbo
。我认为这是因为我以sysadmin
服务器角色的成员身份登录。)