Database = GS

 
  +---------------------+
  |       Table         |
  +---------------------+
  | users               |
  | students            |
  | courses             |
  | questions           |
  | surveys             |
  | grades              |
  | performances        |
  | assignments         |
  | answers             |
  | customizedgrades    |
  +---------------------+


Database = GS
Table    = users
UNIQUE  INDEX index_users ON users (gslogin)  

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | gslogin         | char     | 15     | Y        | N/A          |
 | gspwd           | char     | 20     | Y        | N/A          |
 | idnum           | char     | 80     | N        | N/A          |
 | privilige       | char     | 2      | N        | N/A          |
 | ACL             | char     | 1000   | N        | N/A          |
 | firstname       | char     | 20     | Y        | N/A          |
 | midname         | char     | 20     | N        | N/A          |
 | lastname        | char     | 20     | Y        | N/A          |
 | email           | char     | 70     | N        | N/A          |
 | dept            | char     | 50     | N        | N/A          |
 | url             | char     | 150    | N        | N/A          |
 | picurl          | char     | 150    | N        | N/A          |
 | phone           | char     | 15     | N        | N/A          |
 | room            | char     | 15     | N        | N/A          |
 | systemslogin    | char     | 15     | N        | N/A          |
 | comments        | char     | 2000   | N        | N/A          |
 | reserved        | char     | 50     | N        | N/A          |
 | index_users     | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+


Database = GS
Table    = students
UNIQUE  INDEX index_students ON students (accesscode,course) 

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | accesscode      | char     | 20     | Y        | N/A          |
 | gspwd           | char     | 20     | Y        | N/A          |
 | course          | char     | 50     | Y        | N/A          |
 | studentid       | char     | 20     | N        | N/A          |
 | idnum           | char     | 80     | N        | N/A          |
 | firstname       | char     | 20     | Y        | N/A          |
 | midname         | char     | 20     | N        | N/A          |
 | lastname        | char     | 20     | Y        | N/A          |
 | class           | char     | 30     | N        | N/A          |
 | email           | char     | 70     | N        | N/A          |
 | dept            | char     | 100    | N        | N/A          |
 | url             | char     | 200    | N        | N/A          |
 | picurl          | char     | 200    | N        | N/A          |
 | systemslogin    | char     | 20     | N        | N/A          |
 | systemspwd      | char     | 20     | N        | N/A          |
 | index_students  | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+


Database = GS
Table    = courses
UNIQUE  INDEX index_courses ON courses (title) 

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | title           | char     | 50     | Y        | N/A          |
 | name            | char     | 40     | N        | N/A          |
 | term            | char     | 10     | N        | N/A          |
 | year            | char     | 4      | N        | N/A          |
 | instructor      | char     | 40     | N        | N/A          |
 | insurl          | char     | 110    | N        | N/A          |
 | insemail        | char     | 30     | N        | N/A          |
 | coinstructor    | char     | 40     | N        | N/A          |
 | coinsurl        | char     | 110    | N        | N/A          |
 | coinsemail      | char     | 30     | N        | N/A          |
 | ta              | char     | 40     | N        | N/A          |
 | taurl           | char     | 110    | N        | N/A          |
 | taemail         | char     | 30     | N        | N/A          |
 | team            | char     | 500    | N        | N/A          |
 | url             | char     | 200    | N        | N/A          |
 | logourl         | char     | 200    | N        | N/A          |
 | grdtype         | char     | 30     | N        | N/A          |
 | extracredits    | char     | 3      | N        | N/A          |
 | publishavg      | char     | 3      | N        | N/A          |
 | publishfgrd     | char     | 3      | N        | N/A          |
 | notes           | char     | 2000   | N        | N/A          |
 | index_courses   | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+

 
Database = GS
Table    = questions
UNIQUE  INDEX index_questions ON questions (qid) 

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | qid             | int      | 4      | Y        | N/A          |
 | question        | char     | 300    | N        | N/A          |
 | category        | char     | 30     | N        | N/A          |
 | index_questions | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+
 
 
