diff --git a/projet/hyperdrive.sql b/projet/hyperdrive.sql new file mode 100644 index 0000000000000000000000000000000000000000..4fce94e464146bd314fbc67909ab5ba536f6f97b --- /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