MySQL概述和安装使用

一、为什么需要学习数据库

为了方便数据的查询:

数据库是一种结构化的数据存储方式,它能够以表格的形式存储数据,并且支持高效的查询和检索。学习数据库可以让人掌握使用SQL等查询语言的技能,能够根据特定条件快速地检索出所需的数据,提高了数据的利用价值和工作效率。

为了持久化存储数据:

数据库可以持久化地存储数据,即数据不会因为计算机或应用程序的关闭而丢失。这意味着即使在系统重启或应用程序关闭后,数据仍然可以被保留下来。学习数据库可以让人了解数据的持久化存储原理和技术,从而确保数据的安全性和可靠性

二、数据库的相关概念

2.1.DB

数据库(database) 存储数据的仓库,保存了一系列有组织的数据

2.2.DBMS

数据库管理系统(Database Management System)用于管理DB中的数据,数据库是通过DBMS创建和操作的容器。 常见的数据库管理系统:MySQL、Oracle、 DB2、 SQL server

2.3.SQL

结构化查询语言(Structure Query Language):专门用来与数据库通信的语言 特点:     

①.不是某个特定数据库供应商专有的语言,几乎所有DBMS都支持SQL;     

②.简单易学;

③.灵活使用可以进行非常复杂和高级的数据库操作;

三者之间的关系:

DB、DBMS、SQL之间的关系:

三、数据库的特点

表是放在库里面的;

数据是存放在表里面的;

一个数据库里面表名是唯一的 数据库里面列名称之为字段 表中数据是以行的形式存放;

四、SQL语言分类

DML(Data Manipulation Language):数据操纵语句,用于添 加、删除、修改、查询数据库记录,并检查数据完整性

DDL(Data Definition Language):数据定义语句,用于库和 表的创建、修改、删除。

DCL(Data Control Language):数据控制语句,用于定义用 户的访问权限和安全级别

4.1.DML

DML用于查询与修改数据记录,包括如下SQL语句:

  • INSERT:添加数据到数据库中
  • UPDATE:修改数据库中的数据
  • DELETE:删除数据库中的数据
  • SELECT:选择(查询)数据
    • SELECT是SQL语言的基础,最为重要。

4.2.DDL

DDL用于定义数据库的结构,比如创建、修改或删除 数据库对象,包括如下SQL语句:

  • CREATETABLE:创建数据库表
  • ALTER TABLE:更改表结构、添加、删除、修改列长度
  • DROP TABLE:删除表
  • CREATE INDEX:在表上建立索引
  • DROP INDEX:删除索引

4.3.DCL

DCL用来控制数据库的访问,包括如下SQL语句:

  • GRANT:授予访问权限
  • REVOKE:撤销访问权限
  • COMMIT:提交事务处理
  • ROLLBACK:事务处理回退
  • SAVEPOINT:设置保存点
  • LOCK:对数据库的特定部分进行锁定

五、MySQL安装

5.1.MySql数据库产品的介绍

MySQL产品的特点

⑴.MySQL数据库隶属于MySQLAB公司,总 部位于瑞典,后被oracle收购。

⑵.优点:

  • 成本低:开放源代码,一般可以免费试用
  • 性能高:执行很快
  • 简单:很容易安装和使

5.2.MySQL程序结构

5.3.MySql数据库的安装

DBMS分为两类:

  • 基于共享文件系统的DBMS (Access)
  • 基于客户机——服务器的DBMS (MySQL、Oracle、SqlServer)

MySQL分为:

  • 社区版(免费)
  • 企业版(收费)

Windows平台下下载:http://dev.mysql.com/downloads/mysql,目前可以下载的版本:

  • 5.5
  • 5.6
  • 5.7
  • 8.0 

5.4.启动和停止MySQL服务

方式一:通过计算机管理方式

右击计算机—管理—服务—启动或停止MySQL服务

方式二:通过命令行方式

启动:net start mysql服务名
停止:net stop mysql服务名

5.5.MySQL服务端的登录和退出

登录

 mysql –h 主机名 –u用户名 –p密码 

退出 

exit