Database = GS
Table    = surveys
UNIQUE  INDEX index_surveys ON surveys (course,surveyname,qid) 

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | course          | char     | 50     | Y        | N/A          |
 | surveyname      | char     | 50     | Y        | N/A          |
 | qid             | int      | 4      | Y        | N/A          |
 | question        | char     | 300    | N        | N/A          |
 | category        | char     | 30     | N        | N/A          |
 +-----------------+----------+--------+----------+--------------+


Database = GS
Table    = grades
UNIQUE  INDEX index_grades ON grades (accesscode,course,assignid)  

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | accesscode      | char     | 20     | Y        | N/A          |
 | course          | char     | 50     | Y        | N/A          |
 | assignid        | int      | 4      | Y        | N/A          |
 | grade           | char     | 20     | N        | N/A          |
 | egrade          | char     | 20     | N        | N/A          |
 | partials        | char     | 30     | N        | N/A          |
 | comment         | char     | 2000   | N        | N/A          |
 | tacomment       | char     | 2000   | N        | N/A          |
 | secretcomment   | char     | 2000   | N        | N/A          |
 | index_grades    | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+
 

Database = GS
Table    = performances
UNIQUE  INDEX index_performances ON performances (accesscode,course)

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | accesscode      | char     | 20     | Y        | N/A          |
 | course          | char     | 50     | Y        | N/A          |
 | finalgrade      | char     | 20     | N        | N/A          |
 | average         | char     | 20     | N        | N/A          |
 | remark          | char     | 2000   | N        | N/A          |
 | taremark        | char     | 2000   | N        | N/A          |
 | secretremark    | char     | 2000   | N        | N/A          |
 | index_performan | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+
 

Database = GS
Table    = assignments
UNIQUE  INDEX index_assignments ON assignments (course,assignid) 

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | course          | char     | 50     | Y        | N/A          |
 | assignid        | int      | 4      | Y        | N/A          |
 | type            | char     | 10     | N        | N/A          |
 | grbase          | char     | 40     | N        | N/A          |
 | weight          | char     | 3      | N        | N/A          |
 | partials        | char     | 100    | N        | N/A          |
 | publish         | char     | 3      | N        | N/A          |
 | url             | char     | 200    | N        | N/A          |
 | commenturl      | char     | 200    | N        | N/A          |
 | notes           | char     | 2000   | N        | N/A          |
 | index_assignmen | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+
 
  

Database = GS
Table    = answers
UNIQUE  INDEX index_answers ON answers (course,surveyname,accesscode,qid) 

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | course          | char     | 50     | Y        | N/A          |
 | surveyname      | char     | 50     | Y        | N/A          |
 | accesscode      | char     | 20     | Y        | N/A          |
 | qid             | int      | 4      | Y        | N/A          |
 | answer          | char     | 3      | N        | N/A          |
 | index_answers   | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+
 

Database = GS
Table    = customizedgrades
UNIQUE  INDEX index_customizedgrades ON customizedgrades (course,grade)  

 
 +-----------------+----------+--------+----------+--------------+
 |     Field       |   Type   | Length | Not Null | Unique Index |
 +-----------------+----------+--------+----------+--------------+
 | course          | char     | 50     | Y        | N/A          |
 | grade           | char     | 30     | Y        | N/A          |
 | points          | real     | 8      | N        | N/A          |
 | index_customize | index    | N/A    | N/A      | Y            |
 +-----------------+----------+--------+----------+--------------+
 


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

Example table constructions for an specific database :


-------------------------------student-------------------

CREATE TABLE students (
	accesscode	char(20) NOT NULL,
	gspwd		char(20) NOT NULL,
	course		char(50) NOT NULL,
	
	studentid	char(20),
	idnum 		char(80),

  	firstname 	CHAR(20) NOT NULL,
  	midname 	CHAR(20),
  	lastname 	CHAR(20) NOT NULL,
	

	class		CHAR(30),
	email		CHAR(70),
	dept		CHAR(100),
	url		CHAR(200),
	picurl		CHAR(200),

	
	systemslogin	char(20),
	systemspwd	char(20)
) \g

CREATE UNIQUE  INDEX index_students ON students (
	accesscode,course				) \g

