这里写自定义目录标题

  • 什么是MySql
  • MySql的下载
  • MySql基础语句
  • 1.创建数据库
  • 2.删除数据库
  • 3.选择数据库
  • 4.创建数据库表
  • 5.删除数据库
  • 6.插入数据
  • 7.查询数据
  • where 是查询的条件
  • like 模糊查询
  • 排序
  • 分组
  • 8.更新语句
  • 9.删除


什么是MySql

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。

每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。

我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。

所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

MySql的下载

Mysql 官网下载.

MySql基础语句

1.创建数据库
CREATE DATABASE 数据库名;
2.删除数据库
drop database <数据库名>;
3.选择数据库
use 数据库名;
4.创建数据库表
CREATE TABLE table_name (column_name column_type);

例如:

CREATE TABLE IF NOT EXISTS `table1`(
   `id` INT UNSIGNED AUTO_INCREMENT,
   `title` VARCHAR(100) NOT NULL,
   `author` VARCHAR(40) NOT NULL,
   PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
5.删除数据库
DROP TABLE table_name ;
6.插入数据
INSERT INTO table_name ( field1, field2,...fieldN )
                       VALUES
                       ( value1, value2,...valueN );
7.查询数据
SELECT column_name,column_name
			FROM table_name
				[WHERE Clause]
						[LIMIT N][ OFFSET M]

例如:

select * from user where id = 1 limit 1 ,10;
where 是查询的条件

操作符

描述

例如

=

等号,检测两个值是否相等,如果相等返回true

(A = B) 返回false。

<>, !=

不等于,检测两个值是否相等,如果不相等返回true

(A != B) 返回 true。

>

大于号,检测左边的值是否大于右边的值, 如果左边的值大于右边的值返回true

(A > B) 返回false。

<

小于号,检测左边的值是否小于右边的值, 如果左边的值小于右边的值返回true

(A < B) 返回 true。

>=

大于等于号,检测左边的值是否大于或等于右边的值, 如果左边的值大于或等于右边的值返回true

(A >= B) 返回false。

<=

小于等于号,检测左边的值是否小于或等于右边的值, 如果左边的值小于或等于右边的值返回true

(A <= B) 返回 true。

like 模糊查询
select * from user where name like '%a_';
'%a'     //以a结尾的数据
'a%'     //以a开头的数据
'%a%'    //含有a的数据
'_a_'    //三位且中间字母是a的
'_a'     //两位且结尾字母是a的'a_'     //两位且开头字母是a的
排序
SELECT * FROM table_name1, table_name2...
ORDER BY field1 [ASC [DESC][默认 ASC]], [field2...] [ASC [DESC][默认 ASC]]
分组
SELECT column_name, function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;
8.更新语句
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
9.删除
drop table

drop 是直接删除表信息,速度最快,但是无法找回数据

truncate (table)

truncate 是删除表数据,不删除表的结构,速度排第二,但不能与where一起使用

delete from table  where [条件]

delete 是删除表中的数据,不删除表结构,速度最慢,但可以与where连用,可以删除指定的行

  • 相同点
  • truncate和不带where子句的delete,drop都会删除表内的数据;
  • drop,truncate都是DDL语句(数据定义语言),执行后会自动提交;
  • 不同点
  • 效率:一般来说 drop > truncate> delete;
  • 是否删除表结构:truncate和delete 只删除数据不删除表结构,truncate 删除后将重建索引(新插入数据后id从0开始记起),而 delete不会删除索引 (新插入的数据将在删除数据的索引后继续增加),drop语句将删除表的结构包括依赖的约束,触发器,索引等;
  • 安全性:drop和truncate删除时不记录MySQL日志,不能回滚,delete删除会记录MySQL日志,可以回滚;
  • 返回值:delete 操作后返回删除的记录数,而 truncate 返回的是0或者-1(成功则返回0,失败返回-1);