<MySQL>入门二 增删改 DML
-- DML语言 /*
数据操作的语言
插入:insert
修改:update
删除:delete
*/
1.插入
-- 插入语句
/*
语法:insert into 表名(列名...) values(值...);
*/ -- 方式一 -- 1.插入值的类型要与列的类型一致或兼容
INSERT INTO beauty(`id`,`name`,`sex`,`borndate`,`phone`,`photo`,`boyfriend_id`)
VALUES(13,'麦克雷','男','1984.7.1','',NULL,2); -- 2.可以为Null的列如何插入值?
-- 方式一 写null值
-- 方式二 插入的字段不写 自动填充默认值或Null
INSERT INTO beauty(`id`,`name`,`sex`,`borndate`,`phone`,`boyfriend_id`)
VALUES(13,'麦克雷','男','1984.7.1','',2); -- 3.列的顺序是否可以调换,可以
-- 4.列数和值数必须一致
-- 5.可以省略列名,默认所有列,并且列的顺序和表中的顺序一致。 -- 方式二
/*
insert into 表名 set 列名=值,列名=值...;
*/
INSERT INTO beauty SET id=19,NAME='张飞',phone=''; -- 两种方式比较
-- 1.方式一支持多行插入,方式二不支持
INSERT INTO beauty
VALUES(13,'麦克雷','男','1984.7.1','',NULL,2),
VALUES(14,'天使','女','1999.6.1','',NULL,3),
...; -- 2.方式一支持子查询,方式二不支持
INSERT INTO beauty(id,NAME,phone) SELECT 55,'骚猪','';
2.修改
-- 修改
/*
1.修改单表的记录☆
语法:update 表名 set 列=新值,列=新值... where 筛选条件 2.修改多表的记录
sql92:
update 表1 别名,表2 别名 set 列=新值.. where连接条件 and 筛选条件
sql99:
update 表1 别名 inner(left)right join 表2 别名 on 连接条件 set列=新值 where 筛选条件; */ -- 修改单表记录
-- 1.修改beauty表中,姓苍的电话为110
UPDATE beauty SET phone = '' WHERE NAME LIKE '苍%'; -- 2.修改boys表中id=2的名称为张飞,魅力值为10
UPDATE boys SET boyName = '张飞',userCP = 10 WHERE id = 2; -- 修改多表记录
-- 1.修改张无忌的女朋友的手机号为114
UPDATE boys bo
JOIN beauty be
ON bo.`id`=be.`boyfriend_id`
SET be.`phone`=''
WHERE bo.`boyName`='张无忌'; -- 2.修改没有男朋友的 女神的男朋友编号都为2号
UPDATE beauty SET boyfriend_id =2 WHERE boyfriend_id IS NULL;
3.删除
-- 删除语句
/*
delete
1.单表删除
语法一:delete from 表名 where 筛选条件
2.多表删除
sql92: delete 别名 from 表1 别名,表2 别名 where 连接条件 and 筛选条件;
sql99: delete 别名 from 表1 别名 inner left right join 表2 别名 on 连接条件 where 筛选条件 truncate
trancate table 表名;
*/ -- delete
-- 单表删除
-- 删除手机号以9结尾的女神信息
DELETE FROM beauty WHERE phone LIKE '%9'; -- 多表删除
-- 删除张无忌的女朋友的信息
DELETE be
FROM beauty be
INNER JOIN boys bo
ON be.`boyfriend_id`=bo.`id`
WHERE bo.`boyName`='张无忌'; -- 删除黄晓明的信息和它女朋友的信息
DELETE be,bo
FROM beauty be
INNER JOIN boys bo
ON be.`boyfriend_id`=bo.`id`
WHERE bo.`boyName`='黄晓明'; -- truncate语句
-- 只能删除整个表,后面不能加筛选条件 -- delete 和 truncate比较
/*
1.delete可以加where条件,truncate不能加
2.truncate删除,效率高一些
3.加入要删除的表中有自增长列
如果用delete删除后,再插入值,自增长列的值从断点开始
而truncate删除后,再插入值,自增长列的值从1开始
4.truncate删除没有返回值,delete删除有返回值
5.truncate删除不能回滚,delete删除可以回滚
*/
<MySQL>入门二 增删改 DML的更多相关文章
- mybatis入门(二):增删改查
mybatis的原理: 1.mybatis是一个持久层框架,是apache下的顶级项目 mybatis托管到googlecode下,目前托管到了github下面 2.mybatis可以将向prepar ...
- mybatis入门二-----增删改查
一.使用MyBatis对表执行CRUD操作——基于XML的实现 1.定义sql映射xml文件 userMapper.xml文件的内容如下: <?xml version="1.0&quo ...
- Mybatis入门之增删改查
Mybatis入门之增删改查 Mybatis如果操作成功,但是数据库没有更新那就是得添加事务了.(增删改都要添加)----- 浪费了我40多分钟怀疑人生后来去百度... 导入包: 引入配置文件: sq ...
- 手撸Mysql原生语句--增删改查
mysql数据库的增删改查有以下的几种的情况, 1.DDL语句 数据库定义语言: 数据库.表.视图.索引.存储过程,例如CREATE DROP ALTER SHOW 2.DML语句 数据库操纵语言: ...
- java jdbc 连接mysql数据库 实现增删改查
好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...
- MyBatis学习系列二——增删改查
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改, ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
- 【转载】通过JDBC对MySQL数据库的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- MySQL 数据的增删改查
一.数据库的增删改 一. 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 1.使用INSERT实现数据的插入 2.UPDATE实现数据的更新 3.使用DELETE实现数 ...
随机推荐
- caioj1472: 后缀自动机1:多个串的LCS
子串母串跑合并答案 一个点的fail的dep是比任意一条根到这个点路径长度要小的. 那么改就可以直接来了. #include<cstdio> #include<iostream> ...
- go语言---for range
学习-go语言坑之for range https://www.cnblogs.com/hetonghai/p/6718250.html go只提供了一种循环方式,即for循环,在使用时可以像c那样使用 ...
- 杂项-Java:MyBatis
ylbtech-杂项-Java:MyBatis 1.返回顶部 1. MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundatio ...
- iOS核心动画以及UIView动画的介绍
我们看到很多App带有绚丽狂拽的特效,别出心裁的控件设计,很大程度上提高了用户体验,在增加了实用性的同时,也赋予了app无限的生命力.这些华丽的效果很多都是基于iOS的核心动画原理实现的,本文介绍一些 ...
- 昆石VOS3000_2.1.3.2完整安装包及安装脚本
安装包下载地址:http://www.51voip.org/post/55.html 安装教程: 上传安装包 核实 关闭selinux 是否关闭 /usr/sbin/sestatus -v cd /r ...
- [Shell学习笔记] read命令从键盘或文件中获取标准输入(转载)
转自:http://www.1987.name/151.html read命令是用于从终端或者文件中读取输入的内部命令,read命令读取整行输入,每行末尾的换行符不被读入.在read命令后面,如果没有 ...
- Objective-C NSObject与运行时系统
创建: 2018/01/26 完成: 2018/02/02 遗留: TODO NSObject 运行时系统 程序运行时候起作用的系统? NSObject是运行时系统的接口(API) 属性 只有一 ...
- P3349 [ZJOI2016]小星星
传送门 题意都需要看题解才能明白我是不是已经废了 题意就是求一个从树\(S\)到图\(T\)的映射,满足若树上的两个点有边,则它们映射在图中的两个点也连有边,且不能有多个点映射到同一个点 我们先不考虑 ...
- 状压DP UVA 10817 Headmaster's Headache
题目传送门 /* 题意:学校有在任的老师和应聘的老师,选择一些应聘老师,使得每门科目至少两个老师教,问最少花费多少 状压DP:一看到数据那么小,肯定是状压了.这个状态不好想,dp[s1][s2]表示s ...
- 因Window服务器自动更新并重启导致WebSphere服务停止服务故障一例
最近公司购买了两台Windows Server 2008 R2服务器用于提供提供Web服务,A机器安装了IHS+DM+WAS8.5集群,B机器安装了Oracle11gR2用于数据存储,两台机器均可连接 ...