18.5 管理表单及数据

2022-06-01 16:36 更新

接下来向mybook数据表单中插一条图书信息。为此需要使用INSERT命令,并在命令中写清表单名称以及对应的字段项。执行该命令之后即可完成图书写入信息。下面我们使用该命令插入一条图书信息,其中书名为linuxprobe,价格和页数分别是60元和518页。在命令执行后也就意味着图书信息已经成功写入到数据表单中,然后就可以查询表单中的内容了。我们在使用select命令查询表单内容时,需要加上想要查询的字段;如果想查看表单中的所有内容,则可以使用星号(*)通配符来显示:

    MariaDB [linuxprobe]> INSERT INTO mybook(name,price,pages) VALUES('linuxprobe','60', '518');
    Query OK, 1 row affected (0.00 sec)
    MariaDB [linuxprobe]> select * from mybook;
    +------------+-------+-------+
    | name       | price | pages |
    +------------+-------+-------+
    | linuxprobe |    60 |   518 |
    +------------+-------+-------+
    1 rows in set (0.01 sec)

对数据库运维人员来讲,需要做好四门功课—增、删、改、查。这意味着创建数据表单并在其中插入内容仅仅是第一步,还需要掌握数据表单内容的修改方法。例如,我们可以使用update命令将刚才插入的linuxprobe图书信息的价格修改为55元,然后在使用select命令查看该图书的名称和定价信息。注意,因为这里只查看图书的名称和定价,而不涉及页码,所以无须再用星号通配符来显示所有内容。

    MariaDB [linuxprobe]> UPDATE mybook SET price=55 ;
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    MariaDB [linuxprobe]> SELECT name,price FROM mybook;
    +------------+-------+
    | name       | price |
    +------------+-------+
    | linuxprobe |    55 |
    +------------+-------+
    1 row in set (0.00 sec)

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

    MariaDB [linuxprobe]> DELETE FROM mybook;
    Query OK, 1 row affected (0.01 sec)
    MariaDB [linuxprobe]> SELECT * FROM mybook;
    Empty set (0.00 sec)

一般来讲,数据表单中会存放成千上万条数据信息。比如我们刚刚创建的用于保存图书信息的mybook表单,随着时间的推移,里面的图书信息也会越来越多。在这样的情况下,如果我们只想查看其价格大于某个数值的图书时,又该如何定义查询语句呢?

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

    MariaDB [linuxprobe]> INSERT INTO mybook(name,price,pages) VALUES('linuxprobe1','30','518');
    Query OK, 1 row affected (0.05 sec)
    MariaDB [linuxprobe]> INSERT INTO mybook(name,price,pages) VALUES('linuxprobe2','50','518');
    Query OK, 1 row affected (0.05 sec)
    MariaDB [linuxprobe]> INSERT INTO mybook(name,price,pages) VALUES('linuxprobe3','80','518');
    Query OK, 1 row affected (0.01 sec)
    MariaDB [linuxprobe]> INSERT INTO mybook(name,price,pages) VALUES('linuxprobe4','100','518');
    Query OK, 1 row affected (0.00 sec)

要想让查询结果更加精准,就需要结合使用select与where命令了。其中,where命令是在数据库中进行匹配查询的条件命令。通过设置查询条件,就可以仅查找出符合该条件的数据。表18-3列出了where命令中常用的查询参数以及作用。

表18-3 where命令中使用的参数以及作用

参数 作用
= 相等
<>或!= 不相等
> 大于
< 小于
>= 大于或等于
<= 小于或等于
BETWEEN 在某个范围内
LIKE 搜索一个例子
IN 在列中搜索多个值

现在进入动手环节。分别在mybook表单中查找出价格大于75元或价格不等于80元的图书,其对应的命令如下所示。在熟悉了这两个查询条件之后,大家可以自行尝试精确查找图书名为linuxprobe2的图书信息。

    MariaDB [linuxprobe]> SELECT * FROM mybook WHERE price>75;
    +-------------+-------+-------+
    | name        | price | pages |
    +-------------+-------+-------+
    | linuxprobe3 |    80 |   518 |
    | linuxprobe4 |   100 |   518 |
    +-------------+-------+-------+
    2 rows in set (0.06 sec)
    MariaDB [linuxprobe]> SELECT * FROM mybook WHERE price!=80;
    +-------------+-------+-------+
    | name | price | pages        |
    +-------------+-------+-------+
    | linuxprobe1  | 30  | 518    |
    | linuxprobe2  | 50  | 518    |
    | linuxprobe4  | 100 | 518    |
    +-------------+-------+-------+
    3 rows in set (0.01 sec)
    MariaDB [mysql]> exit
    Bye
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号