MySQL之DML语句

文章目录

DML语句

数据操作语言DML(Data Manipulation Langua) 是SQL语言的一个分类,用于对表的数据进行增,删,改,查

创建表

  • CREATE TABLE 语句用于创建数据库中的表。

语法:

sql 复制代码
CREATE TABLE 表名称
(
    列名称1 数据类型,
    列名称2 数据类型,
    列名称3 数据类型,
    ....
);

实例:

  • 本例演示如何创建名为 "Persons" 的表。
sql 复制代码
CREATE TABLE Persons
(
    Id_P int,
    LastName varchar(255) character set utf8,
    FirstName varchar(255) character set utf8,
    Address varchar(255) character set utf8,
    City varchar(255) character set utf8
) charset = utf8;

添加表字段

  • alter table语句用于向一创建的数据表中添加字段

语法:

sql 复制代码
alter table 表名称 add(
	添加的字段名称
)

示例:

sql 复制代码
alter table persons add(
    name varchar(255)
    );

插入数据

  • INSERT INTO 语句用于向表格中插入新的行。

语法:

sql 复制代码
INSERT INTO 表名称 VALUES (值1, 值2,....);

我们也可以指定所要插入数据的列:

INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....);

实例:

本例演示 "Persons" 表插入记录的两种方式:

sql 复制代码
1、插入新的行

INSERT INTO Persons VALUES (1, 'Gates', 'Bill', 'Xuanwumen 10', 'Beijing');

2、在指定的列中插入数据

INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees');

查询数据

  • SELECT 语句用于从表中选取数据,结果被存储在一个结果表中(称为结果集)。

语法:

sql 复制代码
SELECT * FROM 表名称;
1
我们也可以指定所要查询数据的列:

SELECT 列名称 FROM 表名称;
1

SQL 语句对大小写不敏感,SELECT 等效于 select。

实例:

SQL SELECT * 实例:

sql 复制代码
SELECT * FROM Persons;

如需获取名为 "LastName" 和 "FirstName" 的列的内容(从名为 "Persons" 的数据库表),请使用类似这样的 SELECT 语句:

sql 复制代码
SELECT LastName,FirstName FROM Persons;

更新数据

Update 语句用于修改表中的数据。

语法:

sql 复制代码
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值;

实例:

更新某一行中的一个列:

目前 Persons 表有很多字段为 null 的数据,可以通过 UPDATE 为 LASTNAME 是 "Wilson" 的人添加FIRSTNAME:

sql 复制代码
UPDATE Persons SET FirstName = 'Fred' WHERE LastName = 'Wilson';

更新某一行中的若干列:

sql 复制代码
UPDATE Persons SET ID_P = 6,city= 'London' WHERE LastName = 'Wilson';

替换数据

如果记录已经存在,则替换,否则插入新记录

语法:

sql 复制代码
REPLACE INTO 表名称 (列1,列2......) VALUES (值1,值2......);

实例:

列换某一行中的一个列,如果没有数据则插入新记录

sql 复制代码
REPLACE INTO table_name (LastName,FirstName,Address )VALUES (22.77,33.33,'重庆');

删除数据

DELETE 语句用于删除表中的行。

语法:

sql 复制代码
DELETE FROM 表名称 WHERE 列名称 = 值;

实例:

删除某行:

删除 Persons 表中 LastName 为 "Fred Wilson" 的行:

sql 复制代码
DELETE FROM Persons WHERE LastName = 'Wilson';

删除所有行:

可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:

sql 复制代码
DELETE FROM table_name;

清除表数据

如果我们仅仅需要除去表内的数据,但并不删除表本身,那么我们该如何做呢?

可以使用 TRUNCATE TABLE 命令(仅仅删除表格中的数据):

语法:

sql 复制代码
TRUNCATE TABLE 表名称;

实例:

本例演示如何删除名为 "Persons" 的表。

sql 复制代码
TRUNCATE TABLE persons;

删除表

DROP TABLE 语句用于删除表(表的结构、属性以及索引也会被删除)。

语法:

sql 复制代码
DROP TABLE 表名称;

实例:

本例演示如何删除名为 "Persons" 的表。

sql 复制代码
drop table persons;
相关推荐
lpruoyu2 分钟前
MySQL整理【03】事务隔离级别和MVCC
数据库·mysql
li357423 分钟前
深入理解:MQ监听类 vs Spring事件监听类 —— 区别、用法与适用场景全解析
java·数据库·spring
安然~~~1 小时前
mysql的索引
数据库·mysql
GBASE1 小时前
GBASE南大通用技术分享:GBase 8s数据库典型安装(命令行方式)
数据库
康惠桀1 小时前
Oracle UNDO表空间监控指南
数据库·oracle
SeaTunnel1 小时前
实测有效|用 SeaTunnel 免费实现 MySQL→Oracle 实时同步,步骤超细
数据库·mysql·oracle·开源·seatunnel·数据同步·连接器
Mr.朱鹏1 小时前
ShardingJDBC实战指南
java·jvm·数据库·spring·分库分表·shardingjdbc·shardingshere
咔咔一顿操作1 小时前
MySQL 事务管理与锁机制:解决并发场景下的数据一致性问题
java·数据库·mysql
麦兜*2 小时前
MongoDB 备份与恢复终极指南:mongodump 和 mongorestore 深度实战
java·数据库·spring boot·mongodb·spring
xhbh6663 小时前
MySQL数据导出避坑指南:如何选择正确的工具并设计安全的备份策略?
数据库·mysql·oracle·程序员·mysql导出数据库