From f8eea0f0e44472d62341175ed70649c58bd2955c Mon Sep 17 00:00:00 2001
From: Bitha17 <16521076@mahasiswa.itb.ac.id>
Date: Thu, 16 Nov 2023 01:34:09 +0700
Subject: [PATCH] chore: db migration (by vanessa)

---
 database/1-create-table-users.sql        |  8 ++++++++
 database/2-create-table-events.sql       | 10 ++++++++++
 database/3-create-table-tickets.sql      |  6 ++++++
 database/4-create-table-pembelian.sql    |  8 ++++++++
 database/5-create-table-subscription.sql |  8 ++++++++
 5 files changed, 40 insertions(+)
 create mode 100644 database/1-create-table-users.sql
 create mode 100644 database/2-create-table-events.sql
 create mode 100644 database/3-create-table-tickets.sql
 create mode 100644 database/4-create-table-pembelian.sql
 create mode 100644 database/5-create-table-subscription.sql

diff --git a/database/1-create-table-users.sql b/database/1-create-table-users.sql
new file mode 100644
index 0000000..b138fb0
--- /dev/null
+++ b/database/1-create-table-users.sql
@@ -0,0 +1,8 @@
+CREATE TABLE IF NOT EXISTS users (
+  user_ID SERIAL PRIMARY KEY,
+  user_name VARCHAR(255),
+  username VARCHAR(255) UNIQUE,
+  user_email VARCHAR(255) UNIQUE,
+  user_hashedPass VARCHAR(255),
+  isAdmin BOOLEAN
+);
\ No newline at end of file
diff --git a/database/2-create-table-events.sql b/database/2-create-table-events.sql
new file mode 100644
index 0000000..80c7f26
--- /dev/null
+++ b/database/2-create-table-events.sql
@@ -0,0 +1,10 @@
+CREATE TABLE IF NOT EXISTS events (
+  event_id SERIAL PRIMARY KEY,
+  event_name VARCHAR(255),
+  event_stock INT,
+  event_price INT,
+  event_date TIMESTAMP,
+  event_location VARCHAR(255),
+  gambar VARCHAR(255),
+  vid VARCHAR(255)
+);
\ No newline at end of file
diff --git a/database/3-create-table-tickets.sql b/database/3-create-table-tickets.sql
new file mode 100644
index 0000000..0de3886
--- /dev/null
+++ b/database/3-create-table-tickets.sql
@@ -0,0 +1,6 @@
+CREATE TABLE IF NOT EXISTS tickets (
+  ticket_id SERIAL PRIMARY KEY,
+  ticket_name VARCHAR(255),
+  event_id INT,
+  FOREIGN KEY (event_id) REFERENCES events(event_id) ON DELETE SET NULL
+);
diff --git a/database/4-create-table-pembelian.sql b/database/4-create-table-pembelian.sql
new file mode 100644
index 0000000..05e8eac
--- /dev/null
+++ b/database/4-create-table-pembelian.sql
@@ -0,0 +1,8 @@
+CREATE TABLE IF NOT EXISTS pembelian (
+  pembelian_id SERIAL PRIMARY KEY,
+  ticket_id INT,
+  user_id INT,
+  pembelian_created_time TIMESTAMP,
+  FOREIGN KEY (ticket_id) REFERENCES tickets(ticket_id),
+  FOREIGN KEY (user_id) REFERENCES users(user_ID) ON DELETE SET NULL
+);
diff --git a/database/5-create-table-subscription.sql b/database/5-create-table-subscription.sql
new file mode 100644
index 0000000..9f78283
--- /dev/null
+++ b/database/5-create-table-subscription.sql
@@ -0,0 +1,8 @@
+CREATE TABLE IF NOT EXISTS subscription (
+  creator_id INT NOT NULL,
+  subscriber_id INT NOT NULL,
+  status VARCHAR(10) NOT NULL DEFAULT 'PENDING',
+  creator_name VARCHAR(255) NOT NULL,
+  PRIMARY KEY (creator_id, subscriber_id),
+  FOREIGN KEY (subscriber_id) REFERENCES users(user_ID) ON DELETE CASCADE
+);
-- 
GitLab