Bageri AB
This commit is contained in:
		
							parent
							
								
									b5f2d425bd
								
							
						
					
					
						commit
						9b06ea6c45
					
				
					 2 changed files with 88 additions and 21 deletions
				
			
		|  | @ -1,14 +1,90 @@ | ||||||
| -- Id is a surrogate key for in ternal use | CREATE TABLE IF NOT EXISTS Customers ( | ||||||
| -- userId is what is used for external id |   CustomerID int PRIMARY KEY, | ||||||
| -- username is what is used for login |   Name varchar(100), | ||||||
| -- password is the hashed password |   Address varchar(255) | ||||||
| CREATE TABLE IF NOT EXISTS users ( |  | ||||||
|   id INTEGER PRIMARY KEY, |  | ||||||
|   userId TEXT DEFAULT (HEX(RANDOMBLOB(4))) NOT NULL UNIQUE, |  | ||||||
|   username VARCHAR(255) NOT NULL UNIQUE, |  | ||||||
|   password VARCHAR(255) NOT NULL |  | ||||||
| ); | ); | ||||||
| 
 | 
 | ||||||
| -- Users are commonly searched by username and userId | CREATE TABLE IF NOT EXISTS Products ( | ||||||
| CREATE INDEX IF NOT EXISTS users_username_index ON users (username); |   ProductID int PRIMARY KEY, | ||||||
| CREATE INDEX IF NOT EXISTS users_userId_index ON users (userId); |   Name varchar(100) | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS Recipes ( | ||||||
|  |   RecipeName varchat(100), | ||||||
|  |   RecipeYear Year, | ||||||
|  |   ingrediences int, | ||||||
|  |   ProductID int, | ||||||
|  |   PRIMARY KEY (RecipeName, RecipeYear) | ||||||
|  |   FOREIGN KEY (ingrediences) REFERENCES ingredience(IngredienceID) | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS ingredience ( | ||||||
|  |   IngredienceID int PRIMARY KEY, | ||||||
|  |   RawMaterialName varchar(100), | ||||||
|  |   amount int, | ||||||
|  |   unit varchar(50) | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS RawMaterials ( | ||||||
|  |   RawMaterialName varchar(100) PRIMARY KEY, | ||||||
|  |   Quantity int, | ||||||
|  |   LastDeliveryDateTime datetime | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS PalletsProduced ( | ||||||
|  |   PalletID int PRIMARY KEY, | ||||||
|  |   ProductID int, | ||||||
|  |   ProductionDateTime datetime | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS PalletsDelivered ( | ||||||
|  |   DeliveredID int PRIMARY KEY, | ||||||
|  |   PalletID int, | ||||||
|  |   DeliveryDateTime datetime | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS Truck ( | ||||||
|  |   truckId int PRIMARY KEY, | ||||||
|  |   capacity int, | ||||||
|  |   Pallet int | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS loadingBill ( | ||||||
|  |   LoadingbillID int PRIMARY KEY, | ||||||
|  |   adress varchar(100), | ||||||
|  |   customer varchar(100), | ||||||
|  |   truckID int | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS Orders ( | ||||||
|  |   OrderID int PRIMARY KEY, | ||||||
|  |   CustomerID int, | ||||||
|  |   ProductID int, | ||||||
|  |   Quantity int, | ||||||
|  |   OrderDateTime datetime | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS BlockedProducts ( | ||||||
|  |   BlockedProductID int PRIMARY KEY, | ||||||
|  |   ProductID int, | ||||||
|  |   BlockedDateTime datetime | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS PalletTraceability ( | ||||||
|  |   TraceID int PRIMARY KEY, | ||||||
|  |   location varchar(100), | ||||||
|  |   locationdate datetime, | ||||||
|  |   PalletID int | ||||||
|  | ); | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | -- ALTER TABLE Recipes ADD FOREIGN KEY (ProductID) REFERENCES Products (ProductID); | ||||||
|  | -- ALTER TABLE ingredience ADD FOREIGN KEY (RawMaterialName) REFERENCES RawMaterials (RawMaterialName); | ||||||
|  | -- ALTER TABLE PalletsProduced ADD FOREIGN KEY (ProductID) REFERENCES Products (ProductID); | ||||||
|  | -- ALTER TABLE PalletsDelivered ADD FOREIGN KEY (PalletID) REFERENCES PalletsProduced (PalletID); | ||||||
|  | -- ALTER TABLE PalletsDelivered ADD FOREIGN KEY (DeliveredID) REFERENCES Truck (Pallet); | ||||||
|  | -- ALTER TABLE loadingBill ADD FOREIGN KEY (truckID) REFERENCES Truck (truckId); | ||||||
|  | -- ALTER TABLE Orders ADD FOREIGN KEY (CustomerID) REFERENCES Customers (CustomerID); | ||||||
|  | -- ALTER TABLE Orders ADD FOREIGN KEY (ProductID) REFERENCES Products (ProductID); | ||||||
|  | -- ALTER TABLE BlockedProducts ADD FOREIGN KEY (ProductID) REFERENCES Products (ProductID); | ||||||
|  | -- ALTER TABLE PalletTraceability ADD FOREIGN KEY (PalletID) REFERENCES PalletsProduced (PalletID); | ||||||
|  |  | ||||||
|  | @ -1,9 +0,0 @@ | ||||||
| CREATE TABLE IF NOT EXISTS projects ( |  | ||||||
|   id INTEGER PRIMARY KEY, |  | ||||||
|   name VARCHAR(255) NOT NULL UNIQUE, |  | ||||||
|   description TEXT NOT NULL, |  | ||||||
|   owner_user_id INTEGER NOT NULL, |  | ||||||
|   FOREIGN KEY (owner_user_id) REFERENCES users (id) |  | ||||||
| ); |  | ||||||
| 
 |  | ||||||
| CREATE INDEX IF NOT EXISTS projects_user_id_index ON projects (owner_user_id); |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Imbus
						Imbus