3

我正在 Microsoft Access 2013 中构建一个使用 MySQL 作为后端的系统。我想要一个表单,其中当前登录到 MySQL 数据库的用户的用户名是输入字段的默认值。我尝试使用 CurrentUser() 函数来执行此操作,但这似乎总是返回“Admin”。

所以我想这里真的有两个问题:

  1. 有没有办法从 Access 2013 中访问登录到 MySQL 服务器的用户的用户名?

  2. 如果不是,我如何控制 CurrentUser() 的用户名?在这个系统中,我能够区分系统的不同用户并且不是每个人都简单地显示为“管理员”,这一点非常重要。

可能有更好的方法来完成我的要求,我什至不知道要问的正确问题,如果是这样,请告诉我。

谢谢!

4

1 回答 1

2

在使用 ODBC 连接到 MySQL 的 Access 中创建一个“直通”查询,并询问 MySQL 当前用户的名称。

SELECT CURRENT_USER();

该查询将在服务器上按原样执行(意味着不涉及 Access db 引擎),然后查询的结果在 Access 中可用。

VBACurrentUser()函数检索访问安全帐户名称。除非您使用 ULS(用户级安全),它仅适用于较旧的 MDB 数据库格式,否则安全帐户将始终为"Admin"。所以它通常不是很有用,而且对于你在这里需要的东西绝对没有用处。

于 2013-08-30T14:48:33.300 回答