mysql, use declaraciones sql para crear tablas básicas de la base de datos del curso de estudiantes

Primero, prepare tres tablas: tabla de estudiantes, tabla de cursos y tabla de selección de cursos SC.

mesa de estudiantes Identificación del Estudiante Nombre edad género Departamento
Alumno nieve se quita Sabio sexo departamento
Horario de clase Numero de curso Nombre del curso Lección preliminar crédito
Curso cno nombre cpno Él cree
tabla de selección de cursos Identificación del Estudiante Numero de curso puntaje
CAROLINA DEL SUR nieve cno Calificación

La declaración SQL crea una tabla.

-- 删除表
DROP TABLE IF EXISTS Student;
-- 创建表
CREATE TABLE Student(
Sno CHAR(9) PRIMARY KEY,-- 学号 主键
Sname VARCHAR(20) NOT NULL,-- 姓名 非空且唯一
Sage INT NOT NULL,-- 年龄
Ssex VARCHAR(5) NOT NULL,-- 性别
Sdept VARCHAR(10) NOT NULL -- 所在系
)charset=utf8;
-- 删除表
DROP TABLE IF EXISTS Course;
-- 创建表
CREATE TABLE Course(
Cno CHAR(5) PRIMARY KEY,-- 课程号 主键
Cname VARCHAR(20) NOT NULL ,-- 课程名 非空
Cpno VARCHAR(20)  NOT NULL,-- 先行课
Ccredit Double(5,2) NOT NULL-- 学分
)charset=utf8;
-- 删除表
DROP TABLE IF EXISTS SC;
-- 创建表
CREATE TABLE SC(
Sno CHAR(9),-- 学号 主键
Cno CHAR(5),-- 课程号 主键
Grade INT NOT NULL, -- 成绩
foreign key(Sno) references Student(Sno),
foreign key(Cno) references Course(Cno)
)charset=utf8;

Tenga en cuenta que al crear una tabla, debe prestar atención al nombre del campo, tipo, longitud, restricciones y rangos de valores. Los símbolos en mayúsculas y minúsculas deben ser correctos. Se deben distinguir las comas chinas, el punto y coma y el inglés. A veces, las declaraciones SQL no se puede ejecutar Tal vez me perdí un determinado signo de puntuación o lo escribí mal.

Aquí Sno y Cno son las claves principales de la tabla de estudiantes y la tabla de cursos respectivamente, pero también son las claves externas de SC. Las restricciones de clave externa deben escribirse aquí.

Insertar datos

INSERT INTO Student
(Sno,Sname,Sage,Ssex,Sdept) VALUES
('20211127','殷郊',22,'男','数学系'),
('20211128','姬发',20,'男','农业系'),
('20211129','苏妲己',18,'女','外语系'),
('20211130','崇应彪',23,'男','体育系')


INSERT INTO Course
(Cno,Cname,Cpno,Ccredit) VALUES
('1001','数据库原理及应用','数据结构',2),
('2002','LINUX操作系统与程序设计','操作系统',4),
('3003','离散数学','高等数学',2),
('4004','Java程序设计语言','c语言和c++语言',2),
('5005','网络安全','计算机网络',4)
INSERT INTO SC
(Sno,cno,Grade) VALUES
('20211127','1001',98),
('20211127','2002',96),
('20211127','3003',95),
('20211127','4004',90),
('20211127','5005',93),
('20211128','1001',98),
('20211128','2002',96),
('20211128','3003',95),
('20211128','4004',90),
('20211128','5005',93),
('20211129','1001',98),
('20211129','2002',96),
('20211129','3003',95),
('20211129','4004',90),
('20211129','5005',93),
('20211130','1001',98),
('20211130','2002',96),
('20211130','3003',95),
('20211130','4004',90),
('20211130','5005',93)

Consultar tabla de datos.

-- 查询表所有
select * from Student;
select * from Course;
select * from SC;

resultado

 

 

 También puedes consultar varias tablas.

-- 多表查询,
-- 查询表 Student和SC
SELECT SC.Sno AS 学生学号 ,Student.Sname AS 学生姓名,Student.Ssex AS 学生性别 Student.Sdept AS 学生院系,SC.Cno AS 选择课程号,SC.Grade AS 课程成绩
FROM SC,Student
WHERE SC.Sno=Student.Sno;
-- 查询表 course 和 SC
SELECT SC.Sno AS 学生学号 ,SC.Cno AS 选择课程号,Course.Cname AS 学生课程名, Course.cpno AS 学生先行课, Course.Ccredit AS 课程学分, SC.Grade AS 课程成绩
FROM SC,Course
WHERE SC.Cno=Course.Cno;
-- 查询表 course 和 SC 和 Student
SELECT SC.Sno AS 学生学号 ,Student.Sname AS 学生姓名,Student.Ssex AS 学生性别, Student.Sdept AS 学生院系,
SC.Cno AS 选择课程号,Course.Cname AS 学生课程名, Course.cpno AS 学生先行课, Course.Ccredit AS 课程学分,SC.Grade AS 课程成绩
FROM SC,Student,Course
WHERE SC.Sno=Student.Sno AND SC.Cno=Course.Cno AND SC.Sno= 20211127;

Aquí, si estás interesado, pruébalo tú mismo.

Modificar tabla de datos (ejemplo único)


-- 修改语句 单个示例
update Student set Sname='姜子牙' where Sno='20211127';
-- 删除语句,单个示例
-- 这里删除不了是因为外键约束的问题
delete from Student where Sno='20211127';

recordatorio final

Si se produce un error durante la operación final, puede deberse a las restricciones de clave externa establecidas en la tabla SC.

 Puede informar este error porque los datos y la tabla que desea eliminar tienen relaciones de clave primaria y externa con otros datos o tablas. MYSQL estipula

Para mantener la estabilidad de la estructura de la tabla, esta operación está prohibida, es decir, la restricción de clave externa falla. La solución es eliminar la tabla con la restricción de clave externa y luego volver a ejecutar otras tablas de datos o cancelar la asociación de clave externa y luego realice operaciones de agregar, eliminar, modificar y consultar y luego restablecer la asociación de clave externa.

Supongo que te gusta

Origin blog.csdn.net/yangkeOK/article/details/132509470
Recomendado
Clasificación