SQL --Chapter 04 数据更新
数据的插入(INSERT语句的使用方法)
INSERT INTO ShohinIns (shohin_id, shohin_mei, shohin_bunrui, hanbai_tanka,
原则上,执行一次INSERT语句会插入一行数据。
对表进行全列INSERT时,可以省略表名后的列清单。
省略INSERT语句中的列名,就会自动设定为该列的默认值(没有默认值时会设定为NULL)。
从其他表中复制数据:INSERT …SELECT。
INSERT语句的SELECT语句中,可以使用WHERE子句或者GROUP BY子句等任何SQL语法。(但使用ORDER BY子句并不会产生任何效果)。
数据的删除(DELETE语句的使用)
DROP TABLE语句可以将表完全删除。
DELETE语句会留下表(容器),而删除表中的全部数据。
清空表:DELETE FROM Shohin;
DELETE语句的删除对象并不是表或者列,而是记录(行)。
可以通过WHERE字句指定对象条件来删除部分数据。
注:TRUNCATE <表名>; 只能删除全部数据,正因为它不能具体地控制删除对象,所有其处理速度比DELETE要快的多。因此需要删除全部数据时,使用TRUNCATE可以缩短执行时间。
数据的更新(UPDATE语句的使用方法)
UPDATE语句:
UPDATE <表名>
SET <列名> = <表达式>
WHERE <条件>;
使用UPDATE语句可以将值清空为NULL(但只限于未设置NOT NULL约束的列)。
多列更新:使用逗号将列进行分隔排列
UPDATE Shohin
SET hanbai_tanka = hanbai_tanka * 10,
shiire_tanka = shiire_tanka / 2
WHERE shohin_bunrui = '厨房用具';
事务
事务是需要在同一个处理单元执行的一系列更新处理的集合。
START TRANSACTION; -- 运动T恤的销售单价下调1000日元
UPDATE Shohin
SET hanbai_tanka = hanbai_tanka - 1000
WHERE shohin_mei = '运动T恤'; -- T恤的销售单价上浮1000日元
UPDATE Shohin
SET hanbai_tanka = hanbai_tanka + 1000
WHERE shohin_mei = 'T恤'; COMMIT; START TRANSACTION; -- 运动T恤的销售单价下调1000日元
UPDATE Shohin
SET hanbai_tanka = hanbai_tanka - 1000
WHERE shohin_mei = '运动T恤'; -- T恤的销售单价上浮1000日元
UPDATE Shohin
SET hanbai_tanka = hanbai_tanka + 1000
WHERE shohin_mei = 'T恤'; ROLLBACK;
事务处理何时开始:
几乎所有的数据库产品,每条SQL语句就是一个事务(自动提交模式)。
如果需要回滚操作,需要关闭自动提交或者明示开始事务(start transaction)
事务的ACID特性:原子性、一致性、隔离性、持久性。.
SQL --Chapter 04 数据更新的更多相关文章
- Chapter 04—Basic Data Management
1. 创建新的变量 variable<-expression expression:包含一组大量的操作符和函数.常用的算术操作符如下表: 例1:根据已知变量,创建新变量的三种途径 > my ...
- SQL Server 2012 - 数据更新操作
SELECT * FROM dbo.Student; --1, 插入数据 Insert ,逗号分隔可以同时插入多条 INSERT dbo.Student ( StuID, Class, StuName ...
- SQL实战——04. 查找所有已经分配部门的员工的last_name和first_name以及dept_no (一个逗号引发的血案)
查找所有已经分配部门的员工的last_name和first_name以及dept_noCREATE TABLE `dept_emp` (`emp_no` int(11) NOT NULL,`dept_ ...
- 一套代码小程序&Web&Native运行的探索04——数据更新
接上文:一套代码小程序&Web&Native运行的探索03 对应Git代码地址请见:https://github.com/yexiaochai/wxdemo/tree/master/m ...
- SQL Sever实验三 视图与数据更新
一. 实验目的 1.掌握创建视图的 SQL 语句,数据更新的 SQL 语句. 2.了解使用创建视图向导创建视图的方法. 3.掌握使用 SQL 创建视图的方法,使用 SQL 更新数据的方法. 二. 实验 ...
- SQL Server2012 T-SQL基础教程--读书笔记(1-4章)
SQL Server2012 T-SQL基础教程--读书笔记(1-4章) SqlServer T-SQL 示例数据库:点我 Chapter 01 T-SQL 查询和编程背景 1.3 创建表和定义数据的 ...
- SQL 介绍和操作
1.什么是SQL SQL的全称是“结构话查询语句”(Structured Query Language ),是1974年有Boyce和chamberlin 提出来的.经过多年的发展,SQL语言已经成为 ...
- 探究分析---利用sql批量更新部分时间的同比数据
问题:如何将social_kol_tmp表 中的字段cost_YA中日期为201901-201909中的值替换为相同brand和pltform对应18年月份的col_cost字段的数据,其他日期的co ...
- SQL Server 从Excel导入到数据库操作遇到的科学计数法问题
问题描述 今天在做从Excel导入数据到SQL Server 中将数据更新到表中,可惜就这一个简单的操作中出现了一点小插曲,就在我根据Excel中的编号关联表编号以此更新姓名字段时出现转换错误问题.如 ...
随机推荐
- 安装CAD2006装好了为什么不能用,显示系统错误无法启动此程序,因计算机丢失aclst.dll。尝试重新安装该程序以解
我的电脑,右键 属性——>高级选项卡(win7的是高级系统设置)——>环境变量——>系统变量——>然后新建系统变量 变量名为:AutoCAD 变量值为:c:\program f ...
- daydayup1 codeforces141c
题意:给定n个数字,代表每个人前面有几个人比他高,让你构造一个height数组,满足条件 思路:直接贪心就好,假设到第i个人,设他的高度为i-a[i]+1,前面比他高的人每个人的高度加1
- C++11 变长模版和完美转发实例代码
C++11 变长模版和完美转发实例代码 #include <memory>#include <iostream>#include <vector>#include ...
- 使用Runtime.getRuntime().exec()在java中调用python脚本
举例有一个Python脚本叫test.py,现在想要在Java里调用这个脚本.假定这个test.py里面使用了拓展的包,使得pythoninterpreter之类内嵌的编译器无法使用,那么只能采用ja ...
- While循环
package ForType; public class ForType { /** * @param args */ public static void main(String[] args) ...
- 1、jvm的体系结构
jvm包括两子系统两组件 a.两子系统:Class Loader子系统,Execution engine子系统 b.两组件:Runtime Date Area 和 Native Interface
- Oracle计算时间函数(对时间的加减numtodsinterval、numtoyminterval) (转)
原文来自:http://blog.itpub.net/756652/viewspace-697256/ 11g interval分区,按天分区,需要用到函数numtodsinterval. cre ...
- Android Activity中获取当前焦点的控件,自动化输入EditText
获取焦点的view对象 View view=getWindow().getDecorView().findFocus(); 如果是EditText if(view instanceof EditTex ...
- TypeScript Handbook 2——接口1(翻译)
接口(Interfaces) One of TypeScript's core principles is that type-checking focuses on the 'shape' that ...
- x.1
最近公司人事变动略频 昨日老板召集众骨干动员,谈心,表示有信心,没资金压力. 今日各种谈心,唉…… 人事姐姐约逻辑组长聊,美术主管就找上了我,一通倾述.内容实事求是,但是行业内各公司都这样,唉,还想着 ...