From e0f426565fb508b8bc0d7fe9f833ebfb76ce56f2 Mon Sep 17 00:00:00 2001 From: Nicolas Paschoud <nicolas.paschoud@etu.hesge.ch> Date: Fri, 29 Nov 2019 18:04:44 +0100 Subject: [PATCH] Hyperdrive.sql --- projet/hyperdrive.sql | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 projet/hyperdrive.sql diff --git a/projet/hyperdrive.sql b/projet/hyperdrive.sql new file mode 100644 index 0000000..4fce94e --- /dev/null +++ b/projet/hyperdrive.sql @@ -0,0 +1,33 @@ +CREATE DATABASE IF NOT EXISTS `hyperdrive` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; +USE `hyperdrive`; + +CREATE TABLE IF NOT EXISTS User ( + pseudo varchar(60) NOT NULL, + passwd varchar(256) NOT NULL, + PRIMARY KEY (pseudo) +); + +CREATE TABLE IF NOT EXISTS Paths ( + paths varchar(50) NOT NULL, + pseudo varchar(60) NOT NULL, + PRIMARY KEY (paths), + FOREIGN KEY (pseudo) REFERENCES User(pseudo) +); + +CREATE TABLE IF NOT EXISTS Files ( + file_id varchar(100) NOT NULL, + file_name varchar(50) NOT NULL, + paths varchar(50) NOT NULL, + PRIMARY KEY (file_id), + FOREIGN KEY (paths) REFERENCES Paths(paths) +); + +CREATE TABLE IF NOT EXISTS Share ( + pseudo_1 varchar(60) NOT NULL, + pseudo_2 varchar(60) NOT NULL, + file_id varchar(100) NOT NULL, + PRIMARY KEY (pseudo_1, pseudo_2, file_id), + FOREIGN KEY (pseudo_1) REFERENCES User(pseudo), + FOREIGN KEY (pseudo_2) REFERENCES User(pseudo), + FOREIGN KEY (file_id) REFERENCES Files(file_id) +); \ No newline at end of file -- GitLab