【问题标题】:Create a Table(s) with Users and Groups创建包含用户和组的表
【发布时间】:2023-03-29 04:17:01
【问题描述】:

我正在为学校构建一个租赁应用程序。将有三个组可以访问此应用程序。经理、同事和所有者。每个组可能对功能有限制。我的问题是我创建了一个登录表单,我需要将用户(根据他们的组)重定向到另一个表单。我需要创建一个包含用户和组的表,以便在用户输入他们的用户名和密码时能够调用某个组。

我试图创建一个表,但后来我卡住了应该将哪些数据作为外键。

CREATE TABLE Users (
                UserID INT NOT NULL,
                PASSWORD VARCHAR(50),
                PRIMARY KEY(UserID)
                );

CREATE TABLE Groups (
                    GroupID INT,
                    GroupName VARCHAR,
                    PRIMARY KEY(GroupID)
                    );

CREATE TABLE User_Groups (
                        UserID INT,
                        GroupID INT,
                        );

【问题讨论】:

  • 哪个表?

标签: c# sql tsql


【解决方案1】:

如果用户完全属于一个组,并且看起来就是这种情况,则最好将组 ID 放在用户表中。将其约束为 groups 表中 ID 的外键,以确保只能插入有效的组 ID,并且不为 null,以强制必须设置它。

CREATE TABLE groups
             (grouid integer,
              groupname varchar(50),
              PRIMARY KEY (groupid));

CREATE TABLE users
             (userid integer,
              username varchar(50),
              password varchar(50),
              grouid integer NOT NULL,
              PRIMARY KEY (userid),
              FOREIGN KEY (groupid)
                          REFERENCES groups
                                     (groupid));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    • 2017-10-08
    • 2021-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多