当前位置:   article > 正文

MySQL编程-数据库和表的管理_创建数据库 student course

创建数据库 student course

实验目的

  1. 了解MySQL数据库的逻辑结构和物理结构的特点。
  2. 学会使用SQL语句创建、选择、删除数据库。
  3. 学会使用SQL语句创建、修改、删除表。
  4. 学会使用SQL语句对表进行插入、修改和删除数据操作。
  5. 了解MySQL的常用数据类型。

实验内容

使用SQL语句创建数据库studb

语句:

CREATE DATABASE studb;
  • 1

结果:
在这里插入图片描述

使用SQL语句选择studb为当前使用数据库

语句:

USE studb;
  • 1

使用SQL语句在studb数据库创建数据表student、course、sc

语句

#建立表
CREATE TABLE `student` (
	sno CHAR ( 4 ) NOT NULL,
	sname CHAR ( 8 ),
	ssex CHAR ( 2 ),
	sbirth DATE,
	saddress VARCHAR ( 50 ),
	PRIMARY KEY ( sno )	#末句不能有逗号

);

CREATE TABLE `course`(
	cno CHAR(4) PRIMARY KEY,	# 主键默认非空
	cname VARCHAR(50) UNIQUE,
	ccredit int 
	
);

CREATE TABLE `sc`(
	sno CHAR(4) ,
	cno CHAR(4) ,
	grade int CHECK(grade>=0 AND grade<=100),
	PRIMARY KEY(sno,cno),
	FOREIGN KEY(sno) REFERENCES `student`(sno) 
);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

结果:
3个表

使用SQL语句INSERT向studb数据库的student、course、sc表插入数据

INSERT INTO student VALUES
('0001','张青平','男','2000-10-01','衡阳市东风路77号');

INSERT INTO student 
(sno, sname, ssex, sbirth, saddress)
VALUES
('0002','刘东阳',	'男',	'1998-12-09',	'东阳市八一北路33号'),
('0003','马晓夏',	'女',	'1995-05-12',	'长岭市五一路763号'),
('0004','钱忠理','男','1994-09-23','滨海市洞庭大道279号'),
('0005','孙海洋','男','1995-04-03','长岛市解放路27号'),
('0006','郭小斌','男','1997-11-10','南山市红旗路113号'),
('0007','肖月玲','女','1996-12-07','东方市南京路11号'),
('0008','张玲珑','女','1997-12-24','滨江市新建路97号');

INSERT INTO `course`
(cno, cname, ccredit)
VALUES
('0001',	'计算机应用基础',	'2'),
('0002',	'C语言程序设计',	'2'),
('0003',	'数据库原理及应用',	'2'),
('0004',	'英语',	'4'),
('0005',	'高等数学',	'4');

INSERT INTO `sc`
(sno, cno, grade)
VALUES
('0001',	'0001',	'80'),
('0001',	'0002',	'91'),
('0001',	'0003',	'88'),
('0001',	'0004',	'85'),
('0001',	'0005',	'77'),
('0002',	'0001',	'73'),
('0002',	'0002',	'68'),
('0002',	'0003',	'80'),
('0002',	'0004',	'79'),
('0002',	'0005',	'73'),
('0003',	'0001',	'84'),
('0003',	'0002',	'92'),
('0003',	'0003',	'81'),
('0003',	'0004',	'82'),
('0003',	'0005',	'75');

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42

结果:
3个表插入后内容

使用SQL语句修改课程表的课程名称列,使之允许为空

#修改课程表的课程名称列,使之允许为空
ALTER TABLE course 
MODIFY cname VARCHAR(50) NULL;

  • 1
  • 2
  • 3
  • 4

使用SQL语句修改成绩表的分数列,使其数据类型为定点小数,整数5位,小数1位

ALTER TABLE sc
MODIFY grade DECIMAL(5,1);
  • 1
  • 2

使用SQL语句为学生表添加一个名为备注comment的数据列,其数据类型为长度为50的变长字符

ALTER TABLE student 
ADD `comment` VARCHAR(50); 

  • 1
  • 2
  • 3

使用SQL语句删除学生表的备注列

ALTER TABLE student 
DROP `comment`;

  • 1
  • 2
  • 3

使用SQL语句向学生表添加“入学时间comedate列,其数据类型为日期型,默认值为当前日期

ALTER TABLE student
ADD `comedate` DATE DEFAULT(CURRENT_DATE);
  • 1
  • 2

使用SQL语句在学生表上按出生日期升序创建索引

CREATE UNIQUE INDEX sbir ON student(sbirth ASC);
  • 1

使用SQL语句删除学生表上出生日期上的索引

ALTER TABLE student 
DROP INDEX sbir;

  • 1
  • 2
  • 3

使用SQL语句删除学生表、课程表、选课表

DROP TABLE sc,course,student
  • 1

使用SQL语句删除STUDB数据库

DROP DATABASE studb;
  • 1

注意

1.建立表时,CREATE TABLE()括号内最后一条语句结尾不能带有逗号,否则会报错。
2.向表插入值时,应注意将各个值以逗号隔开,值用单引号包围,若有指定要插入的属性,则所填写的值也应与属性对应。
3.删除索引时,应先选中待删除索引所在的表。
4.在设置表中属性的默认值时,DEFAULT语句后若是表达式,则应在DEFAULT语句后加上括号,表达式置于括号内。

总结

1.本次实验初步了解了MySQL建立、选中、删除数据库,创建表,修改表属性,插入值等语句的基本使用方式,认识了一些基本的数据类型,如VARCHAR、DECIMAL、DATE等,
还了解了一些内置的日期语句如NOW()、SYSDATE()、CURRENT_DATE。

2.初步认识了Navicat这一数据库操作工具,掌握了在Navicat创建连接以操作数据库的方法。

3.MySQL的数据库操作语句有一定的语法格式要求,如语句结束的分号,建立表时各个建立属性语句间的逗号,但对关键字的大小写没有严格的限制。

来源

本科课程实验报告的部分内容

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号