【SQL】2.建立练习数据库test及表

从网上找了一些习题,下面结合网友的建表SQL语句及workbench的使用,将过程分享一下

第一步:建test数据库,全过程与前一篇过程一样,不再进行说明

第二步:建表,共student,course,score,teacher,grade四张表

【SQL】2.建立练习数据库test及表_第1张图片

网友提供的表结构如下所示

CREATE TABLE STUDENT

(SNO VARCHAR(3) NOT NULL,

SNAME VARCHAR(4) NOT NULL,

SSEX VARCHAR(2) NOT NULL,

SBIRTHDAY DATETIME,

CLASS VARCHAR(5))

CREATE TABLE COURSE

(CNO VARCHAR(5) NOT NULL,

CNAME VARCHAR(10) NOT NULL,

TNO VARCHAR(10) NOT NULL)

CREATE TABLE SCORE

(SNO VARCHAR(3) NOT NULL,

CNO VARCHAR(5) NOT NULL,

DEGREE NUMERIC(10, 1) NOT NULL)

NUMERIC即为DECIMAL

CREATE TABLE TEACHER

(TNO VARCHAR(3) NOT NULL,

TNAME VARCHAR(4) NOT NULL, TSEX VARCHAR(2) NOT NULL,

TBIRTHDAY DATETIME NOT NULL, PROF VARCHAR(6),

DEPART VARCHAR(10) NOT NULL)

create table grade(low  number(3,0),upp  number(3),rank  char(1));

NUMBER即为DECIMAL

以student表举例,输入字段名称,点选数据类型即可

【SQL】2.建立练习数据库test及表_第2张图片

自动弹出SQL语句,后期如熟练可自行写好SQL语句后执行

第三步:录入数据

【SQL】2.建立练习数据库test及表_第3张图片

正常来讲,点击表名称后面的表格图标后,出现的界面是可以直接填写数据的,但此次点击后并没有出现能够填写的表格

【SQL】2.建立练习数据库test及表_第4张图片
【SQL】2.建立练习数据库test及表_第5张图片

经查找问题后,发现是因为此表没有设置primary key,在将每个表的唯一字段(如无唯一字段,可单独设置一个序号字段)设置了primary key后,可正常进行数据录入

【SQL】2.建立练习数据库test及表_第6张图片
【SQL】2.建立练习数据库test及表_第7张图片

数据很多,一个一个录入很麻烦,我们可以添加一个SQL表进行录入

【SQL】2.建立练习数据库test及表_第8张图片

下面是也好的insert语句,将语句复制到软件中出现了报错

【SQL】2.建立练习数据库test及表_第9张图片

明明刚才用的是test数据库,为什么报错显示world.student不存在呢,经过排查,发现在建立test数据库后,我没有把它设置成默认数据库,于是我要设置一下

发现仍然报错,这回我将日期字段加了引号,于是数据录入成功

【SQL】2.建立练习数据库test及表_第10张图片
【SQL】2.建立练习数据库test及表_第11张图片

INSERT INTO STUDENT (SNO,SNAME,SSEX,SBIRTHDAY,CLASS) VALUES (108 ,'曾华'

,'男' ,'1977-09-01',95033);

INSERT INTO STUDENT (SNO,SNAME,SSEX,SBIRTHDAY,CLASS) VALUES (105 ,'匡明'

,'男' ,'1975-10-02',95031);

INSERT INTO STUDENT (SNO,SNAME,SSEX,SBIRTHDAY,CLASS) VALUES (107 ,'王丽'

,'女' ,'1976-01-23',95033);

INSERT INTO STUDENT (SNO,SNAME,SSEX,SBIRTHDAY,CLASS) VALUES (101 ,'李军'

,'男' ,'1976-02-20',95033);

INSERT INTO STUDENT (SNO,SNAME,SSEX,SBIRTHDAY,CLASS) VALUES (109 ,'王芳'

,'女' ,'1975-02-10',95031);

INSERT INTO STUDENT (SNO,SNAME,SSEX,SBIRTHDAY,CLASS) VALUES (103 ,'陆君'

,'男' ,'1974-06-03',95031);

INSERT INTO COURSE(CNO,CNAME,TNO)VALUES ('3-105' ,'计算机导论',825)

INSERT INTO COURSE(CNO,CNAME,TNO)VALUES ('3-245' ,'操作系统' ,804);

INSERT INTO COURSE(CNO,CNAME,TNO)VALUES ('6-166' ,'数据电路' ,856);

INSERT INTO COURSE(CNO,CNAME,TNO)VALUES ('9-888' ,'高等数学' ,100);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (103,'3-245',86);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (105,'3-245',75);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (109,'3-245',68);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (103,'3-105',92);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (105,'3-105',88);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (109,'3-105',76);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (101,'3-105',64);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (107,'3-105',91);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (108,'3-105',78);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (101,'6-166',85);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (107,'6-106',79);

INSERT INTO SCORE(SNO,CNO,DEGREE)VALUES (108,'6-166',81);

INSERT INTO TEACHER(TNO,TNAME,TSEX,TBIRTHDAY,PROF,DEPART)

VALUES (804,'李诚','男','1958-12-02','副教授','计算机系');

INSERT INTO TEACHER(TNO,TNAME,TSEX,TBIRTHDAY,PROF,DEPART)

VALUES (856,'张旭','男','1969-03-12','讲师','电子工程系');

INSERT INTO TEACHER(TNO,TNAME,TSEX,TBIRTHDAY,PROF,DEPART)

VALUES (825,'王萍','女','1972-05-05','助教','计算机系');

INSERT INTO TEACHER(TNO,TNAME,TSEX,TBIRTHDAY,PROF,DEPART)

VALUES (831,'刘冰','女','1977-08-14','助教','电子工程系');

INSERT INTO grade VALUES(90,100,’A’);

INSERT INTO grade VALUES(80,89,’B’);

INSERT INTO grade VALUES(70,79,’C’);

INSERT INTO grade VALUES(60,69,’D’);

INSERT INTO grade VALUES(0,59,’E’);

第四步:致此,数据准备完毕

【SQL】2.建立练习数据库test及表_第12张图片
【SQL】2.建立练习数据库test及表_第13张图片

你可能感兴趣的:(【SQL】2.建立练习数据库test及表)