数据库实验一-----创建数据库和表

《数据库原理》课实验报告
实验一      创建数据库和表 
1.1 实验目的
1. 掌握MySQL下创建、修改、删除数据库和表的方法;
2. 掌握查看数据库及其构成、数据库文件、数据库引擎、数据库对象、字符集、校对规则等应用;
3. 掌握数据库对象命名规则、数据类型的选择、索引使用规则等。
1.2 实验内容
1. 创建数据库stu后,查看数据库,查找数据库文件所在位置,修改数据库stu字符集为gbk,校对
规则为gbk_chinese_ci;
打开命令窗口输: mysql -h localhost -u root -p
创建数据库: create database stu;
查看数据库文件位置:show global variables like “%datadir%”;
修改数据库字符集及校队规则:alter database stu character set gbk collate gbk_chinese_ci;


2. 使用数据库stu,创建如课本P79图3.2所示的三个表;
(一)、创建student表
Create table stu.stu_student(
Sno char(9) not null,
Sname char(20) null,
Ssex char(2) null,
Sage smallint null,
Sdept char(20) null,
Primary key(sno),
Unique index sname_unique(sname asc)visible);


添加数据到student表
Insert into stu.stu_student (sno, sname, ssex, sage, sdept)
VALUES (‘201215121’, ‘李勇’, ‘男’, ‘20’, ‘CS’),
             (‘201215122’, ‘刘晨’, ‘女’, ‘19’, ‘CS’),
             (‘201215123’, ‘王敏’, ‘女’, ‘18’, ‘MA’),
             (‘201215125’, ‘张立’, ‘男’, ‘19’, ‘IS’);


(二)、创建课程表:
Create table stu.stu_course(
Cno char(4) not null,
Cname char(40) not null,
Cpno char(4) not null,
Ccredit smallint null,
Primary key(cno));


添加数据到course表:
insert into stu.stu_course(cno,cname,cpno,ccredit) values('1','数据库','5','4');
(cno,cname,cpno,ccredit) values('2','数学','2','2'),
(cno,cname,cpno,ccredit) values('3','信息系统','1','4'),
(cno,cname,cpno,ccredit) values('4','操作系统','6','3'),
(cno,cname,cpno,ccredit) values('5','数据结构','7','4'),
(cno,cname,cpno,ccredit) values('6','数据处理','2','2'),
(cno,cname,cpno,ccredit) values('7','PASCAL语言','6','4');


(三)、创建sc表:
Create table stu.stu_sc(
Sno char(9) not null,
Cno char(4) not null,
Grade smallint null,
Primary(key(sno,cno));


将数据添加到sc表:
Insert into stu.stu_sc(sno,cno,grade) values(‘201215121’,’1’,’92’),
(‘201215121’,’2’,’92’),
(‘201215121’,’3’,’92’),
(‘201215122’,’2’,’92’),
(‘201215122’,’3’,’92’);


3. 复制表Student的表结构给新表sbak,修改Sage,列名为Syear,数据类型为datetime;

复制表student的表结构给sbak:      create table stu.sbak like stu.stu_student;

修改Sage为Syear:      ALTER TABLE stu.sbak CHANGE Sage Syear SMALLINT;

修改数据类型:ALTER TABLE stu.sbak MODIFY COLUMN Syear datetime;

4. 查看表及sbak的表结构;

查看表及表结构:desc stu.sbak;

5. 在表sbak上的Sdept列创建索引,并查看索引详情。

创建索引并查看索引详情:

Alter table stu.sbak add index sbak_1 (sdept);

show index from stu.sbak;

1.3 实验心得

经过一段时间的《数据库系统概论》的学习,我基本上掌握了创建数据库以及对数据库的操作的基础知识。

在本次创建数据库和表的实验中,我深刻意识到理论知识还要经过实践操作才会有更深的狸解。在创建表的时候,出现了"此数据库缺少一个或多个使用数据库关系图所需的支持对象",这时我要考虑是否创建它们。后来下一步操作中我在输入表的数据类型输入错误,所以就删除了错误的表,对数据进行重新输入,但在后来查阅料时我才认识们原有的表虽然删除了,数据和表名还是保存在数据库系统中的,重新建立的表的表名就和之前的重名了,需要区别于第一个表。

其次是在将数据导入到相应的表中,我也只会一行行的输入数据,以后通过自己学习能够一次性导入多行多列数据,这样在实际生活工作中才能真正.快捷,的解决生活工作等大数据的问题。

此次创建数据库和表的实验让我对《数据库原理》这门课程获有了更新的感悟和认识,我会在以后前学习和实践中不断完善、提升自己。

  • 31
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gluu算法大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值