Skip to content

Instantly share code, notes, and snippets.

@jwintersinger
Created April 11, 2013 00:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jwintersinger/5359799 to your computer and use it in GitHub Desktop.
Save jwintersinger/5359799 to your computer and use it in GitHub Desktop.
CREATE TABLE Employee (
SSN TEXT(10),
Birthdate DATETIME,
First_Name TEXT,
Last_Name TEXT,
Salary DOUBLE,
Super_SSN TEXT(10),
Storefront_ID INTEGER,
Depot_ID INTEGER,
Spaceship_ID INTEGER,
CONSTRAINT pk_SSN PRIMARY KEY (SSN)
);
CREATE TABLE Spaceship (
ID COUNTER,
Volume DOUBLE,
Class TEXT,
Capacity INTEGER,
Current_Coords_x DOUBLE,
Current_Coords_y DOUBLE,
Current_Coords_z DOUBLE,
Dest_pb_Coords_x DOUBLE,
Dest_pb_Coords_y DOUBLE,
Dest_pb_Coords_z DOUBLE,
Dest_Address TEXT,
CONSTRAINT pk_ID PRIMARY KEY (ID)
);
CREATE TABLE Spacesuit (
ID COUNTER,
Size TEXT,
Model TEXT,
CONSTRAINT pk_ID PRIMARY KEY (ID)
);
CREATE TABLE Depot (
ID COUNTER,
Deport_Name TEXT,
Address TEXT,
PB_Coord_x DOUBLE,
PB_Coord_y DOUBLE,
PB_Coord_z DOUBLE,
CONSTRAINT pk_ID PRIMARY KEY (ID)
);
CREATE TABLE Shipper (
First_Name TEXT,
Last_Name TEXT,
Address TEXT,
PB_Coord_x DOUBLE,
PB_Coord_y DOUBLE,
PB_Coord_z DOUBLE
);
CREATE TABLE Recipient (
First_Name TEXT,
Last_Name TEXT,
Address TEXT,
PB_Coord_x DOUBLE,
PB_Coord_y DOUBLE,
PB_Coord_z DOUBLE
);
CREATE TABLE Storefront (
ID COUNTER,
Store_Name TEXT,
Address TEXT,
PB_Coord_x DOUBLE,
PB_Coord_y DOUBLE,
PB_Coord_z DOUBLE,
CONSTRAINT pk_ID PRIMARY KEY (ID)
);
CREATE TABLE HoverTruck (
ID COUNTER,
Capacity INTEGER,
Address TEXT,
Dest_Address TEXT,
Current_Coords_x DOUBLE,
Current_Coords_y DOUBLE,
Current_Coords_z DOUBLE,
Dest_Coords_x DOUBLE,
Dest_Coords_y DOUBLE,
Dest_Coords_z DOUBLE,
CONSTRAINT pk_ID PRIMARY KEY (ID)
);
CREATE TABLE Package (
ID COUNTER,
Width DOUBLE,
Height DOUBLE,
Depth DOUBLE,
Mass DOUBLE,
Spaceship_ID INTEGER,
Storefront_ID INTEGER,
Hovertruck_ID INTEGER,
Depot_ID INTEGER,
Recipient_First_Name TEXT,
Recipient_Last_Name TEXT,
Recipient_Coord_x DOUBLE,
Recipient_Coord_y DOUBLE,
Recipient_Coord_z DOUBLE,
Recipient_Address TEXT,
Shipper_First_Name TEXT,
Shipper_Last_Name TEXT,
Shipper_Coord_x DOUBLE,
Shipper_Coord_y DOUBLE,
Shipper_Coord_z DOUBLE,
Shipper_Address TEXT,
CONSTRAINT pk_ID PRIMARY KEY (ID)
);
ALTER TABLE Employee ADD FOREIGN KEY (Spaceship_ID) REFERENCES Spaceship(ID);
ALTER TABLE Employee ADD FOREIGN KEY (Super_SSN) REFERENCES Employee(SSN);
ALTER TABLE Employee ADD FOREIGN KEY (Storefront_ID) REFERENCES Storefront(ID);
ALTER TABLE Employee ADD FOREIGN KEY (Depot_ID) REFERENCES Depot(ID);
ALTER TABLE Employee ADD FOREIGN KEY (Spaceship_ID) REFERENCES Spaceship(ID);
ALTER TABLE Spaceship ADD FOREIGN KEY (Dest_pb_Coords_x, Dest_pb_Coords_y, Dest_pb_Coords_z) REFERENCES
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment