MySQL数据库

一.数据库基础知识

数据库是(Database,简称DB)

数据库是存放数据er的仓库,是长期存储在计算机内的,有组织结构的,可以共享的数据集合。

数据库管理系统(Database Management System,简称DBMS)

数据库管理系统是为数据库的建立、使用和维护而配置的数据库管理软件,它位于用户与操作系统之间,以保证数据库的安全性和完整性。如MySQL就是DBMS。

数据库应用系统(Database Application Systems,简称DBAS)

数据库应用系统是基于数据库的应用软件,例如QQ、微信、淘宝、股票信息系统、学生管理系统、财务管理系统等。DBAS由两部分组成,分别是数据库和应用程序。数据库由数据库管理系统创建,而应用程序可以由任何支持数据库编程的程序设计语言编写,如Java.C#、PHP等语言。

 数据库系统(Database System,简称DBS)

DBS是指引入数据库技术的计算机系统,通常由数据库(DB)、数据库管理系统(DBMS)、应用程序、数据库系统管理员(DBA)和用户(user)组成(如下图所示)。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行数据库管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。数据库管理员一般是由业务水平较高、资历较深的人员担任。

 数据模型

 数据库的数据结构形式,叫数据模型,它是对数据库如何组织数据的一种模型化表示数据模型表示的是数据库框架
数据模型好比房子的建筑结构图,根据这个结构图先搭好架子,然后才能堆砖砌瓦使建筑物符合要求,数据模型就相当于这个建筑结构图,然后是根据这个结构图组织装填数据
数据模型是数据库管理系统的核心和基础,所有的DBMS都是基于某种数据模型的。常见的数据模型:网状模型、层次模型、关系模型(主流)、面向对象模型(研究发展中)目前,95%以上的数据库产品都是基于关系模型的,关系模型非常重要。

SQL语言简介

SQL(Structured Query Language,结构化查询语言)是IBM公司于1975~1979年之间开发出来的。
在20世纪80年代,SQL被ANSI和ISO定义为关系型数据库语言的标准SQL是一个通用的、功能极强的关系数据库语言
目前各大数据库厂商的数据库产品均支持SQL-92标准,但会作一些修改和补充,所以不同关系型数据库产品的SQL仍然存在少量的差别。

当今流行的数据库管理系统简介

 MySQL由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品
· MySQL 是一个开源的关系型数据库管理系统(RDBMS,Relational DatabaseManagement System)。
拳 MySQL基于客户端/服务器结构 (也称Client/Server 或C/S结构)。服务器负责数据的管理,客户机负责完成与用户的交互任务

二.数据库的基本操作

登录MySQL服务器时选择数据库
数据库名语句: mysql -u用户名 -p[密码]
示例1: 在登录时显示用户密码,选择数据库语句: mysql -uroot -p123456 mydb
示例2:在登录时隐藏用户密码,选择数据库
语句: mysql -uroot -p mydb

用SQL语句创建数据库
语句: CREATE DATABASE [IF NOT EXISTS] 数据库名称[库选项];
IF NOT EXISTS可选项: 如果数据库不存在,则创建数据库,防止创建的数据库已存在,程序会报错。数据库名称:由字母、数字和下划线等组成的任意字符串。库选项:用于设置此数据库的相关特性,如字符集CHARSET。
示例: CREATE DATABASE mydb;
返回: 1 success, 0 errors, 0 warnings
结果:生成一个数据库及文件夹mydb,一个db.opt文件位置:C:ProgramData\MySQL\MySQL Server 5.5 \data
重复:CREATE DATABASE mydb;
返回:0 success, 1 errors, 0 warnings
示例:CREATE DATABASE IF NOT EXISTS mydb;
返回: 1 success, O errors,1 warnings

用SQL语句查看数据库
查看MySQL服务器下所有数据库
语句: SHOW DATABASES;
查看指定数据库的创建信息
语句: SHOW CREATE DATABASE 数据库名称;
示例:SHOW CREATE DATABASE mydb;
sa
SHo
DATABASES
Database
information schema
mydb
mysgl
performance schema
test
rows in set
sec
系统数据库:
 information schema: 数据字典
