CREATE TABLE Photo ( Photo_id INTEGER NOT NULL AUTO_INCREMENT, title VARCHAR(20) NOT NULL, image blob NOT NULL, description VARCHAR(20) NOT NULL, classification VARCHAR(20) NOT NULL, dateTaken Date NOT NULL, dateSubmitted Date NOT NULL, subjectLocationOS CHAR(8) NOT NULL, subjectLocationWGS varchar NOT NULL, photographerLocationOS CHAR(8) NOT NULL, viewDirection char(3) NOT NULL, GridSquare_id INTEGER REFERENCES GridSquare ( GridSquare_id) , Category_id INTEGER REFERENCES Category ( Category_id) , Contributor_id INTEGER REFERENCES Contributor ( Contributor_id) , PRIMARY KEY ( Photo_id ) ); CREATE TABLE GridSquare ( GridSquare_id INTEGER NOT NULL AUTO_INCREMENT, gridref CHAR(8) NOT NULL, PRIMARY KEY ( GridSquare_id ) ); CREATE TABLE Category ( Category_id INTEGER NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, PRIMARY KEY ( Category_id ) ); CREATE TABLE Contributor ( Contributor_id INTEGER NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, nickname VARCHAR(20) NOT NULL, email VARCHAR(20) NOT NULL, website VARCHAR(20), homeLocation CHAR(8) NOT NULL, dateJoined Date NOT NULL, PRIMARY KEY ( Contributor_id ) ); CREATE TABLE Comment ( Comment_id INTEGER NOT NULL AUTO_INCREMENT, text VARCHAR(20) NOT NULL, dateSubmitted Date NOT NULL, GridSquare_id INTEGER REFERENCES GridSquare ( GridSquare_id) , Contributor_id INTEGER REFERENCES Contributor ( Contributor_id) , PRIMARY KEY ( Comment_id ) );