--------------------------users----------------------
CREATE TABLE users (
	gslogin 	CHAR(15) NOT NULL,
	gspwd 		CHAR(20) NOT NULL,
	idnum 		CHAR(80) ,
	privilige	char(2),
	ACL		CHAR(1000),
  	firstname 	CHAR(20) NOT NULL,
  	midname 	CHAR(20),
  	lastname 	CHAR(20) NOT NULL,
   	email 		CHAR(70),
 	dept 		CHAR(50),
  	url 		CHAR(150),
  	picurl	 	CHAR(150),
  	phone 		CHAR(15),
  	room 		CHAR(15),
	systemslogin 	CHAR(15),	
	comments	CHAR(2000),
	reserved 	CHAR(50)
)\g

CREATE UNIQUE  INDEX index_users ON users (
	gslogin				) \g

INSERT INTO users VALUES 
	('admin', 'sysadministrator', '', 0, '', 
	'Admin', 'A.','Admin', 
	'', '', '', '', '', '', '', '', '') \g


--------------------------courses------------------
CREATE TABLE courses (
 title                   		 CHAR(50) NOT NULL,
 name                                    char(40),
 term                                    char(10),
 year                                    char(4),
 instructor                              char(40),
 insurl                                  char(110),
 insemail                                char(30),
 coinstructor                              char(40),
 coinsurl                                  char(110),
 coinsemail                                char(30),
 ta                                      char(40),
 taurl                                   char(110),
 taemail                                 char(30),
 team                                    char(500),
 url                                     char(200),
 logourl                                     char(200),
 grdtype				 char(30),
 extracredits                            char(3),
 publishavg                              char(3),
 publishfgrd                             char(3),
 notes                                   char(2000)
)\g

CREATE UNIQUE  INDEX index_courses ON courses (
        title					) \g

--------------------------questions-----------------
CREATE TABLE questions	(
	qid			int NOT NULL,
	question		CHAR(300),
	category		CHAR(30)
) \g
CREATE UNIQUE  INDEX index_questions ON questions (
	qid					) \g

--------------------------surveys-----------------
CREATE TABLE surveys	(
	course			char(50) NOT NULL,
	surveyname		char(50) NOT NULL,
	qid			int NOT NULL,
	question		CHAR(300),
	category		CHAR(30)
)\g
CREATE UNIQUE  INDEX index_surveys ON surveys (
        course,surveyname,qid			) \g
--------------------------answers----------------
CREATE TABLE answers	(
	course			char(50) NOT NULL,
	surveyname		char(50) NOT NULL,
	accesscode		char(20) NOT NULL,
	qid			int NOT NULL,
	answer			CHAR(3)
)\g
CREATE UNIQUE  INDEX index_answers ON answers (
        course,surveyname,accesscode,qid	) \g


---------------------------------customizedgrades------
CREATE TABLE customizedgrades	(
	course			char(50) NOT NULL,
	grade                   CHAR(30) NOT NULL, 
	points			real
) \g
CREATE UNIQUE  INDEX index_customizedgrades ON customizedgrades (
        course,grade			) \g

---------------------------------ASSIGNMENT-------------

CREATE TABLE assignments (
 course                   		 CHAR(50) NOT NULL,
 assignid                                   int NOT NULL,
 type                                    char(10),
 grbase                                    char(40),
 weight                             char(3),
 partials				char(100),
 publish 				char(3),
 url                                  char(200),
 commenturl                                char(200),
 notes                                   char(2000)
)
\g


CREATE UNIQUE  INDEX index_assignments ON assignments (
        course,assignid
) \g
-------------------------------grades--------------------

CREATE TABLE grades
	(accesscode      		char(20) NOT NULL,
	course			char(50) NOT NULL,
	assignid			int NOT NULL, 
	grade			char(20),
	egrade			char(20),
	partials		char(30),
	comment			char(2000),
	tacomment			char(2000),
	secretcomment			char(2000)
 ) \g
CREATE UNIQUE  INDEX index_grades ON grades (
        accesscode,course,assignid	) \g

-------------------------------performances------------

CREATE TABLE performances
	(accesscode      		char(20) NOT NULL,
	course			char(50) NOT NULL,
	finalgrade			char(20),
	average			char(20),
	remark			char(2000),
	taremark			char(2000),
	secretremark			char(2000)
 ) \g
CREATE UNIQUE  INDEX index_performances ON performances (
        accesscode,course			) \g


-------------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------

[home]