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 ...
随机推荐
- 调用API接口,查询手机号码归属地(2)
使用pymysql pip install pymysql 创建mysql测试表 CREATE TABLE `userinfo` ( `id` int(20) NOT NULL AUTO_INCREM ...
- hdu6537 /// DP 最长不降子序列->最长公共子序列
题目大意: 给定一个字符串 字符为0~9 求翻转某个区间后使得串中的最长不降子序列最长 因为字符范围为0~9 假设有一个 0 1 2 3 4 5 6 7 8 9 的序列 此时翻转某个区间得到形如 0 ...
- CSS兼容问题资料汇集
CSS兼容问题一直困扰着CSSer,面对各浏览器,往往感觉束手无策,愁眉不展.CSS Hack是在标准CSS没办法兼容各浏览器显示效果时才会用上的补救方法,在各浏览器厂商解析CSS没有达成一致前,我们 ...
- Kettle 中的循环
说道循环,小伙伴们肯定不陌生,就是重复干一件事:而kettle中的循环一般是发生在job中,因为job是串行执行的: kettle的循环有两种,一种是通过js脚本,另外一种是通过遍历前面步骤返回的每一 ...
- ADS 命令行命令介绍
armasm 1. 命令:armasm [选项] -o 目标文件 源文件 2. 选项说明 -Errors 错误文件名 ;指定一个错误输出文件 -I 目录[,目录] ;指 ...
- md详解和rd详解:一次性创建多个目录和多级子目录
md 命令: 官方解释: E:\ABC>md /? 创建目录. MKDIR [drive:]path MD [drive:]path 如果命令扩展被启用,MKDIR 会如下改变: 如果需要,MK ...
- 深入研究js中的位运算及用法
什么是位运算? 位运算是在数字底层(即表示数字的 32 个数位)进行运算的.由于位运算是低级的运算操作,所以速度往往也是最快的(相对其它运算如加减乘除来说),并且借助位运算有时我们还能实现更简单的程序 ...
- nodejs route的简单使用
demo var express=require('express'); var app=express(); var routeUser=express.Router(); var routeTea ...
- jq-demo-点击选择(英雄联盟)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- java常用类——比较器
Comparable和Comparator接口都是为了对类进行比较,众所周知,诸如Integer,double等基本数据类型,java可以对他们进行比较,而对于类的比较,需要人工定义比较用到的字段比较 ...