@@ -1,11 +1,24 @@
/* Precision for all money amounts assumes cents are excluded. */
CREATE TABLE address (
id INT AUTO_INCREMENT,
street VARCHAR(40) UNIQUE NOT NULL,
city VARCHAR(40) UNIQUE NOT NULL,
region VARCHAR(40) UNIQUE NOT NULL,
country VARCHAR(40) UNIQUE NOT NULL,
zip VARCHAR(40) UNIQUE NOT NULL,
PRIMARY KEY (`id`)
);
CREATE TABLE branch (
id INT AUTO_INCREMENT,
type ENUM('NMLS', 'FSRA') NOT NULL,
id INT AUTO_INCREMENT,
type ENUM('NMLS', 'FSRA') NOT NULL,
letterhead BLOB(102400) NOT NULL DEFAULT 0,
num VARCHAR(40) NOT NULL,
PRIMARY KEY (id)
num VARCHAR(40) NOT NULL,
phone VARCHAR(20) NOT NULL,
address INT NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (address) REFERENCES address(id)
);
CREATE TABLE user (
@@ -13,6 +26,8 @@ CREATE TABLE user (
email VARCHAR(40) UNIQUE NOT NULL,
first_name VARCHAR(30) NOT NULL,
last_name VARCHAR(30) NOT NULL,
phone VARCHAR(20) NOT NULL,
address INT NOT NULL,
password CHAR(64) NOT NULL,
verified BOOLEAN,
branch_id INT NULL,
@@ -32,7 +47,8 @@ CREATE TABLE user (
'Admin'),
role ENUM('User', 'Manager', 'Admin') NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (branch_id) REFERENCES branch(id)
FOREIGN KEY (branch_id) REFERENCES branch(id),
FOREIGN KEY (address) REFERENCES address(id)
);
CREATE TABLE license (