任务一 创建数据库和表


@


班级 姓名
软件工程16-9班 洪燕妮

【实训目的与要求】

1、安装MySQL系统,了解MySQL环境;
2、利用MySQL命令行窗口创建数据库及表;
3、利用界面工具创建数据库及表;
4、完整性约束设计。

【实训原理】

DBMS环境的使用

【实训步骤】

一、熟悉MySQL环境

1.检查软硬件配置是否达到MySQL的安装要求。
(1)硬件
(2)软件
2.安装数据库管理系统MySQL服务器。

3.练习用不同的方法启动MySQL服务。
(1).通过Windows服务管理器启动MYSQL服务

(2).通过DOS命令启动MYSQL服务

4.登录MySQL服务器。

5.认识MySQL界面工具:Navicat for MySQL客户端工具


6.利用MySQL客户端访问数据库
(1)使用SHOW语句查看系统中已有的数据库:
命令:show databases;

(2)使用USE语句选择MySQL数据库为当前数据库:
命令:use mysql;

(3)使用SHOW TABLES语句查看当前数据库中的表:
命令:show databases;


二、利用MySQL命令行窗口创建数据库及表

1.使用命令行方式创建数据库SM
以管理身份登录MySQL客户端,使用CREATE语句创建SM数据库。
命令:

2.建表结构并设计完整性
SM数据库中包含3个数据表:学生表(student)、课程表(course)、学生选课表(SC)。 各表的结构分别如下:

  • student表结构:
字段名称 数据类型 是否允许空值 约束 说明
SNo char(8) × 主键 学号
SName varchar(8) × 唯一值 姓名
SSex char(2) × 检查约束 性别(男或女)
SBir datetime 出生日期
Scredits int 总学分
  • course表结构:
字段名称 数据类型 是否允许空值 约束 说明
CNo char(5) × 主键 课程编号
CName varchar(30) × 唯一值 课程名称
CPno char(5) 外码 先修课程
CTime decimal(3,0) 总学时
CCredits int 默认值4 学分
CTerm char(1) × 学期
  • SC表结构:
字段名称 数据类型 是否允许空值 约束 说明
SNo char(8) × 外码 学号
CNo char(5) × 外码 课程编号
Score decimal(3,1) 0~100 成绩

(1)创建student表
命令:
mysql> create table student
-> (
-> SNo char(8) NOT NULL PRIMARY KEY,
-> SName varchar(8) NOT NULL UNIQUE,
-> SSex char(2) NOT NULL CHECK(SSex IN('男','女')),
-> SBir datetime,
-> Scredits int
-> );

截图:


(2)创建course表
命令:
mysql> CREATE TABLE course
-> (
-> CNo char(5) NOT NULL PRIMARY KEY,
-> CName varchar(30) NOT NULL UNIQUE,
-> CPno char(5),
-> CTime decimal(3,0),
-> CCredits int DEFAULT 4,
-> CTerm char(1),
-> FOREIGN KEY (CPno) REFERENCES course(CNo)
-> );
截图:


(3)创建SC表
命令:
mysql> CREATE TABLE SC
-> (
-> SNo char(8) NOT NULL,
-> CNo char(5) NOT NULL,
-> Score decimal(3,1) CHECK(Score>=0 AND Score<=100),
-> PRIMARY KEY(SNo,CNo),
-> FOREIGN KEY(SNo) REFERENCES student(SNo),
-> FOREIGN KEY(CNo) REFERENCES course(CNo)
-> );
截图:


三、利用界面工具创建数据库及表

利用Navicat for MySQL客户端工具创建数据库SM1,并根据上面给出的表结构在SM1中创建各表。
1.建库SM1
截图:

2.建表
(1)创建student表
截图:

(2)创建course表
截图:

(3)创建SC表
截图:


【实训总结】
1.初期时在安装老师给的MYSQL5.5时出现问题,安装成功但不能通过DOS命令行启动,然后通过同学的帮忙,安装了MYSQL5.0并成功启动。
2.在创建表时,对表的完整性约束条件表达不够清楚,通过查阅书籍逐渐尝试而建表成功。
主码PRIMARY KEY
唯一值UNIQUE
不为空NOT NULL
外码FOREIGN KEY
默认值DEFAULT
取值范围CHECK(Score>=0 AND Score<=100)
3.使用Navicat时不够熟练,要多加练习,遇到问题要及时解决,并从中吸取经验。

