zoukankan      html  css  js  c++  java
  • 搭建一个简易的成绩管理系统的数据库

    题目

    搭建一个简易的成绩管理系统的数据库

    介绍

    现需要构建一个简易的成绩管理系统的数据库,来记录几门课程的学生成绩。数据库中有三张表分别用于记录学生信息、课程信息和成绩信息。

    数据库表的数据如下:

    学生表(student):学生 id 、学生姓名和性别

    此处输入图片的描述

    课程表:课程 id 和课程名

    此处输入图片的描述

    成绩表:成绩 id 、学生 id 、课程 id 和分数

    此处输入图片的描述

    服务器中的 MySQL 还没有启动,请注意 MySQL 的 root 账户默认密码为空。

    目标

    1.MySQL 服务处于运行状态

    2.新建数据库的名称为 gradesystem

    3.gradesystem 包含三个表:student、course、mark;

    • student 表包含3列:sid(主键)、sname、gender;
    • course 表包含2列:cid(主键)、cname;
    • mark 表包含4列:mid(主键)、sid、cid、score ,注意与其他两个表主键之间的关系。

    4.将上述表中的数据分别插入到各个表中

    提示

    • 建立表时注意 id 自增和键约束
    • 每个表插入语句可通过一条语句完成

    解法

    启动mysql:

    sudo service mysql start
    mysql -u root

    创建一个名为gradesystem的数据库:

    create database gradesystem;
    use gradesystem;

    创建student表:

    create table student
    (
        sid int(10)primary key,
        sname char(10),
        gender char(10)
    );

    创建course表:

    create table course
    (
        cid int(10)primary key,
        sname char(10)
    );
    

      

    创建mark表:

    create table mark
    (
        mid int(10)primary key,
        sid int(10),foreign key (sid) references student(sid),
        cid int(10),foreign key (cid) references course(cid),
        score int(100)
    );
    

      

    student插入数据:

    insert into student values(1,'Tom','male');
    insert into student values(2,'Jack','male');
    insert into student values(3,'Rose','female');

    course插入数据:

    insert into course values(1,'math');
    insert into course values(2,'physics');
    insert into course values(3,'chemistry');
    

      

    mark插入数据:

    insert into mark values(7,1,3,95);
    insert into mark values(8,2,3,75);
    insert into mark values(9,3,3,85);
    

      

    最后可以查看这三张表:

    select * from student;
    /*
    +-----+-------+--------+
    | sid | sname | gender |
    +-----+-------+--------+
    |   1 | Tom   | male   |
    |   2 | Jack  | male   |
    |   3 | Rose  | female |
    +-----+-------+--------+
    */
    select * from course;
    /*
    +-----+-----------+
    | cid | sname     |
    +-----+-----------+
    |   1 | math      |
    |   2 | physics   |
    |   3 | chemistry |
    +-----+-----------+
    */
    select * from mark;
    /*
    +-----+------+------+-------+
    | mid | sid  | cid  | score |
    +-----+------+------+-------+
    |   7 |    1 |    3 |    95 |
    |   8 |    2 |    3 |    75 |
    |   9 |    3 |    3 |    85 |
    +-----+------+------+-------+
    */
    

      

  • 相关阅读:
    求职简历撰写要点和模板分享
    find命令
    MD5Init-MD5Update-MD5Final
    Linux find命令详解
    Linux进程KILL不掉的原因
    Linux操作系统的内存使用方法详细解析
    Lsof命令详解
    为什么ps中CPU占用率会有超出%100的现象?
    第12课 经典问题解析一
    第11课 新型的类型转换
  • 原文地址:https://www.cnblogs.com/Reindeer/p/9015835.html
Copyright © 2011-2022 走看看