DML语句

DML是指对数据库中表记录的操作,主要包括数据的增删改查以及更新,下面依次介绍

首先创建一张表::

表名:emp

字段:ename varchar(20),hiredate date ,sal decimal(10,2), deptno int(3)

mysql> create table emp(
-> ename varchar(20),
-> hiredate date,
-> sal decimal(10,2),
-> deptno int(3));
Query OK, 0 rows affected (0.02 sec) mysql> desc emp;
+----------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+---------------+------+-----+---------+-------+
| ename | varchar(20) | YES | | NULL | |
| hiredate | date | YES | | NULL | |
| sal | decimal(10,2) | YES | | NULL | |
| deptno | int(3) | YES | | NULL | |
+----------+---------------+------+-----+---------+-------+
4 rows in set (0.01 sec)

1、insert插入记录

语法:insert into 表名(可选字段传值) values(与前面字段对应填值)

不指定字段名时顺序一一对应全要传值。

列如:

insert into emp values('kingfan','2018-10-23','2000',1);
mysql> insert into emp values('kingfan','2018-10-23','2000',1);
Query OK, 1 row affected (0.01 sec) #使用查询语句查看添加记录
mysql> select * from emp;
+---------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+---------+------------+---------+--------+
| kingfan | 2018-10-23 | 2000.00 | 1 |
+---------+------------+---------+--------+
1 row in set (0.00 sec)

mysql还支持多条语句同时插入:

mysql> insert into emp values('rnf','2000-1-1','3000','2'),('edg','2000-1-1','4000',1);
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0 mysql> select * from emp;
+---------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+---------+------------+---------+--------+
| kingfan | 2018-10-23 | 2000.00 | 1 |
| rnf | 2000-01-01 | 3000.00 | 2 |
| edg | 2000-01-01 | 4000.00 | 1 |
+---------+------------+---------+--------+
3 rows in set (0.00 sec)

注意每条记录之间要逗号隔开

更新记录update

对于表中的记录的值可以通过update命令来修改

语法1: update 表名 set 字段名=修改值 where 字段名=值;where是筛选条根据条件把找到的记录然后将set后面的字段名设定成指定值。

语法2:update 表名 set 字段名=修改值 where 字段名 like 值;

语法1:将enmae=kingfan的记录的ename改成Kingfan

mysql> select * from emp;
+---------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+---------+------------+---------+--------+
| kingfan | 2018-10-23 | 2000.00 | 1 |
| rnf | 2000-01-01 | 3000.00 | 2 |
| edg | 2000-01-01 | 4000.00 | 1 |
+---------+------------+---------+--------+
3 rows in set (0.00 sec) mysql> update emp set ename='KingFan' where ename='kingfan';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from emp;
+---------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+---------+------------+---------+--------+
| KingFan | 2018-10-23 | 2000.00 | 1 |
| rnf | 2000-01-01 | 3000.00 | 2 |
| edg | 2000-01-01 | 4000.00 | 1 |
+---------+------------+---------+--------+
3 rows in set (0.00 sec)

语法2:

mysql> update emp set ename='RNG' where ename like 'rnf';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from emp;
+---------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+---------+------------+---------+--------+
| KingFan | 2018-10-23 | 2000.00 | 1 |
| RNG | 2000-01-01 | 3000.00 | 2 |
| edg | 2000-01-01 | 4000.00 | 1 |
+---------+------------+---------+--------+
3 rows in set (0.00 sec)

删除记录

语法:delete from 表名 where 条件;

注意:不加where条件是删除表中所有记录

delete from emp where ename='KingFan';
mysql> select * from emp;
+---------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+---------+------------+---------+--------+
| KingFan | 2018-10-23 | 2000.00 | 1 |
| RNG | 2000-01-01 | 3000.00 | 2 |
| edg | 2000-01-01 | 4000.00 | 1 |
+---------+------------+---------+--------+
3 rows in set (0.00 sec) mysql> delete from emp where ename='KingFan';
Query OK, 1 row affected (0.01 sec) mysql> select * from emp;
+-------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+-------+------------+---------+--------+
| RNG | 2000-01-01 | 3000.00 | 2 |
| edg | 2000-01-01 | 4000.00 | 1 |
+-------+------------+---------+--------+
2 rows in set (0.00 sec)

查询记录select

查询所有记录

语法select * from 表名

select * from emp
mysql> select * from emp;
+-------+------------+---------+--------+
| ename | hiredate | sal | deptno |
+-------+------------+---------+--------+
| rng | 1993-01-01 | 2000.00 | 1 |
| edg | 1993-01-01 | 3000.00 | 2 |
+-------+------------+---------+--------+
2 rows in set (0.00 sec) mysql>

按字段名和条件查询

mysql> select ename from emp where deptno=1;
+-------+
| ename |
+-------+
| rng |
+-------+
1 row in set (0.00 sec) mysql>