MySQL数据库实验:任务一 创建数据库和表的更多相关文章

  1. 跟我学Windows Azure 二 使用SQL Azure创建数据库服务器,创建数据库,创建表

    登陆Windows Azure门户 输入我们上一节课所注册的帐号及密码,点击登陆. 选择SQL 数据库,选择服务器 选择创建数据库服务器 设置访问数据库服务器的登陆帐号及密码 点击确定完成数据库服务器 ...

  2. 《Oracle Database 12c DBA指南》第二章 - 安装Oracle和创建数据库(2.1 安装Oracle数据库软件和创建数据库概览)

    当前关于12c的中文资料比较少,本人将关于DBA的一部分官方文档翻译为中文,很多地方为了帮助中国网友看懂文章,没有按照原文句式翻译,翻译不足之处难免,望多多指正. 2.1 安装Oracle数据库软件和 ...

  3. mysql命令行下创建数据库,创建表,插入数据,查询数据

    1.创建数据库 mysql> create DATABASE booktik -> ;Query OK, 1 row affected (0.02 sec) 2.创建表 mysql> ...

  4. mysql cmd命令行 创建数据库 表 基础语句

    一.连接MYSQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1. 连接到本机上的MYSQL. 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u roo ...

  5. mysql中如何在创建数据库的时候指定数据库的字符集?

    需求描述: 在创建DB的时候指定字符集. 操作过程: 1.使用create database语句创建数据库 mysql> create database if not exists test03 ...

  6. (笔记)Mysql命令create:创建数据库

    create命令用于创建数据库. create命令格式:create database <数据库名>; 注意:创建数据库之前要先连接Mysql服务器. 1) 建立一个名为xhkdb的数据库 ...

  7. Oracle数据库实验一建立数据库

    实验日期:   2019 年  09 月  24  日 实验报告日期:   2019  年  09 月  28 日 一.      实验目的 熟悉oracle环境: 熟练掌握和使用PL-SQL建立数据 ...

  8. MySQL学习笔记(4) - 创建数据库

    1.建立一个简单的数据库 CREATE DATABASE t1: 图中如果未打:号,系统会等待直到用户输入结束符才会之行语句. 2.查看当前服务器下数据库列表 SHOW DATABASES; 必须是D ...

  9. shell安装mysql,连接数据库,创建数据库

    https://blog.csdn.net/yhflyl/article/details/83061126 https://blog.csdn.net/wyl9527/article/details/ ...

随机推荐

  1. 在notepad++中快速插入当前时间方法

    插件是notepad++的一大优势,而要实现此功能,也必须借助TextFX插件. 1.点击"插件"-->"Plugin Manager"-->&qu ...

  2. java笔记--重定向输出流实现程序输出到日志

    重定向输出流实现程序输出到日志 --如果朋友您想转载本文章请注明转载地址"http://www.cnblogs.com/XHJT/p/3877248.html "谢谢-- 利用Sy ...

  3. 快速设置UITableView不同section对应于不同种类的cell

    快速设置UITableView不同section对应于不同种类的cell 本文主要是为了写明如何在UITableView中,一个section对应于一种类型的cell,写起来不凌乱. 在不封装任何类的 ...

  4. 进制转换excel版

  5. python 脚本运行时报错: AttributeError: 'module' object has no attribute ***

    最近在编写Python脚本过程中遇到一个问题比较奇怪:Python脚本完全正常没问题,但执行总报错"AttributeError: 'module' object has no attrib ...

  6. c++的路上,我坚信,我可以 -----第四次作业体会

    第四次作业 传送门 1.浅谈"新对象"sstream和stack 第四次作业,就是在第三次作业上作修改,上周周末,我刚刚才完成了第三次作业,但是知道了队列如何应用,面对这次的sta ...

  7. JAVAWEB之文件的上传下载

    文件上传下载 文件上传: 本篇文章使用的文件上传的例子使用的都是原生技术,servelt+jdbc+fileupload插件,这也是笔者的习惯,当接触到某些从未接触过的东西时,总是喜欢用最原始的东西将 ...

  8. 大屏FAQ

    1. 大屏可以分为哪几类?帆软有哪些大屏硬件合作商?编辑 拼接屏:通常由单个46-55寸的液晶显示屏组成屏幕墙,存在拼缝,借助矩阵.屏控系统来进行信号的输入与输出控制,可以实现屏幕墙上多个屏幕的组合. ...

  9. java.lang.NoClassDefFoundError: org/aspectj/weaver/tools/PointcutPrimitive

    问题:使用Spring时,报错:java.lang.NoClassDefFoundError: org/aspectj/weaver/tools/PointcutPrimitive问题原因: 少了as ...

  10. Yii2.0 发送文件

    1.发送文件 和浏览器跳转类似,文件发送是另一个依赖指定 HTTP 头的功能, Yii 提供方法集合来支持各种文件发送需求,它们对 HTTP 头都有内置的支持. yii\web\Response::s ...