performance schema: 性能字典
mysql:控制和管理信息

 用SQL语句删除数据库
语句: DROP DATABASE [IF EXISTS] 数据库名称:
IF EXISTS可选项: 如果数据库存在,则删除数据库;防止删除的数据库不存在,程序会报错。
示例: DROP DATABASE mydb;
返回:1 success, O errors, 0 warnings
重复:DROP DATABASE mydb;
返回: 0 success,1 errors, 0 warnings
示例:DROP DATABASE IF EXISTS mydb;
返回:1 success, O errors, 1 warnings

 三.数据的插入,更新与删除

使用SQL语句插入数据
语句: INSERT [INTO] 表名[(字段名1,字段名2,...)]VALUES(值1,值2....)[(值1,值2,...)...];
不带字段名
格式1:(简化格式)
INSERT INTO 表名

VALUES(值1,值2....值n);
格式1-1:(简化格式)

INSERT INTO 表名VALUES(值1,值2....值n),(值1,值2,...,值n);
指定字段名
格式2:(基本格式)
NSERT INTO 表名(字段名1,字段名2,...)

(VALUES(值1,值2,...);
格式2-1:(基本格式)

INSERT INTO 表名(字段名1,字段名2....)

VALUES(值1,值2....),(值1,值2,...),....;

使用SQL语句修改数据

格式:UPDATE 表名
SET 字段名1 = 值1[,字段名2 = 值2,...][WHERE 条件表达式];
格式1:(基本格式)
UPDATE 表名
SET 字段名1 = 值1

WHERE 条件表达式;

格式1-1:(基本格式)
UPDATE 表名;

SET 字段名1=值1,字段名2=值2,...字段名n=值n

WHERE 条件表达式;

格式2: (无条件格式)
UPDATE 表名

SET 字段名1=值1


格式2-1: (无条件格式)
UPDATE 表名;
SET 字段名1=值1,字段名2=值2,...字段名n=值n

使用SQL语句删除数据

格式:DELETE FROM 表名 [WHERE 条件表达式];
格式1:(基本格式)
DELETE FROM 表名
WHERE 条件表达式;

格式2:(无条件格式)

DELETE FROM 表名;

格式3: (清空表)

TRUNCATE ITABLE] 表名;

四.数据完整性类型

(1)域完整性
域完整性是指一个列的输入有效性,如是否允许空值。强制域完整性的方法有: 设定列的数据类型、默认值(Default)、NOT NULL、Check等多种约束。MySQL8.0.16之前版本忽略Check约束,但是能被解析。

(2)实体完整性
实体完整性是指保证表中所有的行唯一,也就是不应使用完全相同的数据记录。强制实体完整性的方法有:主键(Primary Key)、唯一键Unique Key)、唯一索引(Uniquendex)和自增列(Auto lncrement)等约束,其中最常用的是使用主键。

(3)参照完整性
参照完整性也叫引用完整性。参照完整性是用来维护相关数据表之间数据一致性的手段可以避免因一个数据表的记录改变而造成另一个数据表内的数据变成无效的值。强制参照完整性的方法有: 外键(Foreign Key)约束、触发器(Trigger)和存储过程(StoredProcedure)等。

五.数据的查询

MySQL从数据表中查询数据的基本语句是SELECT语句
主语句
SELECT [DISTINCT] *|{字段名1,字段名2,字段名3,......}
FROM 表名
子语句
[WHERE 条件表达式1]
[GROUP BY 字段名[HAVING 条件表达式2]]
[ORDER BY 字段名[ASC|DESC]]
[LIMIT [OFFSET,] 记录数1];

六.视图

创建视图的基本语法
CREATE VIEW[数据库名.]视图名
AS
SELECT语句
WITH CHECK OPTION];

修改视图的基本语法
ALTER VIEW[数据库名]视图名
AS
SELECT语句
IWITH CHECK OPTION];

删除视图的基本语法格式如下所示
DROP VIEW [IF EXISTS][数据库名.]视图名1[,视图名2....]
示例:DROP VIEW v_book_class;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值