mysql语句-DML语句的更多相关文章

  1. MySQL之DML语句(insert update delete)

    DML主要针对数据库表对象的数据而言的,一般DML完成: 插入新数据 修改已添加的数据 删除不需要的数据 1.insert into插入语句 //主键自增可以不插入,所以用null代替 ); //指定 ...

  2. 常用sql语句 DML语句

    1.select  *|字段名 from 表名 [where 条件] [order by 排序 asc|desc] [limit 限制输出 startrow,pagesize] 查询 2.insert ...

  3. MySQL的DDL语句、DML语句与DCL语句

    背景:近几年,开源数据库逐渐流行起来.由于具有免费使用.配置简单.稳定性好.性能优良等优点,开源数据库在中低端应用上占据了很大的市场份额,而 MySQL 正是开源数据库中的杰出代表.MySQL 数据库 ...

  4. 详解MySQL第二篇—DML语句

    DML 语句: DML 操作是指对数据库中表记录的操作,主要包括表记录的插入(insert).更新(update).删除(delete)和查(select),是开发人员日常使用最频繁的操作.下面将依次 ...

  5. 入门MySQL——DML语句篇

    前言:  在上篇文章中,主要为大家介绍的是DDL语句的用法,可能细心的同学已经发现了.本篇文章将主要聚焦于DML语句,为大家讲解表数据相关操作. 这里说明下DDL与DML语句的分类,可能有的同学还不太 ...

  6. Mariadb/MySQL数据库单表查询基本操作及DML语句

    Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...

  7. MySQL最基本的DML语句

    一.什么叫DML? DML(Data Manipulation Language):数据操作语言.主要操作数据表中的数据,使用DML可以完成以后三件事: 插入数据 修改数据 查询数据 二.具体的语句操 ...

  8. JDBC基础篇(MYSQL)——使用statement执行DML语句(insert/update/delete)

    注意:其中的JdbcUtil是我自定义的连接工具类:代码例子链接: package day02_statement; import java.sql.Connection; import java.s ...

  9. MySQL基础之DML语句

    DML 语句 DML(Data Manipulation Language)语句:数据操纵语句. 用途:用于添加.修改.删除和查询数据库记录,并检查数据完整性. 常用关键字:insert.update ...

随机推荐

  1. Gym101138D Strange Queries/BZOJ5016 SNOI2017 一个简单的询问 莫队、前缀和、容斥

    传送门--Gym 传送门--BZOJ THUWC2019D1T1撞题可还行 以前有些人做过还问过我,但是我没有珍惜,直到进入考场才追悔莫及-- 设\(que_{i,j}\)表示询问\((1,i,1,j ...

  2. 【转】MySQL中的行级锁,表级锁,页级锁

    在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足. 在数据库的锁机制中介绍过,在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引 ...

  3. Java发送Email邮件及SpringBoot集成

    一:普通方式发送 1.导包 <!--Java MAil 发送邮件API--> <dependency> <groupId>javax.mail</groupI ...

  4. ML.NET 示例:聚类之客户细分

    写在前面 准备近期将微软的machinelearning-samples翻译成中文,水平有限,如有错漏,请大家多多指正. 如果有朋友对此感兴趣,可以加入我:https://github.com/fei ...

  5. SQL Server 使用 Merge 关键字进行表数据同步

    简介 Merge关键字是一个神奇的DML关键字.它在SQL Server 2008被引入,它能将Insert,Update,Delete简单的并为一句.MSDN对于Merge的解释非常的短小精悍:”根 ...

  6. Individual Project "写一个能自动生成小学四则运算题目的程序"

    一.题目简介 写一个能自动生成小学四则运算题目的程序. 初步拟定要实现的功能后,估计一下自己需要花多长时间.编程过程中记录自己实际用了多长时间. 然后和同学们比较一下各自程序的功能.实现方法的异同等等 ...

  7. 【kindle笔记】之 《明朝那些事儿》-2018-7-1

    [kindle笔记]读书记录-总 最近在读这本书.之前在微信读书里断断续续读过,读到深处还想蹦起来做笔记那种.后来种种原因断了,再没续上. 现在又开始啦.最近还在重八兄造反阶段,还很早呢,有时候晚上玩 ...

  8. Vmware的虚拟机示例进入BIOS方法

    虚拟机(Vmware)怎么进入BIOS_百度经验 https://jingyan.baidu.com/article/7e440953e566472fc0e2eff7.html Vmware虚拟机进入 ...

  9. freemarker数值格式化

    语法:number?string(exp) 说明:根据给定的格式化表达式将数值格式化为字符串. 参数:格式化字符串,"0"表示固定占位(至少有这个位数,不足位数用0代替),&quo ...

  10. 运行Spark-shell,解决Unable to load native-hadoop library for your platform

    启动spark后,运行bin/spark-shell会出现一个警告 提君博客原创 WARN util.NativeCodeLoader: Unable to load native-hadoop li ...