MySQL的增删改查

Posted opsprobe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL的增删改查相关的知识,希望对你有一定的参考价值。

数据库的常用命令以及作用
用法 作用
CREATE database 数据库名称。 创建新的数据库
DESCRIBE 表单名称; 描述表单
UPDATE 表单名称 SET attribute=新值 WHERE attribute > 原始值; 更新表单中的数据
USE 数据库名称; 指定使用的数据库
SHOW databases; 显示当前已有的数据库
SHOW tables; 显示当前数据库中的表单
SELECT * FROM 表单名称; 从表单中选中某个记录值
DELETE FROM 表单名 WHERE attribute=值; 从表单中删除某个记录值

1.创建一个名为testDB的数据库

mysql> create Database testDB;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| testDB             |
+--------------------+
5 rows in set (0.00 sec)

在testDB数据库中创建数据表mybook,并定义存储数据内容的结构。分别定义3个字段,其中,长度为15个字符的字符型字段name用来存放图书名称,整型字段price和pages分别存储图书的价格和页数。

mysql> use testDB;
Database changed
mysql> create table mybook(name char(15), price int, pages int);
Query OK, 0 rows affected (0.00 sec)

mysql> describe mybook;
+-------+----------+------+-----+---------+-------+
| Field | Type     | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+-------+
| name  | char(15) | YES  |     | NULL    |       |
| price | int(11)  | YES  |     | NULL    |       |
| pages | int(11)  | YES  |     | NULL    |       |
+-------+----------+------+-----+---------+-------+
3 rows in set (0.04 sec)

向mybook数据表中插一条图书信息,其中书名为Linux,价格和页数分别是60元和100页。使用select命令查询表单内容时,需要加上想要查询的字段;如果想查看表单中的所有内容,则可以使用星号(*)通配符来显示

mysql> insert into mybook(name,price,pages) values(Linux,60,100);
Query OK, 1 row affected (0.00 sec)

mysql> select * from mybook;
+-------+-------+-------+
| name  | price | pages |
+-------+-------+-------+
| Linux |    60 |   100 |
+-------+-------+-------+
1 row in set (0.00 sec)

使用update命令将刚才插入的Linux图书信息的价格修改为55元

mysql> update mybook set price=55 where name=Linux;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select name,price from mybook;
+-------+-------+
| name  | price |
+-------+-------+
| Linux |    55 |
+-------+-------+
1 row in set (0.00 sec)

使用delete命令删除数据表mybook中的所有内容,然后再查看该表单中的内容,可以发现该表单内容为空了。

mysql> delete from mybook;
Query OK, 1 row affected (0.00 sec)

mysql> select * from mybook;
Empty set (0.00 sec)

下面使用insert插入命令依次插入4条图书信息

mysql> insert into mybook(name,price,pages) values(Linux1,30,100);
Query OK, 1 row affected (0.00 sec)

mysql> insert into mybook(name,price,pages) values(Linux2,40,200);
Query OK, 1 row affected (0.00 sec)

mysql> insert into mybook(name,price,pages) values(Linux3,50,300);
Query OK, 1 row affected (0.00 sec)

mysql> insert into mybook(name,price,pages) values(Linux4,60,400);
Query OK, 1 row affected (0.00 sec)
where命令中使用的参数以及作用
参数 作用
= 相等
<>或!= 不相等
> 大于
< 小于
>= 大于或等于
<= 小于或等于
BETWEEN 在某个范围内
LIKE 搜索一个例子
IN 在列中搜索多个值

分别在mybook数据表中查找出价格大于35元或价格不等于50元的图书

mysql> select * from mybook where price>35;
+--------+-------+-------+
| name   | price | pages |
+--------+-------+-------+
| Linux2 |    40 |   200 |
| Linux3 |    50 |   300 |
| Linux4 |    60 |   400 |
+--------+-------+-------+
3 rows in set (0.00 sec)

mysql> select * from mybook where price!=50;
+--------+-------+-------+
| name   | price | pages |
+--------+-------+-------+
| Linux1 |    30 |   100 |
| Linux2 |    40 |   200 |
| Linux4 |    60 |   400 |
+--------+-------+-------+
3 rows in set (0.00 sec)

批量删除多条记录

mysql> select * from mybook;
+--------+-------+-------+
| name   | price | pages |
+--------+-------+-------+
| Linux1 |    30 |   100 |
| Linux2 |    40 |   200 |
| Linux3 |    50 |   300 |
| Linux4 |    60 |   400 |
+--------+-------+-------+
4 rows in set (0.00 sec)

mysql> delete from mybook where name in (Linux1,Linux3);
Query OK, 2 rows affected (0.00 sec)

mysql> select * from mybook;
+--------+-------+-------+
| name   | price | pages |
+--------+-------+-------+
| Linux2 |    40 |   200 |
| Linux4 |    60 |   400 |
+--------+-------+-------+
2 rows in set (0.00 sec)

以上是关于MySQL的增删改查的主要内容,如果未能解决你的问题,请参考以下文章

mysql的增删改查

mysql 数据表的增删改查 目录

如何用PHP代码实现MySQL数据库的增删改查

MySQL的增删改查

MySQL表的增删改查(基础)

MySQL数据库之表的增删改查