实验2 创建数据库和表
目的和实验要求:
(1)了解MySQL数据库中的存储引擎分类
(2)了解表的结构特点
(3)了解MySQL的基本数据类型
(4)了解空值的概念
(5)学会在MySQL界面工具中创建数据库和表
(6)学会使用SQL语句创建数据库和表
实验内容:
注意:
(1)实验中所有表创建时命名须加学生姓名前缀,如学生张三,ZhangS_Employees,ZhangS_Departments,ZhangS_Salary,否则实验不得分。
(2)及时保存相关命令方便验证命令运行结果。
(3)每道题目给出代码和对应的运行结果截图!!!!(截图清晰,便于评阅)
1.实验题目
创建用于企业用于管理的员工管理数据库,数据库名为YGGL,包含员工的信息,部门信息,及员工的薪水信息。数据库YGGL包含下列三个表:
(1)Employees:员工信息表
(2)Departments:部门信息表
(3)Salary:员工薪水情况表
表实验2.1 Employees表结构
列名 数据类型 长度 是否允许空值 说明
Employees char 6 否 员工编号,主键
name char 10 否 姓名
education char 4 否 学历
birthday date 16 否 出生日期
sex char 2 否 性别
workyear tinyint 1 是 工作时间
address varchar 20 是 地址
phonenumber char 12 是 电话
departmentID char 3 否 员工部门号,外键
表实验2.2 Departments表结构
列名 数据类型 长度 是否允许空值 说明
departmentID char 3 否 部门编号,主键
departmentName char 20 否 部门名
note text 16 是 备注
表实验2.3 Salary表结构
列名 数据类型 长度 是否允许空值 说明
employmeeID char 6 否 员工编号,主键
Income float 8 否 收入
Outcome float 8 否 支出
2.实验准备
首先要明确,能够创建数据库的用户必须是数据管理员,或是被授权使用CREATE DATEBASE语句的用户。
其次,确定数据库包含哪些表,以及所包含的个表的数据结构,还要了解MySQL的常用数据类型,以及创建数据库的表。
此外还要了解两种常用的创建数据、表的方法,即在界面管理工具中创建和使用CREAT DATEBASE 语句创建。
实验步骤:
1.使用命令行方式创建数据库YGGL。
(1)打开MySQL command line client,输入管理员密码登录,使用CREATE语句创建YGGL数据库。(5分)

Create database YGGL;

(2)在YGGL数据库存在的情况下,使用CREAT DATEBASE语句新建数据库YGGL,查看错误信息,再尝试加上IF NOT EXISTS关键词创建YGGL,看看有什么变化。(5分)

create database  if  not  exists  yggl ;

使用命令方法修改数据库YGGL,要求数据库字符集为utf8,校对规则为utf8_general_ci。(5分)
说明:utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写。utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感。utf8_general_cs区分大小写,cs为case sensitive的缩写,即大小写敏感。

alter database yggl default character set utf8;
alter database yggl default collate utf8_general_ci;

(3)使用SQL语句在YGGL数据库中创建表Employees:员工信息表、Departments:部门信息表、Salary:员工薪水情况表。(每个表10分,共30分)
执行创建表Employees的Sql语句:

CREATE TABLE ZhangYK_Employees(
Employees char(6) NOT NULL PRIMARY KEY,
name char(10) not null,
education char(4) not null,
brithday date not null,
sex char(2) not null,
workyear TINYINT(1),
address VARCHAR(20),
phonenumber char(12),
departmentID CHAR(3) NOT NULL,
FOREIGN KEY(departmentID) REFERENCES ZhangYK_Departments(departmentID)
)

执行创建表Departments的Sql语句:

CREATE TABLE ZhangYK_Departments(
departmentID char(3) not null PRIMARY KEY,
departmentName char(20) not NULL,
note text(16)
)

执行创建表Salary的Sql语句:

CREATE TABLE ZhangYK_Salary(
employmeeID char(6) not NULL PRIMARY KEY,
Income float(8) not NULL,
Outcome float(8) not NULL
)

(4)通过“复制”的方式创建一个和employees同样结构的“employees1”表。(5分)

create table ZhangYK_employees1 select *from ZhangYK_employees

3使用SQL语句删除表和数据库
(1)删除表employmees。(5分)

drop table ZhangYK_employees;

(2)使用命令行将表Emloyees1中的Emailaddress列删除,并将Sex列的默认值修改为男。(10分)

alter table ZhangYK_employees1 drop address;

(3)将Emloyees1表的存储引擎更改为MyISAM类型。(5分)

alter table ZhangYK_Employees1 engine=myisam;

(4)删除数据库YGGL。(5分)

drop database yggl;

思考题:
(1) MySQL中的数据文件有几种?扩展名分别是什么?(查阅资料)(5分)

.frm文件 .MYD文件 .MYI文件 .ibd文件

(2) 什么是数据库的存储引擎?MySQL有哪些存储引擎?(10分)

存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。

MyISAM存储引擎、innoDB存储引擎、MEMORY存储引擎、ARCHIVE存储引擎。

(3) 在定义基本表语句时,NOT NULL参数的作用是什么?(5分)

不允许出现空值

(4) 主码可以建立在“值可以为NULL”的列上吗?简要说明理由。(5分)
不行 主码的定义为不能为空且唯一,若值为空,主码不能建立

