转载请标明出处:
http://blog.csdn.net/gj782128729/article/details/52347007;
本文出自:【高境的博客】
1. 数据库的简介
1.1. 什么是数据库?
数据库英文Database,数据库就是一个文件系统,用来存储数据的仓库。使用标准sql对数据库进行操作(crud)。
1.2. 关系型数据库和关系型数据
关系型数据库:建立在关系模型基础上的数据库,存储的是实体之间的关系。
关系型数据:关系型数据是以关系数学模型来表示的数据,关系数学模型中以二维表的形式来描述数据。
1.3. ER图
博客系统可以分为以下几个功能:1.用户注册2.用户登录3.用户查看4.用户发表5.用户评论6.用户收藏。
在这里面实体有 (a)用户 (b)博客 (c)评论,用户、博客、评论之间的关系称为实体之间的关系,实体之间的关系可以通过ER图来进行表示:
实体使用矩形、在实体上面属性使用椭圆,之间的关系使用菱形
1.4. 常见的关系型数据库
数据库 | 简介 |
---|---|
Oracle | 是Oracle公司产品,是大型的收费的数据库,运行在任何操作系统上,应用在大型的项目上,比如中国联通、中国电信 |
DB2 | 是IBM公司的产品,是大型的收费的数据库,能和Oracle媲美,如QQ,微信 |
Microsoft SQLServer | 是微软公司产品,是中型的数据库,收费产品,处理数据的能力比存储数据速度快 |
MySQL | 在Oracle收购之后6.x版本开始收费,之前的版本是免费的 |
SQLite | 是小型的嵌入式数据库,免费轻量级数据库,应用在客户端开发中,比如安卓 |
HSQL | 迷你的数据库,大小非常小,只有几十k,开源免费。最大特点是纯Java开发,注意应用场景在Java框架内置使用 |
2. MySQL的安装和卸载
2.1. MySQL的安装
注意1:安装文件所在路径,不要包含中文!
有三个按钮:
第一个代表典型安装(推荐的安装);
第二个代表自定义安装(一般使用这种方法);
第三个表示完全安装(一般不需要)。
复选框一定要选中
上面出现了单选框:一般使用上面那个(精细配置)
使用第一个 开发者电脑
mysql默认端口是3306
mysql中 超级管理员 root设置root的密码(一定要记住)
当出现了右边情况,没有X的情况,表示mysql安装成功。
如果出现X,没有安装成功,必须要重新安装。
2.2. 验证MySQL安装是否成功
启动mysql的服务(默认就是启动的)在计算机右键->管理->服务中设置:
在命令行中输入如下命令:mysql -u root -p (-u表示用户名 root, -p表示密码)
打开cmd窗口
登录MySQL:mysql -uroot -p123
退出MySQL:exit | quit
出现了 mysql>:表示登录mysql成功
2.3. MySQL的卸载
第一步,找到MySQL的安装路径,找到一个文件my.ini文件找到两个路径,复制出来;
basedir="C:/Program Files (x86)/MySQL/MySQL Server 5.5/"
datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
第二步,打开控制面板,找到安装的mysql数据库,进行卸载;
第三步,找到第一步复制出来的两个路径,把这两个路径的里面的所有的文件都删除;
第四步,删除:
C:\Documents and Settings\All Users\Application Data\MySQL
C:\ProgramData\MySQL
第五步,打开注册表 regedit,搜索mysql,找到了都删除;
regedit
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services
第六步,重新启动系统。
3. MySQL服务器的存储结构
(1) MySQL服务器
服务器:从硬件上,服务器就是一台电脑;从软件上,在电脑上安装了服务器软件,那么这台电脑就称之为服务器。
MySQL服务器:在一台电脑上,安装了MySQL数据库,这台电脑称为MySQL服务器。
(2) 常见的服务器软件
iis ,asp(做网站的一个技术) ,tomcat ,mysql
(3) MySQL服务器的存储结构
有多个数据库,在每个数据库里面有多个数据库表,在每个表里面有多条记录。
学习重点:对数据库、数据库表、表中的记录的操作(crud操作)
4. SQL语言
4.1. SQL简介
(1) 什么是sql
Structured Query Language,结构化查询语言,对数据库进行操作。
(2) sql是结构化非过程性语言,不需要依赖于其他的条件就可以运行
什么是过程化语言,比如在java里面:
int i = 5;
int j = 10;
int result = i+j;
代码按照顺序执行,就是过程化的语言。
(3) sql语句不依赖任何语句,每一条sql语句都可以单独执行。
(4) sql是官方提供的数据库的标准语言,任何数据库都支持sql语句。
(5) sql的分类
类型 | 介绍 |
---|---|
DDL(数据定义语言)Data Definition Language | 创建数据库,创建数据库表。常用的语句如create |
DML(数据操纵语言)Data Mainpulation Language | 对表中的记录进行增加 修改 删除操作。 常用的语句如insert update delete |
DCL (数据控制语言)Data Control Language | 数据库的编程的语言如对用户进行授权 |
DQL (数据查询语言)Data Query Language | 对表中的进行查询的操作。常用的语句如select |
学习的主要内容:使用sql语言对数据库、数据库表、表中的记录进行增删改查(crud)操作
4.2. 使用SQL对数据库操作
(1)连接数据库
* 打开cmd窗口,使用命令,连接mysql数据库
* 命令:mysql -u root -p 密码
(2)创建数据库
* 语句:create database 数据库的名称;
* 示例:create database testdb1;
(3)查看所有的数据库
* 语句:show databases;
(4)删除数据库
* 语句:drop database 要删除的数据库的名称;
* 示例:drop database testdb1;
(5)切换数据库
* 如果想要创建一个数据库表,这个表要在一个数据库里面,所以需要切换到数据库
* 语句:use 要切换的数据库的名称;
* 示例:use testdb2;
(6)查看当前使用的数据库
* 语句:select database()
4.3. 使用SQL对数据库表操作
4.3.1. 创建数据库表
语句: create table 表名称 (
字段 类型(长度),
字段 类型(长度)
)
示例:创建表 user,字段 id username password sex
create table user (
id int,
username varchar(40),
password varchar(40),
sex varchar(30)
)
4.3.2. mysql的数据类型
字符串型VARCHAR、CHAR
当创建表时候,使用字符串类型,name varchar(40),指定数据的长度
varchar和char的区别:
(1)varchar的长度是可变的,比如 name varchar(5),存值 a ,直接把a存进去