2013-08-28 3 views
0
CREATE DATABASE IF NOT EXISTS UNIVERSITY; 

USE UNIVERSITY; 

CREATE TABLE IF NOT EXISTS STUDENT 
    ( 
    STUDENT_NO VARCHAR(25) NOT NULL UNIQUE, 
    STUDENT_NAME VARCHAR(255), 
    ADDRESS  VARCHAR(255), 
    YEAR_STUDY INT, 
    SEX   VARCHAR(5), 
    DATE_OF_BIRTH DATE, 
    COURSE_NO  VARCHAR(10), 
    PRIMARY KEY(STUDENT_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS SUBJECT 
    ( 
    SUBJECT_NO VARCHAR(10) NOT NULL UNIQUE, 
    SUBJECT_NAME VARCHAR(255), 
    DEPT_NAME VARCHAR(255), 
    PRIMARY KEY(SUBJECT_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS RESULTS 
    ( 
    STUDENT_NO VARCHAR(25) NOT NULL UNIQUE, 
    SUBJECT_NO VARCHAR(25) NOT NULL UNIQUE, 
    YEAR_EXAM INT, 
    MARKS  INT, 
    PRIMARY KEY(STUDENT_NO, SUBJECT_NO), 
    FOREIGN KEY(STUDENT_NO) REFERENCES STUDENT(STUDENT_NO), 
    FOREIGN KEY(SUBJECT_NO) REFERENCES SUBJECT(SUBJECT_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS COURSE 
    ( 
    COURSE_NO VARCHAR(10) NOT NULL UNIQUE, 
    TITLE  VARCHAR(255), 
    DURATION INT, 
    PRIMARY KEY(COURSE_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS COURSE_SUB 
    ( 
    COURSE_NO VARCHAR(10) NOT NULL UNIQUE, 
    SUBJECT_NO VARCHAR(10) NOT NULL UNIQUE, 
    PRIMARY KEY(COURSE_NO, SUBJECT_NO), 
    FOREIGN KEY(COURSE_NO) REFERENCES COURSE(COURSE_NO), 
    FOREIGN KEY(SUBJECT_NO) REFERENCES SUBJECT(SUBJECT_NO) 
) 
ENGINE=INNODB; 

я создаю базу данных, но она имеет некоторые ошибки я не могу найти то, что ошибкаMySQL ошибка создания таблицы

пожалуйста, помогите

+0

По какой-то причине я хотел представить ответ «съесть больше сыра.» Мой мозг работает смешно в 1:30. Во всяком случае, в общем, если у вас возникла проблема со сценарием, подобным этому, вы можете устранить неполадку своего кода, выполнив каждый оператор по одному за раз, так что когда он не удастся, вы точно узнаете, какое из этих утверждений вызвало проблему, потому что вы 'запускать только в любой момент времени. Тогда должно быть простым вопросом проверить инструкцию для поиска (обычно) синтаксических ошибок. – DiMono

ответ

0

Вы пропускаете запятую между Year_Exam int и Marks int и между foreign key(Student_No) references Student(Student_No) и foreign key(Subject_No) references Subject(Subject_No)

Что-то вроде

create table IF NOT EXISTS 
results( 
    Student_No varchar(25) not null unique, 
    Subject_No varchar(25)not null unique, 
    Year_Exam int, 
    Marks int, 
    primary key(Student_No,Subject_No), 
    foreign key(Student_No) references Student(Student_No) , 
    foreign key(Subject_No) references Subject(Subject_No) 
)engine=innodb; 
0

Заменить «результат» таблица запрос с этим

create table IF NOT EXISTS results(Student_No varchar(25) not null unique, Subject_No varchar(25)not null unique, Year_Exam int, Marks int, 
primary key(Student_No,Subject_No), 
foreign key(Student_No) references Student(Student_No),foreign key(Subject_No) references Subject(Subject_No))engine=innodb; 
0

попробовать этот

CREATE DATABASE IF NOT EXISTS UNIVERSITY; 

USE UNIVERSITY; 

CREATE TABLE IF NOT EXISTS STUDENT 
( 
STUDENT_NO VARCHAR(25) NOT NULL UNIQUE, 
STUDENT_NAME VARCHAR(255), 
ADDRESS  VARCHAR(255), 
YEAR_STUDY INT, 
SEX   VARCHAR(5), 
DATE_OF_BIRTH DATE, 
COURSE_NO  VARCHAR(10), 
PRIMARY KEY(STUDENT_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS SUBJECT 
( 
SUBJECT_NO VARCHAR(10) NOT NULL UNIQUE, 
SUBJECT_NAME VARCHAR(255), 
DEPT_NAME VARCHAR(255), 
PRIMARY KEY(SUBJECT_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS RESULTS 
( 
STUDENT_NO VARCHAR(25) NOT NULL UNIQUE, 
SUBJECT_NO VARCHAR(25) NOT NULL UNIQUE, 
YEAR_EXAM INT, 
MARKS  INT, 
PRIMARY KEY(STUDENT_NO, SUBJECT_NO), 
FOREIGN KEY(STUDENT_NO) REFERENCES STUDENT(STUDENT_NO), 
FOREIGN KEY(SUBJECT_NO) REFERENCES SUBJECT(SUBJECT_NO), 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS COURSE 
( 
COURSE_NO VARCHAR(10) NOT NULL UNIQUE, 
TITLE  VARCHAR(255), 
DURATION INT, 
PRIMARY KEY(COURSE_NO) 
) 
ENGINE=INNODB; 

CREATE TABLE IF NOT EXISTS COURSE_SUB 
( 
COURSE_NO VARCHAR(10) NOT NULL UNIQUE, 
SUBJECT_NO VARCHAR(10) NOT NULL UNIQUE, 
PRIMARY KEY(COURSE_NO, SUBJECT_NO), 
FOREIGN KEY(COURSE_NO) REFERENCES COURSE(COURSE_NO), 
FOREIGN KEY(SUBJECT_NO) REFERENCES SUBJECT(SUBJECT_NO) 
) 
ENGINE=INNODB; 
Смежные вопросы