认识mysql数据库

mysql数据库概述

  • MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。 MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

  • MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

  • MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

mysql数据库特点

  1. 功能强大
    MySQL 中提供了多种数据库存储引擎,各引擎各有所长,适用于不同的应用场合,用户可以选择最合适的引擎以得到最高性能,可以处理每天访问量超过数亿的高强度的搜索 Web 站点。MySQL5 支持事务、视图、存储过程、触发器等。
  2. 支持跨平台
    MySQL 支持至少 20 种以上的开发平台,包括 Linux、Windows、FreeBSD 、IBMAIX、AIX、FreeBSD 等。这使得在任何平台下编写的程序都可以进行移植,而不需要对程序做任何的修改。
  3. 运行速度快
    高速是 MySQL 的显著特性。在 MySQL 中,使用了极快的 B 树磁盘表(MyISAM)和索引压缩;通过使用优化的单扫描多连接,能够极快地实现连接;SQL 函数使用高度优化的类库实现,运行速度极快。
  4. 支持面向对象
    PHP 支持混合编程方式。编程方式可分为纯粹面向对象、纯粹面向过程、面句对象与面向过程混合 3 种方式。
  5. 安全性高
    灵活和安全的权限与密码系统,允许基本主机的验证。连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码的安全。
  6. 成本低
    MySQL 数据库是一种完全免费的产品,用户可以直接通过网络下载。
  7. 支持各种开发语言
    MySQL 为各种流行的程序设计语言提供支持,为它们提供了很多的 API 函数,包括 PHP、ASP.NET、Java、Eiffel、Python、Ruby、Tcl、C、C++、Perl 语言等。
  8. 数据库存储容量大
    MySQL 数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由 MySQL 内部限制决定的。InnoDB 存储引擎将 InnoDB 表保存在一个表空间内,该表空间可由数个文件创建,表空间的最大容量为 64TB,可以轻松处理拥有上千万条记录的大型数据库。

安装mysql数据库

传送门

mysql基本语句使用

废话不多说,我就直接展示~~

查看数据库

我们使用数据库前,都应该先查看数据库中有没有已经创建好的数据库,有的话我们就直接使用,没有的话我们再自己创建~

SHOW DATABASES;

注意:此处不区分大小写,但后面的分号一定不要忘记!!!

创建数据库

create database 数据库名称;

使用数据库

USE 数据库名称;

删除数据库

DROP DATABASE 数据库名;(谨慎使用该命令,不要乱删数据库!!!)

创建表

创建表需要以下信息:

  • 表名
  • 表字段名
  • 定义每个表字段
CREATE TABLE table_name (column_name column_type);

查看数据库中的表

SHOW TABLES

查看表结构

DESC 表名; 

删除表

DROP TABLE 表名;

向表中插入数据

  • 插入单行数据
INSERT INTO table_name (字段名(多个字段之间用逗号隔开)) VALUES (添加的值(多值之间也用逗号隔开))
  • 插入多行数据
INSERT INTO table_name (字段名(多个字段之间用逗号隔开)) VALUES (添加的值(多值之间也用逗号隔开)),...(添加的值(多值之间也用逗号隔开));

删除表中数据

DELETE FROM table_name [WHERE 语句]

更新表中数据

UPDATE 表名 SET (字段1=新值1,字段2=新值2) WHERE 筛选条件 

查询表中数据

SELECT *FROM 表名;

修改字段

  • 修改表名
ALTER TABLE 表名 RENAME TO  新表名;
  • 修改字段名
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型;
  • 添加字段
ALTER TABLE 表名 ADD 字段名 数据类型;
  • 删除字段
ALTER TABLE 表名 DROP 字段名;

视图

视图定义

视图:是从一个或几个基本表导出的表.它与基本表不同,它是一个虚表,数据中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中

视图作用

  1. 简化按用户操作
  2. 使用户以多角度看待同一数据
  3. 对重构数据库提供了一定程度的逻辑独立性
  4. 能够对机密数据提供安全保护
  5. 适当利用视图可以更清晰的表达数据

建立视图

 CREATE VIEW <视图名> [(<列名>,[,<列名>]...)]
 AS <子查询>
 [WITH CHECK OPTION];

其中,子查询可以是任意的SELECT语句,是否可以含有ORDER BY子句和DISTINCT短语,取决于具体系统的实现
WITH CHECK OPTION 表示对视图进行UPDATE,INSERT和DELETE操作时要保证更新,插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式)
注意:下列三种情况下必须指明组成视图的所有列名

  • 某个目标不是单纯的属性名,而是聚集函数或列表达式
  • 多表连接时选出了几个同名列作为视图的地段
  • 需要在视图中为了某个列启用新的更合适的名字

删除视图

删除视图是指删除数据库中已存在的视图。删除视图时,只能删除视图的定义,不会删除数据。删除视图时,用户必须拥有DROP权限。

DROP VIEW <视图名> [CASCADE];

修改视图

REPLACE VIEW 视图名 AS SELECT [...] FROM [...];

查询视图

  SHOW TABLES;
  SHOW CREATE VIEW;
  SHOW TABLE STATUS;
  DESC;

使用SHOW TABLES命令的时候,显示表名和视图名
使用SHOW TABLES STATUS命令的时候,不但可以显示表的信息,同时也可以显示视图的信息
SHOW CREATE VIEW语句查看视图详细信息

数据的导出导入

导出数据

SELECT *FROM 表名 INTO OUTFILE '导出文件所处的位置';

导入数据

LOAD DATA LOCAL INFILE '导入文件所在地址' INTO TABLE 表名;

创建用户与授权

创建用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

(1)username:创建的用户名称
(2)host:指定用户可以通过主机登录的地址;本地则为localhost,任意远程主机都可登录则使用通配符’%’
(3)password:指定该用户的密码
实例:

create user 'zhangsan'@'localhost' identified by '123456';

添加权限

GRANT PRIVILEGES ON 数据库名称.表名 TO 'username'@'host';

privileges:包括SELECT、INSERT、UPDATE、DELETE等操作权限,使用all命令授予所有权限
实例:

grant select on rui.student to 'zhangsan'@'localhost';

解除权限

// 将所有用户对student表的所有查询权限收回
revoke select on rui.student from 'zhangsan'@'localhost';;

查看权限

show grants for 'usename';
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