我创建了4个需要相互关联的表,然后构建了一个表单来添加/显示数据。
我已经在SQL中建立了4个表,但是不确定是否输入了正确的关系或字段,以便可以正确访问数据
User Table
User_ID (Pkey)
Full_Name (varchar)
User_Name (varchar)
Department Table
Dept_ID (Pkey)
Department_Name (varchar)
User_ID (int)
Application Table
App_ID (Pkey)
Application_Name (varchar)
User_ID (int)
Access_Date Table
Date_ID (Pkey)
Access_Date (date)
Removal_Date (date)
User_ID (int)
我希望看到一个有权访问一个或多个应用程序的用户,以及他们获得访问的日期以及访问被删除的日期。
一个用户可以有多个应用程序,并且可以在多个部门中。
我认为我在ID (int)
或Access_Date
表中有错误的Application
字段,但不确定。
当我在MS Access 2016中打开表单时,现在为UserDepartment, UserApplications, UserAccessDates
添加了联结表,我得到一个空白页。表单是使用“用户”表为主,部门和应用程序以及访问日期为子表单创建的。
我认为我的恋情可能有误。
答案 0 :(得分:2)
否,您没有正确的表格。让我给您一个有关用户和部门的示例。您需要三个表:
Users Table
User_ID (Pkey)
Full_Name (varchar)
User_Name (varchar)
Departments Table
Department_ID (Pkey)
Department_Name (varchar)
UserDepartments
User_ID (int)
Department_ID (int)
Other information, such as Effective_Date and End_Date
前两个表代表两个不同的实体Users
和Departments
。第三个是实现多对多关系的关联/连接表。
类似地,您需要一个UserApplications
表。您的访问表应显示该应用程序。
有关命名的注意事项:
_id
或Id
。答案 1 :(得分:0)
根据您提供的内容,您将能够确定用户有权访问某个应用程序,但不能确定他有权访问哪个应用程序。要提供该信息,您将需要在Access_Date表中添加App_Id。除用户外,部门与其他任何事物都不相关。如果部门与Application或Access_Date有关,则需要将部门链接到Application和Access_date表。
我添加了一张图片,显示了表之间的关系,直到我理解为止(使用ms访问)。Relationships
这是新图片。New Relationships