实验小结:了解了表的创建,表的复制等知识

实验2《MySQL数据库原理与应用》相关推荐

  1. 形考任务一在mysql创建数据库及表_数据库运维 形考任务1 实验1 MySQL数据库服务器配置...

    实验1 MySQL数据库服务器配置 1.实验目的 掌握MySQL的安装方法,练习MySQL数据库服务器的使用,理解MySQL服务器的组成,掌握MySQL服务器的配置方法. 2.实验内容 [实验1-1] ...

  2. 《MySQL数据库原理、设计与应用》课后习题及答案 黑马程序员编著

    <MySQL数据库原理.设计与应用>课后习题及答案 黑马程序员编著 答案有文档形式,但是csdn必须要下载,,需要的人就去那里下载吧.<MySQL数据库原理.设计与应用>课后习 ...

  3. mysql数据库原理实验报告_数据库原理实验报告(Mysql).doc

    数据库原理实验报告(Mysql).doc 实验项目列表 序号实验项目名称指导教师1实验一 数据库的定义实验(验证性)2实验二 数据库的建立和维护实验(验证性)3实验三 数据库的查询实验(验证性)4实验 ...

  4. mysql的触发器实验报告_数据库原理实验报告s11-数据库触发器的创建.doc

    数据库原理实验报告s11-数据库触发器的创建.doc 数据库管理系统SQLSERVER实验报告第1页2011年5月4日实验11数据库触发器的建立实验日期和时间20141128实验室软件工程室班级12计 ...

  5. mysql数据库原理分析

    一提到关系型数据库,我禁不住想:有些东西被忽视了.关系型数据库无处不在,而且种类繁多,从小巧实用的 SQLite 到强大的 Teradata .但很少有文章讲解数据库是如何工作的.你可以自己谷歌/百度 ...

  6. Mysql实验报告--实验一 Mysql数据库基本操作

    在这个系列会更新一些最近老师要求写的实验报告~ 大家尽量对着我的文章做一个参考,不要盲目的cv,毕竟这个对于我们以后的工作学习还是十分重要的. 一.实验目的与任务 目的:掌握MYSQL中数据库操作的命 ...

  7. MySQL数据库实验二 MySQL数据库和表

    一.实验项目: MySQL数据库和表. 二.实验目的 1.掌握MySQL数据库的创建.修改.删除和查看. 2.掌握表的创建.修改.删除和查看. 3.掌握表中记录的插入.修改和删除操作. 4.掌握完整性 ...

  8. mysql数据库原理及设计_MySQL数据库原理、设计与应用

    内容简介 本书是面向MySQL数据库初学者推出的一本入门教材,以通俗易懂的语言.丰富实用的案例,详细讲解了MySQL的开发和管理技术. 全书共12章.第1章讲解了数据库基本概念和MySQL的安装步骤: ...

  9. MYSQL数据库原理与应用-个人总结(上)

    序言 此复习为个人整理的有关MySql的复习,大量知识点来自老师上课复习.个人总结.以及部分网上资料,以便能够提供给自己复习时的内容.此资料含有大量的执行语句,并且每一条都是自己亲自试验,只得没问题之 ...

最新文章

  1. SAP EWM - 物料主数据 - EWM系统存储视图属性
  2. 【tensorflow】tensorflow -gpu安装及jupyter环境更改
  3. SQLite学习手册(目录)
  4. linux pclint配置_静态分析工具PC-lint Plus使用教程:安装与配置
  5. MySQL 这三道必问面试题,你都会吗?
  6. NFC技术:Android中的NFC技术
  7. 集体智慧编程(5)——优化
  8. java情话代码,程序员浪漫的二进制表白代码
  9. java环境已经弄好jar文件还是打不开解决方法
  10. i217lm网卡驱动linux,英特尔I217-LM网卡驱动Windows10
  11. [OpenAirInterface实战-16] :OAI 软件无线电USRP X300/X310硬件详解
  12. Mac 上的 iOS App 可用性(IOS APP availability on Mac)
  13. C语言基础入门48篇_26_身份证号校验程序(以身份证的校验方式是实例加深对数组及函数封装的理解、字符-‘0‘得到字符对应的int类型数字)
  14. jquery的$().each(function(i){})和和$.each(,function(i,n){})的区别和用法
  15. Mybatis缓存机制(一级缓存、二级缓存、三级缓存)
  16. matlab抗混叠滤波器,试验四音频抗混叠滤波器设计.doc
  17. 白盒测试重点复习内容
  18. ae制作小球轨迹运动_在AE里如何让物体沿着路径运动?
  19. kettle学习教程
  20. 定时任务@Scheduled(cron = “* * * * * *“) cron表达式

热门文章

  1. 开放式运动耳机好不好用,五款最好用的骨传导耳机推荐
  2. C++超市商品管理系统设计最新版
  3. 【Canvas】JavaScript用Canvas制作美丽的对称图案
  4. MongoDB系列之添加账号和密码
  5. C语言负整数在内存中的存储
  6. 在vscode中配置LeetCode插件,从此愉快地刷题
  7. 记一次微信小程序canvas 2d 生成海报问题
  8. ggplot2作图之PcoA
  9. X509和CA的关系
  10. 3分频器 verilog解析