Change Database Scheme according to DBv1.sql
This commit is contained in:
@@ -11,5 +11,4 @@ public class WebshopApplication {
|
||||
System.setProperty("server.port", BASE_PORT);
|
||||
SpringApplication.run(WebshopApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
56
00-backend/src/main/resources/db/DBv1.sql
Normal file
56
00-backend/src/main/resources/db/DBv1.sql
Normal file
@@ -0,0 +1,56 @@
|
||||
CREATE TABLE IF NOT EXISTS ArticleConfigurations(
|
||||
id INTEGER PRIMARY KEY NOT NULL,
|
||||
articleId INTEGER NOT NULL,
|
||||
name TEXT NOT NULL,
|
||||
FOREIGN KEY (articleId) REFERENCES Articles(id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS Customers(
|
||||
id INTEGER PRIMARY KEY NOT NULL,
|
||||
name TEXT NOT NULL, --nachname
|
||||
surname TEXT NOT NULL, --vorname,
|
||||
address TEXT NOT NULL,
|
||||
country TEXT NOT NULL,
|
||||
zip TEXT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS Orders(
|
||||
id INTEGER PRIMARY KEY NOT NULL,
|
||||
customerId INTEGER NOT NULL,
|
||||
time INTEGER NOT NULL, --unix millis or epoch, TBD
|
||||
FOREIGN KEY (customerId) REFERENCES Customers(id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
-- Each Article-Configuration in the order gets their own of this one
|
||||
CREATE TABLE IF NOT EXISTS OrderItems(
|
||||
orderId INTEGER NOT NULL,
|
||||
articleId INTEGER NOT NULL,
|
||||
articleConfId INTEGER NULL,
|
||||
amount INTEGER NOT NULL,
|
||||
|
||||
CONSTRAINT cAmount CHECK (amount > 0),
|
||||
FOREIGN KEY (orderId) REFERENCES Orders(id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
FOREIGN KEY (articleId) REFERENCES Articles(id)
|
||||
ON DELETE SET NULL
|
||||
ON UPDATE CASCADE,
|
||||
FOREIGN KEY (articleConfId) REFERENCES ArticleConfigurations(id)
|
||||
ON DELETE SET NULL
|
||||
ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS Accounts(
|
||||
id INTEGER PRIMARY KEY NOT NULL,
|
||||
customerId INTEGER NOT NULL,
|
||||
email TEXT NOT NULL,
|
||||
password TEXT NOT NULL,
|
||||
lang_i18n TEXT NOT NULL,
|
||||
FOREIGN KEY (customerId) REFERENCES Customers(id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
);
|
||||
@@ -27,4 +27,4 @@ CREATE TABLE IF NOT EXISTS Reviews(
|
||||
content TEXT NULL,
|
||||
FOREIGN KEY (articleId) REFERENCES Articles(id),
|
||||
CONSTRAINT c_rating CHECK ( rating >= 0 AND rating <= 10)
|
||||
)
|
||||
);
|
||||
Reference in New Issue
Block a user