SQL的增删改查

SQL 是用于访问和处理数据库的标准的计算机语言。注意哟,SQL是一门语言。而MySQL、SQL Server、MangoDB等都是数据库。

SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。由于它具有功能丰富、使用方便灵活、语言简洁易学等突出的优点,深受计算机工业界和计算机用户的欢迎。1980年10月,经美国国家标准局ANSI的数据库委员会X3H2批准,将SQL作为关系数据库语言的美国标准,同年公布了标准SQL,此后不久,国际标准化组织ISO也作出了同样的决定。

SQL命令

SQL分为DML和DDL两部分,DML是数据操作语言,DDL是数据定义语言。

DDL语句:
  • CREATE DATABASE:创建新数据库。
  • ALTER DATABASE:修改数据库。
  • CREATE TABLE:创建新表。
  • ALTER TABLE:变更(改变)数据库表。
  • DROP TABLE:删除表。
  • CREATE INDEX:创建索引(搜索键)。
  • DROP INDEX:删除索引。
DML语句:
  • INSERT INTO:向数据库表中插入数据。
  • SELECT:从数据库表中获取数据。
  • UPDATE:更新数据库表中的数据。
  • DELETE:从数据库表中删除数据。

INSERT INTO

INSERT INTO语句主要用于向表中插入新记录。
语法如下所示:

INSERT INTO table_name
VALUES (value1,value2,value3,...);

或

INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
Test_table表的内容如下所示:
id name age city
1 Mark 17 New York
2 Tom 18 Paris
3 Anni 17 Sydney
举例:
  • 向Test_table表中插入一行新的数据:
INSERT INTO Test_table VALUES(4,'CoCo',20,'Paris');

输出结果为:

Query OK, 1 row affected (0.20 sec)
  • 向Test_table表中插入多行新的数据:
INSERT INTO Test_table
VALUES(5,'KeKe',19,'London'),
(6,'Naci',20,'Sydney');
(7,'Angle',17,'Paris');

输出结果为:

Query OK, 3 rows affected (0.01 sec)
Records: 3  Duplicates: 0  Warnings: 0
  • 查看Test_table表中的数据
+----+------+------+----------+
| id | name | age  | city     |
+----+------+------+----------+
|  1 | Mark |   17 | New York |
|  2 | Tom  |   18 | Paris    |
|  3 | Anni |   17 | Sydney   |
|  4 | KeKe |   20 | Paris    |
|  5 | CoCo |   19 | London   |
|  6 | Naci |   20 | Sydney   |
|  7 | Angle|   17 | Paris    |
+----+------+------+----------+

SELECT

SELECT 语句主要用于从表中选取数据。返回的数据存储在结果集中。
语法如下所示:

SELECT column1, column2, ... FROM table_name;
举例:
  • 查询Test_table表中所有数据:
SELECT * FROM Test_table;

输出:

+----+------+------+----------+
| id | name | age  | city     |
+----+------+------+----------+
|  1 | Mark |   17 | New York |
|  2 | Tom  |   18 | Paris    |
|  3 | Anni |   17 | Sydney   |
|  4 | KeKe |   20 | Paris    |
|  5 | CoCo |   19 | London   |
|  6 | Naci |   20 | Sydney   |
|  7 | Angle|   17 | Paris    |
+----+------+------+----------+
  • 查询Test_table表中的id、name字段:
SELECT id, name FROM Test_table;

输出:

+----+------+
| id | name |
+----+------+
|  1 | Mark |
|  2 | Tom  |
|  3 | Anni |
|  4 | KeKe |
|  5 | CoCo |
|  6 | Naci |
|  7 | Angle|
+----+------+

UPDATE

UPDATE 语句用于修改表中已存在的记录。
语法如下所示:

UPDATE table_name SET column1 = value1, column2 = value2, ...
WHERE condition;
举例:
  • 将表中id为5的字段,对应的age更新为21:
UPDATE Test_table SET age=21 WHERE id=5;

输出:

Query OK, 1 row affected (0.20 sec)
Rows matched: 1  Changed: 1  Warnings: 0
  • 如果想将某个字段的全部值都修改,只要不指定WHERE子句就可以了,这里就不举例了。如果你想这样做的话,记得小心一点,毕竟数据一旦修改,就不能反悔了。

DELETE

DELETE 语句用于删除表中的记录。
语法如下所示:

DELETE FROM table_name WHERE condition;
举例:
  • 删除表中id字段值为3的数据:
DELETE FROM Test_table WHERE id=3;

输出:

Query OK, 1 row affected (0.04 sec)

查看Test_table表:

+----+------+------+----------+
| id | name | age  | city     |
+----+------+------+----------+
|  1 | Mark |   17 | New York |
|  2 | Tom  |   18 | Paris    |
|  4 | KeKe |   20 | Paris    |
|  5 | CoCo |   19 | London   |
|  6 | Naci |   20 | Sydney   |
|  7 | Angle|   17 | Paris    |
+----+------+------+----------+
  • 如果你不指定WHERE子句,则表示删除表中全部记录。这个操作要特别小心,因为一旦执行,就真的将整个表的数据删除了。
    这和删除数据表是不用的,删除数据表后整个表都不存在了。而使用DELETE删除表记录后,表依然存在,表的结构、属性和索引等将保持不变。

参考:https://www.9xkd.com/

你可能感兴趣的:(SQL)