六、MySql数据库的使用

6.1.MySQL语法规范

  • 不区分大小写
  • 每句话用;或\g结尾
  • 各子句一般分行写
  • 关键字不能缩写也不能分行
  • 用缩进提高语句的可读性

6.2.MySQL使用说明

1. 进入mysql, 在命令行中输入: mysql –uroot –p####  (其中:####表示密码)

2. 查看mysql 中有哪些个数据库: show databases; 

3. 使用一个数据库: use 数据库名称;

4. 新建一个数据库: create database 数据库名

5. 查看指定的数据库中有哪些数据表: show tables;

6. 建表:

CREATE TABLE customer (
    id INT(30),
    name VARCHAR(30),
    age INT,
    email VARCHAR(20),
    birthday DATE,
    salary DECIMAL(10, 2)
);

如下图:

7. 查看表的结构:desc 表名

8. 删除表: drop table 表名

9. 查看表中的所有记录: select * from 表名;

10. 向表中插入记录:insert into 表名(列名列表) values (列对应的值的列表);

insert into customer(id,name,age,birthday) values(1001,'Augus',22,'2002-02-12');
insert into customer(id,name,age,birthday) values(1002,'Tom',32,'1992-02-12');

如下图:

注意:插入varchar 或date 型的数据要用单引号引起来

11. 修改记录: update 表名 set 列1 = 列1的值, 列2 = 列2的值 where …

 update customer set age=47,birthday='1975-05-18' where id='1002';

12. 删除记录: delete from 表名 where ….

13. 查询所有列: select * from 表名;

 

14. 查询特定的列: select 列名1,列名2, … from 表名

15. 对查询的数据进行过滤:使用where 子句

16.运算符

先准备数据:

INSERT INTO customer (id, name, age, email, birthday, salary) VALUES (1003, 'JODN', 32, 'jodn@163.com', '1982-02-12', 5345.12);
INSERT INTO customer (id, name, age, email, birthday, salary) VALUES (1004, 'pt', 32, 'pt@163.com', '1982-02-12', 6345.12);
INSERT INTO customer (id, name, age, email, birthday, salary) VALUES (1005, 'gs', 32, 'gs@163.com', '1992-04-12', 4345.12);
INSERT INTO customer (id, name, age, email, birthday, salary) VALUES (1006, 'lp', 32, 'lp@163.com', '1992-12-12', 3345.12);

如下图:

 

通配符说明:

  • %匹配任意多字符;
  • _只匹配一个字符

6.3.图形化界面客户端的使用

下面是一些常用的 MySQL 图形化客户端:

⑴.MySQL Workbench:

MySQL Workbench 是一款可视化的数据库设计工具,将 SQL 开发、管理、数据库设计、创建和维护融合到一个简单的开发环境中。它是 DBDesigner4 的继承者,支持 MySQL 数据库的开发和管理。

⑵.HeidiSQL:

HeidiSQL 之前被称为 MySQL-Front,是一款免费的开源客户端。支持本地或远程 MySQL 服务器的管理,具有友好的界面和丰富的功能。

⑶.phpMyAdmin:

phpMyAdmin 是用 PHP 编写的,用于通过 Internet 管理 MySQL 的工具。支持数据库管理、表格、字段、关系、索引、用户权限等操作。

⑷.Sequel Pro:

Sequel Pro 是一款免费的开源项目,用于管理 MySQL 数据库。支持本地或互联网上的 MySQL,具有增加、删除数据库和表、更改字段、索引和视图、执行自定义查询等功能。

⑸.Navicat(推荐):

Navicat 是一个强大的 MySQL 数据库管理和开发工具。支持多种数据库类型,包括 MySQL、SQL Server、SQLite、Oracle 和 PostgreSQL。

⑹.SQLyog:

SQLyog 是一个易于使用的、快速而简洁的图形化管理 MySQL 数据库的工具。支持备份、查询、数据编辑、索引管理等功能。

Navicat连接MySQL数据库设置:

连接成功如下:

posted @ 2024-05-08 18:21  酒剑仙*  阅读(40)  评论(0)    收藏  举报