目录
导入:——MySQL基本使用
在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。
本课目标:
1.掌握数据库相关概念,并且能够在Linux系统上快速安装MySQL数据库服务器和客户端(重点)
2.能够根据软件业务,设计数据表,并且创建对应数据库、表(重点、难点)
3.能够根据具体业务需求,进行简单查询和数据操作(重点)
4.能够快速备份和恢复数据库,并养成备份数据库的好习惯
1.数据库基础
数据库基础概述
数据管理主要经历过程:
手工管理阶段 :应用程序管理数据、数据不保存、不共享、不具有独立性。
文件管理阶段 :文件系统管理数据、数据可长期保存、但共享性差、冗余度大、独立性差。
数据管理阶段:数据库系统管理数据、数据结构复杂、冗余小、易扩充、较高的独立性、统一数据控制。
数据库的特征:
数据结构化
实现数据共享
减少数据冗余
数据独立性
数据库类型(按数据模型特点分)
网状型数据库
层次型数据库
关系型数据库
网状数据库:采用记录类型为节点的网状数据模型
层次数据库:采用层次模型模拟现实世界中按层次组织起来的事物
•关系型数据库:采用二维表结构组织和管理数据,并规定了表内和表间数据的依赖关系
关系数据库是指一些相关的表和其他数据库对象的集合。对于关系数据库来说,关系就是表的同义词。
表是由行和列组成(类似二维数组的结构)。
列包含一组命名的属性(也称字段)。
行包含一组记录,每行包含一条记录。
行和列的交集称为数据项,指出了某列对应的属性在某行上的值,也称为字段值。
列需定义数据类型,比如整数或者字符型的数据。
关系数据库的数据结构图示:
常见的数据库
MySQL是由瑞典 MySQL AB公司开的一种开放源代码的关系型数据库管理系统(RDBMS),目前属于 Oracle 旗下产品。
MySQL数据库系统使用最常用的数据库管理语言——结构化查询语言(SQL)进行数据库管理。
由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。
MySQL因为其速度、可靠性和适应性而备受关注。
SQL语言主要是用来操作关系型数据库的一本语言,称之为结构化查询语句
SQL语句主要分为:
DQL:数据查询语言,用于对数据进行查询,如select
DML:数据操作语言,对数据进行增加、修改、删除,如insert、udpate、delete
TPL:事务处理语言,对事务进行处理,包括begin transaction、commit、rollback
DCL:数据控制语言,进行授权与权限回收,如grant、revoke
DDL:数据定义语言,进行数据库、表的管理等,如create、drop
CCL:指针控制语言,通过控制指针完成表的操作,如declare cursor
MySQL的特点:
使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。你可以在同一查询中混来自不同数据库的表。
为多种编程语言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等
支持多种存储引擎
MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库
2.数据库和数据表管理
连接数据库
mysql -u账号 -p密码 -h主机地址 -P端口
mysql -uroot -pmysql
查看数据库版本
select version();
显示当前时间
select now();
查看所有数据库:
show databases;
创建数据库
create database 数据库名 charset=utf8;
注意:创建库的时候一定要指定编码utf8,utf8中间没有-,跟pyhton中写编码有点区别
切换数据库:
use 数据库名
查看当前正在使用哪个数据库
select database();