Mysql数据库第四次作业

mysql> create table student(sno int primary key auto_increment,sname varchar(30) not null unique,Ssex varchar(2) check (Ssex='男' or Ssex='女') not null,Sage int not null,Sdept varchar(10) default'计算机' not null);

mysql> create table Course(Con int primary key not null,Cname varchar(20) not null);

mysql> create table SC(Sno int not null,Cno varchar(10) primary key not null,score int not null);

1.修攻student表中年龄(sage)字段属性,数据类型由int改变为smallint

将表中的年龄的数据类型由int改变为smallint

mysql> alter table student change Sage Sage smallint;

使用命令查看student表的结构是否改变

mysql> desc student;

2.为Course表中cno课程号字段设置索引,并查看索引

mysql> create unique index Course_index on Course(Con);

使用查询Course张表中索引情况

mysql> show index from Course;

3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引索引名为SC_INDEX

查看SC表

删除主键,后才可以添加两个主键

mysql> alter table SC drop primary key;

添加主键

mysql> alter table SC add primary key(Sno,Cno);

创建主键索引索引名为SC_INDEX

mysql> create index SC_INDX on SC(Sno asc,Cno asc);

使用命令查看SC表中索引情况

mysql> show index from SC;

4.创建一视图stu_info,查询全体学生的姓名,性别,课程名,成绩

mysql> create view stu_info as select student.sname,student.Ssex,Course.Cname,SC.score from student,SC,Course where student.sno=SC.Sno and SC.Sno=Course.Con;

使用命令查询show tables,视图的创建超过

使用命令查看表的结构创建

mysql> desc stu_info;

5.删除所有索引

mysql> drop index SC_INDX on SC;

mysql> drop index Course_index on Course;

相关推荐
modelmd2 分钟前
mysql not in 查询引发的bug问题记录
sql·mysql
神仙别闹9 分钟前
基于C#+SQL Server实现(Web)学生选课管理系统
前端·数据库·c#
m0_6530313625 分钟前
PostgreSQL技术大讲堂 - 第97讲:PG数据库编码和区域(locale)答疑解惑
数据库·postgresql
会编程的林俊杰43 分钟前
MySQL中的锁有哪些
数据库·mysql
cts6181 小时前
Milvus分布式数据库工作职责
数据库·分布式·milvus
周胡杰1 小时前
鸿蒙加载预置数据库-关系型数据库-如何读取本地/预制数据库
数据库·华为·harmonyos·鸿蒙
布朗克1681 小时前
java常见的jvm内存分析工具
java·jvm·数据库
胡八一1 小时前
SQLite / LiteDB 单文件数据库为何“清空表后仍占几 GB”?——原理解析与空间回收实战
jvm·数据库·sqlite
2401_831501732 小时前
Linux之Zabbix分布式监控篇(二)
数据库·分布式·zabbix
秋林辉3 小时前
Jfinal+SQLite处理 sqlite数据库执行FIND_IN_SET报错
jvm·数据库·sqlite