Dieser Artikel vermittelt Ihnen ein detailliertes Verständnis der CURD-Operation von MySQL-Tabellen. Ich hoffe, er wird Ihnen hilfreich sein!
Eine Programmiersprache für den Betrieb relationaler Datenbanken. Sie definiert eine Reihe einheitlicher Standards für den Betrieb relationaler Datenbanken, die als SQL bezeichnet werden.
1. SQL-Anweisungen können einzeilig oder mehrzeilig geschrieben werden und mit einem Semikolon enden.
2. SQL-Anweisungen können Leerzeichen/Einrückungen verwenden, um die Lesbarkeit der Anweisung zu verbessern.
3. Bei den SQL-Anweisungen der MySQL-Datenbank wird die Groß-/Kleinschreibung nicht beachtet und es wird empfohlen, für Schlüsselwörter Großbuchstaben zu verwenden.
Datenabfragesprache, verwendet für Abfragedatensätze von Tabellen in der Datenbank | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2. Grundlegende Tabellenoperationen- Tabelle erstellen
create table 表名(定义列1, 定义列2, .......); 列 -> 变量名 数据类型 Nach dem Login kopieren
mysql> create table if not exists book( -> book_name varchar(32) comment '图书名称', -> book_author varchar(32)comment '图书作者' , -> book_price decimal(12,2) comment '图书价格', -> book_category varchar(12) comment '图书分类', -> publish_data timestamp -> )character set utf8mb4; Query OK, 0 rows affected (0.04 sec) Nach dem Login kopieren - Sehen Sie sich die Tabelle in der Bibliothek an
- Tabelle anzeigen Struktur
- Tabelle löschen
drop table 表名 Nach dem Login kopieren
mysql> desc test1; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | name | varchar(10) | YES | | NULL | | | age | int(11) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.02 sec) mysql> drop table test1; Query OK, 0 rows affected (0.04 sec) mysql> desc test1; ERROR 1146 (42S02): Table 'mytestdb.test1' doesn't exist Nach dem Login kopieren - Tabelle umbenennen
3. Vorgänge in MySQL hinzufügen, löschen, prüfen und ändern
Einfügung einer einzelnen Zeile (alle Spalten) -- 创建一张图书表 mysql> create table if not exists book( -> book_name varchar(32) comment '图书名称', -> book_author varchar(32)comment '图书作者' , -> book_price decimal(12,2) comment '图书价格', -> book_category varchar(12) comment '图书分类', -> publish_data timestamp -> )character set utf8mb4; Nach dem Login kopieren Einfügung mehrerer Zeilen (alle Spalten)insert into 表名 values(对应列的参数列表); -- 一次插入一行 Nach dem Login kopieren
Syntax Mit Vorsicht in Datenbanken auf Unternehmensebene verwenden, es ist einfach zu verwenden oder die Netzwerkbandbreite ist voll. Wenn ein externer Benutzerclient über Breitband auf den Server zugreifen möchte, kann der Server nicht richtig antworten. # 单行输入 mysql> insert into book values('计算机网络','谢希仁',45,'计算机类','2020-12-25 12:51:00'); Query OK, 1 row affected (0.01 sec) #多行输入 mysql> insert into book values('计算机组成原理','王峰',45,'硬件类','2020-12-12 12:00:00'), -> ('微机原理','李华',97,'硬件类','2000-12-19 20:00:00'); Query OK, 2 rows affected (0.04 sec) Records: 2 Duplicates: 0 Warnings: 0 #指定列插入 mysql> insert into book(book_name,book_author,publish_data) values ('软件工程','张三','2020-05-06 12:00:00'); Query OK, 1 row affected (0.02 sec) Nach dem Login kopieren
select * from 表名 -- * 表示通配符, 可以匹配表中的所有列. Nach dem Login kopieren
select * from book; Nach dem Login kopieren
-- 查询图书涨价10元后所有图书的名称作者和价格 mysql> select book_name ,book_author,book_price + 10 from book; +----------------+-------------+-----------------+ | book_name | book_author | book_price + 10 | +----------------+-------------+-----------------+ | 计算机网络 | 谢希仁 | 55.00 | | 计算机组成原理 | 王峰 | 55.00 | | 微机原理 | 李华 | 107.00 | | 软件工程 | 张三 | NULL | +----------------+-------------+-----------------+ 4 rows in set (0.00 sec) Nach dem Login kopieren
-- 查询图书价格低于50的图书作者和图书名称 mysql> select book_name,book_author from book where book_price < 50; +----------------+-------------+ | book_name | book_author | +----------------+-------------+ | 计算机网络 | 谢希仁 | | 计算机组成原理 | 王峰 | +----------------+-------------+ 2 rows in set (0.05 sec) -- 查询图书价格等于97的图书作者 mysql> select book_name ,book_author from book where book_price = 97; +-----------+-------------+ | book_name | book_author | +-----------+-------------+ | 微机原理 | 李华 | +-----------+-------------+ 1 row in set (0.00 sec) -- 查询图书价格在50 - 100 之间的图书名称 mysql> select book_name from book where book_price between 50 and 100; +------------+ | book_name | +------------+ | 微机原理 | | 计算机网络 | +------------+ 2 rows in set (0.02 sec)\ -- 查询图书价格在此范围内的图书名称 mysql> select book_name from book where book_price in (12,45); +----------------+ | book_name | +----------------+ | 计算机网络 | | 计算机组成原理 | +----------------+ 2 rows in set (0.00 sec) Nach dem Login kopieren
#查询姓张的作者的书本价格书名. mysql> select book_price,book_name,book_author from book where book_author like '张%'; +------------+------------+-------------+ | book_price | book_name | book_author | +------------+------------+-------------+ | NULL | 软件工程 | 张三 | | 89.00 | 计算机网络 | 张华 | +------------+------------+-------------+ 2 rows in set (0.00 sec) # 查询前缀为'计算机'后缀为七个字的书籍名称 mysql> select book_name from book where book_name like '计算机____'; +----------------+ | book_name | +----------------+ | 计算机组成原理 | +----------------+ #查询前缀为'计算机'的书籍名称并去重 mysql> select distinct book_name from book where book_name like '计算机%'; +----------------+ | book_name | +----------------+ | 计算机网络 | | 计算机组成原理 | +----------------+ 2 rows in set (0.00 sec) Nach dem Login kopieren
两个参数的limit子句的用法 select 元素1,元素2 from 表名 limit offset,count; #offset参数指定要返回的第一行的偏移量。第一行的偏移量为0,而不是1。 #count指定要返回的最大行数。 Nach dem Login kopieren 示例: mysql> select book_author from book limit 2, 3; +-------------+ | book_author | +-------------+ | 李华 | | 张三 | | 张华 | +-------------+ 3 rows in set (0.02 sec) #表示获取列表当中偏移量为2(表示从第3行开始), 最大行数为3的作者名称 Nach dem Login kopieren 带有一个参数的limit子句的用法 select 列名1.列名2 from 表名 limit count; # 表示从结果集的开头返回的最大行数为count; # 获取前count行的记录 Nach dem Login kopieren 等同于 select 列名1 ,列名2 from 表名 limit 0 , count;# 第一行的偏移量为0 Nach dem Login kopieren 示例 mysql> select book_price from book limit 5; +------------+ | book_price | +------------+ | 45.00 | | 45.00 | | 97.00 | | NULL | | 89.00 | +------------+ 5 rows in set (0.00 sec) # 获取表中前五行的图书价格 , 最大行数为5 Nach dem Login kopieren
#示例:获取价格第二高的图书名称 mysql> select book_name from book order by book_price desc limit 1,1; +------------+ | book_name | +------------+ | 计算机网络 | +------------+ 1 row in set (0.00 sec) Nach dem Login kopieren - 修改(update)MySQL当中使用update关键字来对数据进行修改 , 既可以修改单列又可以修改多列. update 表名 set 列名1 = 值 , 列名2 = 值 ... where 限制条件下修改 Nach dem Login kopieren
示例: #将书名为'软件工程'的图书价格修改为66元 mysql> update book set book_price = 66 where book_name = '软件工程'; Query OK, 1 row affected (0.05 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select book_price from book where book_name = '软件工程'; +------------ | book_price | +------------+ | 66.00 | +------------+ 1 row in set (0.00 sec) #将所有的图书价格修改为原来的二倍 mysql> update book set book_price = 2 * book_price; Query OK, 5 rows affected (0.02 sec) Rows matched: 5 Changed: 5 Warnings: 0 #更新成功 mysql> select book_price from book; +------------+ | book_price | +------------+ | 90.00 | | 90.00 | | 194.00 | | 132.00 | | 178.00 | +------------+ 5 rows in set (0.00 sec) Nach dem Login kopieren - 删除(delete)要从表中删除数据,需要使用delete 语句, delete 语句的 用法如下 delete from 表名 where + 条件 Nach dem Login kopieren 首先指定需要删除数据的表,其次使用条件指定where子句中删除的行记录, 如果行匹配条件,这些行记录将会删除.
示例 #删除图书表中图书单价大于150的图书记录 mysql> delete from book where book_price > 150; Query OK, 2 rows affected (0.01 sec) mysql> select book_price from book; +------------+ | book_price | +------------+ | 90.00 | | 90.00 | | 132.00 | +------------+ 3 rows in set (0.00 sec) Nach dem Login kopieren
【相关推荐:mysql视频教程】 |
Das obige ist der detaillierte Inhalt vonEin Artikel, der die CURD-Operation von MySQL-Tabellen ausführlich erklärt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!