MySQL数据库之DML(数据操作语言)
对表记录的增删改
1.MySQL之DML创建数据表user
create table user(
id int unsigned not null auto_increment primary key,
user_name varchar() not null,
password char() not null,
email varchar() not null,
mobile char() not null,
fee decimal(,) not null default 0.00,
age tinyint() unsigned not null
);
查user表中的数据:
select * from user;
2.MySQL之DML插入数据库的几种方法
insert into 表名(列1,列2,......) values(列值1,列值2,......);其中,列和值是一一对应的;
法一:insert into user(user_name,password,email,mobile,fee,age) values('jack',md5(''),'jack@163.com','',123.11,);
法二:insert into user(user_name,email) values('jack','jack@163.com');
法三:insert into user values(3,'jack2',md5('1234562'),'jack2@163.com','13045678900',13.01,25);
注意:
(1)如果sql_mode设置为STRICT_TRANS_TABLE,方法二会出错,因为在该模式下,如果一个值不能插入到一个事务表中,则中断当前的操作,对非事务表不做任何限制,即该模式下为严格模式。具体可看:MySQL的sql_mode解析与设置;ERROR 1364 (HY000): Field '***' doesn't have a default value 解决方法
(2)最新版的MySql移除了password函数;MySQL数据库内置加密函数总结
4.MySQL之DML数据的更新
update 表名 set lie1=列值1,列2=列值2 where 条件;
注意,不加where条件会修改所有的记录
修改前的user表:
(1)执行以下更新命令后:
update user set age= where id=;
user表更新成:
(2)执行以下更新命令后:
update user set fee=11.10 where fee=0.00;
user表更新成:
(3)执行以下更新命令后:
update user set user_name='zhang' where user_name!='lidehua';
user表更新成:
(4)执行以下更新命令后:
update user set email='hehe@163.com' where email='';
user表更新成:
(5)执行以下更新命令后:
update user set user_name='wang' where id in(,);
user表更新成:
(6)执行以下更新命令后:
update user set mobile='' where id between and ;
user表更新成:
(7)执行以下更新命令后:
update user set password=md5(''),mobile='',age= where id=;
user表更新成:
5.MySQL之DML数据的删除
(1)delete from 表名 where 条件;注意:不加where会删除所有的记录
(2)truncate 表名;注:是DDL的
区别:
truncate将表清空了,插入数据时id会从头开始排;用delete删除整个表或者某一行数据,删除的id值仍被占用,插入数据时,id会紧接着删掉的id值进行递增;
truncate适用于删除垃圾数据;
MySQL数据库之DML(数据操作语言)的更多相关文章
- DML数据操作语言
DML数据操作语言 用来对数据库中表的数据记录进行更新.(增删改) 插入insert -- insert into 表(列名1,列名2,列名3...) values (值1,值2,值3...):向表中 ...
- 6.1课堂笔记—DML(数据操作语言),DQL查询语句
一.DML(数据操作语言) InnoDB MyISAM 支持事务 不支持事务 不支持全文索引 支持全文索引 支持外键约束 不支持 命令查看默认存储引擎 show variables like '%st ...
- DML数据操作语言之增加,删除,更新
1.数据的增加 数据的增加要用到insert语句 ,基本格式是: insert into <表名> (列名1,列名2,列名3,......) values (值1,值2,值3,..... ...
- DML数据操作语言之常用函数
所谓函数,就是输入某一值,得到相应的输出结果的功能.相当于一个加工厂,给了原料,最终产出成品. 其中原料 就是参数(parameter). 产品 就是返回值. 函数大致可以分为以下五个种类: 算术函数 ...
- MySQL SQL DML (数据操作语言)
包括 SELECT, UPDATE, DELETE, INSERT SELECT 从数据库表中获取数据 用法 SELECT name FROM students; SELECT name,age FR ...
- DML数据操作语言之复杂查询
1.视图(View) 我们知道,在关系型数据库中,用来保存实际数据记录的是数据表.和表同等概念也是用来保存东西是:视图. 但是数据表是用来保存实际数据记录的,而视图是用来保存常用select语句的. ...
- DML数据操作语言之查询(二)
当我们查询出了N条记录之后 ,我们知道一共是几条记录,或者这些记录某一字段(列值)的最大值,最小值,平均值等,就可以使用聚合函数. 1.聚合函数 聚合函数会将null 排除在外.但是count(*)例 ...
- DML数据操作语言之谓词,case表达式
谓词:就是返回值是真值的函数. 前面接触到的“>” “<” “=”等称为比较运算符,它们的正式名称就是比较谓词.因为它们比较之后返回的结果是真值. 由于谓词 返回的结果是一个真值 ,即tr ...
- DML数据操作语言之查询(一)
1.select语句基础 基本语句格式: select <列名>,.... from <表名>; select子句中列举出希望从表中查询出的列的名称,from子句则指定了选取 ...
- DML数据操作语言练习
--创建表T_HQ_BM2 --create table t_hq_bm2 as select * from t_hq_bm; commit; --添加行内容 --insert into t_hq_b ...
随机推荐
- ICPC Asia Nanning 2017 L. Twice Equation (规律 高精度运算)
题目链接:Twice Equation 比赛链接:ICPC Asia Nanning 2017 Description For given \(L\), find the smallest \(n\) ...
- autocad 2015 破解方法
下载 http://trial.autodesk.com/SWDLDNET4/2015/ACD/DLM/AutoCAD_2015_Simplified_Chinese_Win_64bit_dlm.sf ...
- Java高级进阶:自定义ClassLoader
假如我们的类不在classpath下,而我们又想读取一个自定义的目录下的class,如果做呢? 读取自定义目录的类 示例读取c:/test/com/test.jdk/Key.class这个类. pac ...
- 【gcc】更新下载编译gcc遇到的各种问题
帮学长的oj升级gcc版本.遇到了贼多问题.. [悲惨的开始] 安装gcc版本推荐ustc的mirror的下载,超快der... https://mirrors.ustc.edu.cn/gnu/gcc ...
- Vue-cli开发笔记二----------接口调用、配置全局变量
我做的一个项目,本身是没用任何框架,纯手写的前端及数据交互,项目已经完结.最近学Vue,于是借用这个项目,改装成vue项目. (一)接口问题:使用axios的调用方法,proxyTable解决开发环境 ...
- Linux操作系统 和 Windows操作系统 的区别
针对这两个操作系统,下面是几点区别. 1.免费与收费 在中国, windows 和 linux 都是免费的,至少对个人用户是如此,如果哪天国内windows真的严打盗版了,那linux的春天就到了!但 ...
- Dubbo在安全机制方面是如何解决的
Dubbo在安全机制方面是如何解决的 Dubbo通过Token令牌防止用户绕过注册中心直连,然后在注册中心上管理授权.Dubbo还提供服务黑白名单,来控制服务所允许的调用方.
- 转 直接在浏览器运行Python代码
到这个链接将代码下载到本地,然后打开cmd,使用python运行此文件,然后不要关闭窗口: https://raw.githubusercontent.com/michaelliao/learn-py ...
- H5新增的postMessage跨域解决方案Demo
Demo背景:html中使用iframe嵌入了跨域的vue项目,在html中将参数传入到跨越的vue项目中. 向跨越的子窗口中发送数据 function sendMessage(data) { // ...
- canvas画布导出图片并下载
近期在学习关于画布知识,关于 画布导出图片, 在导出jpeg格式的图片时,会发现图片背景色变成了黑色,原因是画布透明的地方 默认转成了黑色,可以在绘制画布前设置透明处背景色为白色. // 背景色转换成 ...