Pratique de conception de tables MySQL : créez un calendrier de cours et un calendrier de sélection des cours des étudiants
Dans le processus de conception de base de données actuel, la conception de tables est l'un des liens clés. Cet article prendra comme exemple la création d'un calendrier de cours et le calendrier de sélection des cours des étudiants pour présenter l'expérience pratique et les compétences de la conception de tables MySQL. Nous utiliserons MySQL comme système de gestion de base de données et fournirons des exemples de code.
Le calendrier des cours est un tableau qui stocke les informations sur les cours. Nous pouvons créer un planning de cours à l'aide de l'instruction SQL suivante :
CREATE TABLE course ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255) NOT NULL, code VARCHAR(10) NOT NULL, credits INT NOT NULL, department_id INT, CONSTRAINT fk_department FOREIGN KEY (department_id) REFERENCES department (id) );
Dans le code ci-dessus, nous utilisons l'instruction CREATE TABLE pour créer une table nommée cours. Le tableau contient les champs suivants :
Le tableau de sélection de cours pour étudiants est un tableau qui stocke les informations de sélection de cours pour étudiants. Nous pouvons utiliser l'instruction SQL suivante pour créer une table de sélection de cours pour étudiants :
CREATE TABLE student_course ( id INT PRIMARY KEY AUTO_INCREMENT, student_id INT, course_id INT, grade FLOAT, CONSTRAINT fk_student FOREIGN KEY (student_id) REFERENCES student (id), CONSTRAINT fk_course FOREIGN KEY (course_id) REFERENCES course (id) );
Dans le code ci-dessus, nous utilisons l'instruction CREATE TABLE pour créer une table nommée student_course. Le tableau contient les champs suivants :
Après avoir créé la structure du tableau, nous pouvons insérer des exemples de données pour tester si la conception du tableau est correcte . Voici un exemple d'insertion de quelques exemples de données :
INSERT INTO course (name, code, credits, department_id) VALUES ('数据库原理', 'CS101', 3, 1), ('计算机网络', 'CS201', 3, 1), ('操作系统', 'CS301', 4, 1), ('数据结构', 'CS401', 3, 1); INSERT INTO student_course (student_id, course_id, grade) VALUES (1, 1, 90), (1, 2, 85), (2, 1, 88), (3, 3, 92), (4, 4, 75);
Dans le code ci-dessus, nous utilisons l'instruction INSERT INTO pour insérer des données dans la table. Plus précisément, nous avons inséré des informations sur quatre cours dans la table des cours et inséré les enregistrements de cinq sélections de cours d'étudiants dans la table student_course.
Une fois la conception de la table terminée, nous pouvons utiliser l'instruction SELECT pour interroger les données de la table. Voici quelques exemples de requêtes courantes :
Requête d'informations sur tous les cours :
SELECT * FROM course;
Requête d'informations sur la sélection de cours d'un étudiant spécifié :
SELECT s.name AS student_name, c.name AS course_name, sc.grade FROM student_course sc JOIN student s ON sc.student_id = s.id JOIN course c ON sc.course_id = c.id WHERE s.id = 1;
Exemple de code ci-dessus Il démontre que les trois tables student_course, student et course sont connectées via l'instruction JOIN, interrogeant les informations de sélection de cours de l'étudiant avec l'ID d'étudiant 1 et affichant le nom de l'étudiant, le nom du cours et les notes.
Résumé :
Grâce à ce cas pratique, nous avons appris à créer un horaire de cours et un tableau de sélection des cours des étudiants, et avons démontré comment créer des tableaux, insérer des données et interroger des données. à travers des exemples de code. Dans la conception réelle d'une base de données, une conception raisonnable des tables peut améliorer l'efficacité du stockage des données et les performances des requêtes. Lors de la conception de la structure de la table, des facteurs tels que les relations entre les données, la sélection du type de données et les paramètres de contrainte de clé étrangère doivent être pris en compte pour garantir l'exactitude et la cohérence des données. J'espère que cet article vous sera utile dans la conception de tables MySQL.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!