你所不知道的Mysql数据库(一)

【教学内容】

1、数据库介绍&安装

2、创建库和表

3、简单增删改查语句

4、Mysql函数

5、表的设计和约束

6、多表查询

【教学总结】:

【第一阶段】

【目标:数据库介绍&安装】

1、数据库概述

在前期学习的过程中,数据基本都保存xml或者普通的文件中。在真实企业级开发数据,数据都需要保存专业的软件中,这些软件就是数据库软件。

数据库软件不需要我们去研发,由专门的数据库厂商提供。

常用的数据库软件:

Oracle:Oracle数据库。甲骨文公司,专门数据库厂商,收购BEA 、SUN、MySQL ------- 收费 大型数据库,用于任何系统任何平台。

IBM:BD2数据库。IBM数据库产品,大型收费数据库 websphere服务器一起使用。

Mysql数据库,早期由瑞典一个公司开发的,后期被sun公司收购,随着sun公司的被Oracle收购,Mysql也成了Oracle公司的产品。

Microsoft:Sqlserver数据库。微软公司数据库产品,收费中等规模数据库 ,操作系统要求是windows 结合.net 一起使用。

Sybase:Sybase数据库,中等规模数据库。

Java开发者主要使用 MySQL 、Oracle、DB2 三种数据库。

2、什么数据库

就是一个文件系统,通过标准SQL语言操作文件系统中数据,用来存放数据的软件系统。

3、关系型数据库

一般对于一个软件系统程序,程序中的数据之间或多或少都会有一些关系存在,而上述的这些数据库软件系统恰好就可以保存这些具备一定对应关系的数据。

关系型数据中的数据可以使用E-R图来描述:

E-R图翻译成中文:Entity Relationship Diagram 实体关系图。

在E-R图中:

实体(Java中的对象)使用矩形表示。

实体的属性(Java中对象的属性)使用椭圆表示。

实体和实体之间的关系使用菱形表示。

4、数据库的安装和卸载

mysql提供了2种安装方式:

第一种是解压缩版本的。

第二种是需要完全安装版本(建议使用完全安装版)。

安装的过程需要参考可以参考《MySQL安装图解》

MySQL数据库的卸载也可以参考《mysql卸载图解》

注意:Mysql的卸载中在卸载完Mysql的安装文件之后,还需要删除Mysql的数据文件。数据文件在mysql的按照目录my.ini文件中。

安装细节:选择自定义安装,建议安装的时候mysql的安装目录中不要有空格和中文

安装后进行mysql配置:

1) 配置mysql 默认字符集,默认latin1 等价于 ISO-8859-1 改为 utf8。

2) Include Bin Directory in Window Path 将mysql/bin 目录配置环境变量path ---- 勾选

3) 输入超级管理root 密码

测试mysql是否安装成功 启动cmd窗口 输入 mysql -u root -p 回车 输入密码 1234

出现 mysql> 安装成功

5、超级管理员密码重置

1) 停止mysql服务器 运行输入services.msc 停止mysql服务

2) 在cmd下 输入 mysqld --skip-grant-tables 启动服务器 光标不动 (不要关闭该窗口)

3) 新打开cmd 输入mysql -u root -p 不需要密码

use mysql;

update user set password=password('abc') WHERE User='root';

4) 关闭两个cmd窗口 在任务管理器结束mysqld 进程

5) 在服务管理页面 重启mysql 服务。

【第二阶段】

【目标:创建库】

1、mysql数据库的内部存储结构

在前面学习tomcat的时候介绍过,当一台电脑安装了tomcat服务器,那么这个电脑就是一个web服务器。

当一台电脑安装了mysql数据库,那么这台电脑就称为数据库服务器。

用户可以通过客户端直接去连接这台安装了mysql的数据库的电脑。

用户通过在dos窗口中输入:

mysql (-h 连接的主机ip -P端口3306)-u 用户名 -p 密码

登录mysql数据库。

当电脑安装了mysql数据库软件之后,在这个数据库软件中可以拥有多个多个数据库,每个数据库中又可以拥有多个数据表。即就是一个数据库软件可以管理多个数据库,每个数据库又分别去管理自己库中真正存放数据的数据表。而每个数据表是真正存放数据的地方。

你所不知道的Mysql数据库(一)

2、SQL语句

SQL语句:Structured Query Language结构化查询语言。SQL语句不依赖于任何平台,对所有的数据库是通用的。学会了SQL语句的使用,可以在任何的数据库使用。

SQL语句是一个非过程性的语言,每一条SQL执行完都会有一个具体的结果出现。

比如前面学习的Java等语言属于过程性语言,在其中可以定义变量等完成复杂的运算。而SQL语句本身是不支持这些的,但是不同的数据库厂商针对自己数据库的特点在原有的SQL语句上进行的增强。比如 Sqlserver中的T-SQL、Oracle中的PL/SQL等可以编写复杂的SQL语句。

SQL是用来存取关系数据库的语言,具有查询、操纵、定义和控制关系型数据库的四方面功能。

3、SQL分类

DDL (数据定义问题)

数据定义语言 - Data Definition Language

用来定义数据库的对象,如数据表、视图、索引等

DML (数据操纵问题)

数据处理语言 - Data Manipulation Language

在数据库表中更新,增加和删除记录

如 update, insert, delete

DCL (数据控制问题)

数据控制语言 – Data Control Language

指用于设置用户权限和控制事务语句

如grant,revoke,if…else,while,begin transaction

DQL (数据查询问题)

数据查询语言 – Data Query Language

select

学习SQL语言,按照学习路线:

1、数据库的操作

2、数据表的操作

3、数据表中数据的操作

4、查询所有数据库

在操作数据库之前,首先我们需要连接到数据库上:

你所不知道的Mysql数据库(一)

查询所有数据库:show databases;

查询当前数据的编码表:show create database 数据库名;

你所不知道的Mysql数据库(一)

5、创建数据库

SQL语言的语法由W3C组织指定,查阅对应的帮助文档即可学习相关的语法规则。先学习通过sql语句对数据库的增删改查操作。

创建数据的语法:

1、create database 数据库名:由于创建数据库时没有指定编码表,因此会使用安装数据库时默认的编码表

2、create database 数据库名 character set 编码表名; 创建数据库会使用指定的编码表

3、create database 数据库名 character set 编码表名 collate 排序规则; 使用指定的编码表同时还可以根据编码表指定排序规则。

练习:

创建一个名称为mydb1的数据库。

你所不知道的Mysql数据库(一)

创建一个使用utf8字符集的mydb2数据库。

你所不知道的Mysql数据库(一)

创建一个使用utf8字符集,并带校对规则的mydb3数据库。

你所不知道的Mysql数据库(一)

补充:每次创建一个数据库在 数据存放目录中生成一个文件夹 , 每个文件夹中存在 db.opt 存放默认字符集和校对规则

6、删除数据库

语法 :drop database 数据库名称;

删除前面创建的mydb1数据库

你所不知道的Mysql数据库(一)

查看当前数据库服务器中的所有数据库

你所不知道的Mysql数据库(一)

查看前面创建的mydb2数据库的定义信息

你所不知道的Mysql数据库(一)

更多优质内容推荐:

体验别样旅游感受 中公教育推出全新互联网+北京游,零利润体验10天9晚帝都风情:

http://www.ujiuye.com/zt/qgsqxly/?wt.bd=lgh23524

有钱任性,某公司豪掷500万帮助20左右年轻人找工作,起因是做善良的人:

http://www.ujiuye.com/zt/jyfc/?wt.bd=lgh23524

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: