mysql语句-DML语句
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语句的更多相关文章
- MySQL之DML语句(insert update delete)
DML主要针对数据库表对象的数据而言的,一般DML完成: 插入新数据 修改已添加的数据 删除不需要的数据 1.insert into插入语句 //主键自增可以不插入,所以用null代替 ); //指定 ...
- 常用sql语句 DML语句
1.select *|字段名 from 表名 [where 条件] [order by 排序 asc|desc] [limit 限制输出 startrow,pagesize] 查询 2.insert ...
- MySQL的DDL语句、DML语句与DCL语句
背景:近几年,开源数据库逐渐流行起来.由于具有免费使用.配置简单.稳定性好.性能优良等优点,开源数据库在中低端应用上占据了很大的市场份额,而 MySQL 正是开源数据库中的杰出代表.MySQL 数据库 ...
- 详解MySQL第二篇—DML语句
DML 语句: DML 操作是指对数据库中表记录的操作,主要包括表记录的插入(insert).更新(update).删除(delete)和查(select),是开发人员日常使用最频繁的操作.下面将依次 ...
- 入门MySQL——DML语句篇
前言: 在上篇文章中,主要为大家介绍的是DDL语句的用法,可能细心的同学已经发现了.本篇文章将主要聚焦于DML语句,为大家讲解表数据相关操作. 这里说明下DDL与DML语句的分类,可能有的同学还不太 ...
- Mariadb/MySQL数据库单表查询基本操作及DML语句
Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...
- MySQL最基本的DML语句
一.什么叫DML? DML(Data Manipulation Language):数据操作语言.主要操作数据表中的数据,使用DML可以完成以后三件事: 插入数据 修改数据 查询数据 二.具体的语句操 ...
- JDBC基础篇(MYSQL)——使用statement执行DML语句(insert/update/delete)
注意:其中的JdbcUtil是我自定义的连接工具类:代码例子链接: package day02_statement; import java.sql.Connection; import java.s ...
- MySQL基础之DML语句
DML 语句 DML(Data Manipulation Language)语句:数据操纵语句. 用途:用于添加.修改.删除和查询数据库记录,并检查数据完整性. 常用关键字:insert.update ...
随机推荐
- Intellij Idea 2017创建web项目及tomcat部署实战
相关软件:Intellij Idea2017.jdk16.tomcat7 Intellij Idea直接安装(可根据需要选择自己设置的安装目录),jdk使用1.6/1.7/1.8都可以,主要是配置好系 ...
- Gym101138D Strange Queries/BZOJ5016 SNOI2017 一个简单的询问 莫队、前缀和、容斥
传送门--Gym 传送门--BZOJ THUWC2019D1T1撞题可还行 以前有些人做过还问过我,但是我没有珍惜,直到进入考场才追悔莫及-- 设\(que_{i,j}\)表示询问\((1,i,1,j ...
- 比起Windows,怎样解读Linux的文件系统与目录结构?
比起Windows,怎样解读Linux的文件系统与目录结构? Linux 和Windows的文件系统有些不同,在学习使用 Linux 之前,若能够了解这些不同,会有助于后续学习. 本文先对Window ...
- Java多线程编程核心技术(三)多线程通信
线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体.线程间的通信就是成为整体的必用方案之一,可以说,使线程间进行通信后,系统之间的交互性会更强大,在大大提高CPU利用率的同时 ...
- SVM(支持向量机)之Hinge Loss解释
Hinge Loss 解释 SVM 求解使通过建立二次规划原始问题,引入拉格朗日乘子法,然后转换成对偶的形式去求解,这是一种理论非常充实的解法.这里换一种角度来思考,在机器学习领域,一般的做法是经验风 ...
- 学习用Node.js和Elasticsearch构建搜索引擎(4): 构建Elasticsearch搜索引擎
一.目标 使用node搭建一个知识库检索系统,要求词条平均检索速度必须在1s以内. 二.思路. 本人思路如下图. 橙色部分为我们要开发的内容, ES服务搭建(暂时用单节点测试,集群搭建以后再说), 三 ...
- elk之查询方式(4种)
es 在查询时, 可以指定搜索类型为下面四种: QUERY_THEN_FETCH QUERY_AND_FEATCH DFS_QUERY_THEN_FEATCH DFS_QUERY_AND_FEATCH ...
- linux 下mysql服务的管理
一.mysql服务的管理 1.1 mysql启动与关闭 linux下启动mysql: /etc/init.d/mysqld start 关闭进程: ps -ef | grep mysql 找到进程号 ...
- C#复习笔记(3)--C#2:解决C#1的问题(可空值类型)
可空值类型 C#2推出可空类型来表示可以为null的值类型.这是一个呼声很高的需求,因为在常用的数据库中都是允许某些值类型可为空的.那么为什么值类型就不能为空呢?内存中用一个全0的值来表示null,但 ...
- Json详解以及fastjson使用教程
Json是一种轻量级的数据交换格式,采用一种“键:值”对的文本格式来存储和表示数据,在系统交换数据过程中常常被使用,是一种理想的数据交换语言.在使用Java做Web开发时,不可避免的会遇到Json的使 ...