SQL编程——MySQL数据库基本操作

本文基于mysql5.7,通过学生-课程-成绩的案例介绍数据库设计,包括E-R模型和表的设计。此外,文章还展示了如何进行数据的增删改操作,并重点讲解了利用存储过程进行批量数据插入及在插入时应用随机函数的方法。
摘要由CSDN通过智能技术生成

实验平台:mysql5.7,
案例:学生-课程-成绩
实际的数据库设计可能和课本中有出入
E-R如下:
这里写图片描述
代码如下:
一、表设计

#1. 数据库创建
DROP DATABASE IF EXISTS scoredb;
CREATE DATABASE scoredb;
#2. 创建表
#1) 创建新表
USE scoredb;
CREATE TABLE student
(
        student_id SMALLINT UNSIGNED NOT NULL,
        student_name VARCHAR(50) NOT NULL,
        student_sex TINYINT(1) NOT NULL DEFAULT 0,
        student_phone VARCHAR(50) DEFAULT NULL,
        student_addr_id SMALLINT UNSIGNED NOT NULL,
        PRIMARY KEY (student_id)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
#2) 根据已有的表创建新表
USE scoredb;
-1. CREATE TABLE student like student_info;
-2. CREATE TABLE student AS SELECT student_info.student_id,
    student_info.student_name, student_info.student_sex,
    student_info.student_phone, student_info.student_addr_id
    FROM student_info;
#3. 删除表
USE scoredb;
DROP TABLE student_info;
#4 修改表
USE scoredb;
ALTER TABLE student ADD COLUMN depart_id SMALLINT UNSIGNED NOT NULL;
ALTER TABLE student ADD PRIMARY KEY(student_id);
ALTER TABLE student DROP PRIMARY KEY(student_id);
#5 创建其他相关表
USE scoredb;
CREATE TABLE address
(
    addr_id SMALLINT UNSIGNED NOT NULL,
    addr_info VARCHAR(100) NOT NULL,
    PRIMARY KEY(addr_id)
) ENGINE=INNODB,CHARSET=utf8;
create TABLE department
(
    depart_id SMALLINT UNSIGNED NOT NULL,
    depart_name VARCHAR(100) NOT NULL,
    PRIMARY key(depart_id)
) ENGINE=INNODB,CHARSET=utf8;
create 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值