数据库实验一 数据库与基本表的数据定义(1)新建数据库(2)新建基本表(3)修改基本表(4)创建索引(5)删除索引

1. 数据库与基本表的数据定义

(1)创建数据库的语句

CREATE DATABASE IF NOT EXISTS jxdb

CHARACTER SET UTF8MB4;

1)创建基本表的语句

CREATE TABLE Students

(Sno CHAR(10) PRIMARY KEY COMMENT '学号',

 Sname VARCHAR(4) NOT NULL COMMENT '姓名',

 Sgender ENUM('男','女') DEFAULT '男' COMMENT '性别',

 Sage INT COMMENT '学生年龄',

 Dno CHAR(2) COMMENT '学院编号',

 Mno CHAR(4) COMMENT '专业编号',

 Sclass CHAR(8) COMMENT '班级编号');

(1)创建基本表的语句

CREATE TABLE Reports

(Sno CHAR(10) COMMENT '学号',

 Cno CHAR(8) COMMENT '课程号',

 Racademicyear YEAR NOT NULL COMMENT '选课学年',

 Rterm CHAR(1) NOT NULL COMMENT '选课学期',

 Grade TINYINT COMMENT '成绩',

 PRIMARY KEY (Sno,Cno)     两个主键的写法

);

1)修改基本表的语句 

(1)将“年龄”字段Sage改为“出生日期”,同时字段名改为Sbirth,数据类型为DATE;

(2)增加一个“生源地”字段,字段名为Snative,数据类型为VARCHAR(20),将该字段放在出生日期Sbirth的后面

ALTER TABLE Students

    CHANGE Sage Sbirth DATE COMMENT '出生日期';

ALTER TABLE Students

    ADD Snative VARCHAR(20) COMMENT '生源地' AFTER Sbirth;

(1)创建索引的语句

1)使用CREATE INDEX语句,在学生表的Mno列上按降序创建普通索引,索引名为IDX_Stu_Mno

CREATE INDEX IDX_Stu_Mno ON Students (Mno DESC);

(1)创建索引的语句 (混合索引)

CREATE INDEX IDX_Rep_Ryear ON Reports (Racademicyear DESC,Rterm ASC);

1)创建索引的语句

ALTER TABLE Teachers

    ADD INDEX IDX_Tea_Tprof(Tprof  ASC, Tbirth DESC);
(1)删除索引的语句

DROP INDEX IDX_Tea_Tprof ON Teachers;

创建外键的语句

(1)ALTER TABLE Department

            ADD CONSTRAINT FK_Dep_Dheader FOREIGN KEY (Dheader) REFERENCES Teachers(Tno);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值