Added database migration files
authorDana Truempy <dana.truempy@gmail.com>
Sun, 17 May 2020 19:50:03 +0000 (14:50 -0500)
committerDana Truempy <dana.truempy@gmail.com>
Sun, 17 May 2020 19:50:03 +0000 (14:50 -0500)
backend/migrations/001-create_item.sql [new file with mode: 0644]
backend/migrations/002-create_wishlist.sql [new file with mode: 0644]
backend/migrations/003-create_user.sql [new file with mode: 0644]
backend/migrations/004-create_wishlist_entry.sql [new file with mode: 0644]
backend/migrations/005-create_user_wishlist.sql [new file with mode: 0644]

diff --git a/backend/migrations/001-create_item.sql b/backend/migrations/001-create_item.sql
new file mode 100644 (file)
index 0000000..4e337c0
--- /dev/null
@@ -0,0 +1,4 @@
+CREATE TABLE ITEM(
+    ID INTEGER PRIMARY KEY AUTOINCREMENT,
+    URL TEXT UNIQUE NOT NULL
+);
diff --git a/backend/migrations/002-create_wishlist.sql b/backend/migrations/002-create_wishlist.sql
new file mode 100644 (file)
index 0000000..758ba25
--- /dev/null
@@ -0,0 +1,5 @@
+CREATE TABLE WISHLIST(
+    ID TEXT PRIMARY KEY,
+    NAME TEXT NOT NULL,
+    NOTE TEXT
+);
diff --git a/backend/migrations/003-create_user.sql b/backend/migrations/003-create_user.sql
new file mode 100644 (file)
index 0000000..3ae517a
--- /dev/null
@@ -0,0 +1,7 @@
+CREATE TABLE USER(
+    ID INTEGER PRIMARY KEY AUTOINCREMENT,
+    USERNAME TEXT NOT NULL,
+    HASH TEXT NOT NULL,
+    SALT BLOB NOT NULL,
+    EMAIL TEXT
+);
diff --git a/backend/migrations/004-create_wishlist_entry.sql b/backend/migrations/004-create_wishlist_entry.sql
new file mode 100644 (file)
index 0000000..9826d5a
--- /dev/null
@@ -0,0 +1,7 @@
+CREATE TABLE WISHLIST_ENTRY(
+    WISHLIST_ID TEXT NOT NULL REFERENCES WISHLIST(ID),
+    ITEM_ID INTEGER NOT NULL REFERENCES ITEM(ID),
+    NAME TEXT NOT NULL,
+    DESCRIPTION TEXT,
+    PRIMARY KEY(WISHLIST_ID, ITEM_ID)
+);
diff --git a/backend/migrations/005-create_user_wishlist.sql b/backend/migrations/005-create_user_wishlist.sql
new file mode 100644 (file)
index 0000000..9480c30
--- /dev/null
@@ -0,0 +1,5 @@
+CREATE TABLE USER_WISHLIST(
+    USER_ID INTEGER NOT NULL REFERENCES USER(ID),
+    WISHLIST_ID TEXT NOT NULL REFERENCES WISHLIST(ID),
+    PRIMARY KEY(USER_ID, WISHLIST_ID)
+);