Você está na página 1de 3

CREATE TABLE employee_phone, FALLBACK ( employee_number INTEGER NOT NULL , area_code SMALLINT NOT NULL , phone INTEGER NOT

NULL , extension INTEGER , comment_line CHAR(72) ) PRIMARY INDEX (employee_number); CREATE TABLE department, FALLBACK ( department_number SMALLINT , department_name CHAR(30) NOT NULL , budget_amount DECIMAL(10,2) , manager_employee_number INTEGER ) UNIQUE PRIMARY INDEX (department_number) , UNIQUE INDEX (department_name); CREATE TABLE location_phone, FALLBACK ( location_number INTEGER , area_code SMALLINT NOT NULL , phone INTEGER NOT NULL , extension INTEGER , description VARCHAR(40) NOT NULL , comment_line LONG VARCHAR ) PRIMARY INDEX (location_number); CREATE TABLE contact, FALLBACK ( contact_number INTEGER , contact_name CHAR(30) NOT NULL , area_code SMALLINT NOT NULL , phone INTEGER NOT NULL , extension INTEGER , last_call_date DATE NOT NULL ) UNIQUE PRIMARY INDEX (contact_number); CREATE TABLE customer, FALLBACK ( customer_number INTEGER , customer_name CHAR(30) NOT NULL , parent_customer_number INTEGER , sales_employee_number INTEGER ) UNIQUE PRIMARY INDEX (customer_number); CREATE TABLE job, FALLBACK ( job_code INTEGER , description VARCHAR(40) NOT NULL , hourly_billing_rate DECIMAL(6,2) , hourly_cost_rate DECIMAL(6,2) ) UNIQUE PRIMARY INDEX (job_code) , UNIQUE INDEX (description); CREATE TABLE employee, FALLBACK ( employee_number INTEGER , manager_employee_number INTEGER , department_number INTEGER , job_code INTEGER , last_name CHAR(20) NOT NULL , first_name VARCHAR(30) NOT NULL , hire_date DATE NOT NULL , birthdate DATE NOT NULL , salary_amount DECIMAL(10,2) NOT NULL ) UNIQUE PRIMARY INDEX (employee_number);

CREATE TABLE location, FALLBACK ( location_number INTEGER , customer_number INTEGER NOT NULL , first_address_line CHAR(30) NOT NULL , city VARCHAR(30) NOT NULL , state CHAR(15) NOT NULL , zip_code INTEGER NOT NULL , second_address_line CHAR(30) , third_address_line CHAR(30) ) PRIMARY INDEX (customer_number); CREATE TABLE AR_Census.Resident ( Record_Number varchar(7) NOT NULL PRIMARY KEY, Lname varchar(30), Fname varchar(30), County varchar(3), Page varchar(5), Township varchar(30), State varchar(3), Census_Year varchar(5) ); CREATE TABLE AR_Census.Counties ( Name varchar(14) NOT NULL PRIMARY KEY, Number varchar(3), ); CREATE TABLE Student ( Studnum integer NOT NULL, Surname char( 20 ) NOT NULL, Initials char( 6 ), Address char( 40 ), Birthdate date, Sex char( 1 ) NOT NULL CHECK ( Sex in ('F','M') ), PRIMARY KEY ( Studnum ) ); CREATE TABLE Room ( Roomnum char( 6 ) NOT NULL, RoomType char( 4 ) NOT NULL, Capacity smallint NOT NULL, PRIMARY KEY ( Roomnum ) ); CREATE TABLE Employee ( Empnum integer NOT NULL, Empname char( 20 ) NOT NULL, Initials char( 6 ) NOT NULL, Address char( 40 ), Homephone char( 8 ), Labpay numeric( 6 , 2 ), "Rank" char( 5 ) NOT NULL CHECK ("Rank" in ( TUTOR , PROF )) DEFAULT PROF , Roomnum char( 6 ) NOT NULL, PRIMARY KEY ( Empnum ) ); CREATE TABLE Course ( Course char( 5 ) NOT NULL, Credit numeric( 3 , 2 ) NOT NULL,

Hours smallint NOT NULL, Description char( 80 ) NOT NULL, CHECK (Credit in ( 1.00, .25, .50 ) ), PRIMARY KEY ( Course ) ); CREATE TABLE Assignment ( Course char( 5 ) NOT NULL, Assignnum smallint NOT NULL, Weighting numeric( 5 , 2 ) NOT NULL, Description char( 25 ), "Date Due" date, PRIMARY KEY ( Course, Assignnum ) ); CREATE TABLE Lab ( Course char( 5 ) NOT NULL, Lab char( 5 ) NOT NULL, PRIMARY KEY ( Course ) ); CREATE TABLE Section ( Empnum integer NOT NULL, Course char( 5 ) NOT NULL, Section smallint NOT NULL, PRIMARY KEY ( Course, Section ) ); CREATE TABLE Class ( Course char( 5 ) NOT NULL, Section smallint NOT NULL, "Day" char( 3 ) NOT NULL, "Time" char( 5 ) NOT NULL, Hours smallint NOT NULL, Roomnum char( 6 ) NOT NULL, UNIQUE ( "Day", "Time", Roomnum ), PRIMARY KEY ( Course, Section, "Day", "Time" ) ); CREATE TABLE Register ( Studnum integer NOT NULL, Course char( 5 ) NOT NULL, Section smallint NOT NULL, PRIMARY KEY ( Studnum, Course ) ); CREATE TABLE Mark ( Studnum integer NOT NULL, Course char( 5 ) NOT NULL, Assignnum smallint NOT NULL, Mark smallint NOT NULL CHECK (Mark between 0 and 100 ), PRIMARY KEY ( Course, Studnum, Assignnum ) );

Você também pode gostar