簡體   English   中英

MySQL-如何授予SQL用戶訪問不同文件的權限

[英]MySQL - How do I give users in SQL access to different files

我是當地一所高中的鼓手教練,我正在制作一個網頁供學生訪問他們的音樂。

我正在中創建用戶列表 ,需要向用戶添加權限 ,以便他們只能訪問我分配給他們的音樂 (PDF文件)。 最初,我考慮過可能要使用一個數組作為文件名,但是在看到SQL數組存在很大爭議之后,我決定伸出援手,看看是否有更好的建議。

截至目前,我有一個表格,其中所有用戶的列都是電子郵件,

密碼,

名/姓,

儀器。

我希望能夠在此添加另一個字段,以控制他們有權訪問哪些文件。

您在這里擁有的是學生與檔案之間的多對多關系。 我們通常在MySql中解決此問題的方法是創建一個數據透視表 這是一個小例子:

CREATE TABLE users (
    id INTEGER PRIMARY KEY,
    email VARCHAR(100) NOT NULL
);

CREATE TABLE assignments (
    id INTEGER PRIMARY KEY,
    filepath VARCHAR(100) NOT NULL
);

CREATE TABLE user_assignment (
    id INTEGER PRIMARY KEY,
    user_id INTEGER NOT NULL,
    assignment_id INTEGER NOT NULL,
    FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE RESTRICT ON UPDATE CASCADE,
    FOREIGN KEY (assignment_id) REFERENCES assignments (id) ON DELETE RESTRICT ON UPDATE CASCADE,
);

因此, user_assignment數據透視表中的每個條目都表示ID為user_id的用戶有權訪問ID為id為user_assignmentassignment_id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM