从功能上划分,SQL语言可以分为DDL,DML和DCL三大类。
1. DDL(DataDefinitionLanguage)
数据定义语言,用于定义和管理SQL数据库中的所有对象的语言;
CREATE---创建表
ALTER---修改表
DROP---删除表
2. DML(DataManipulationLanguage)
数据操纵语言,SQL中处理数据等操作统称为数据操纵语言;
INSERT---数据的插入
DELETE---数据的删除
UPDATE---数据的修改
SELECT---数据的查询
DCL(DataControlLanguage)
数据控制语言,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等;
GRANT---授权。
ROLLBACK---回滚
COMMIT---提交。
提交数据有三种类型:显式提交、隐式提交及自动提交。下面分别说明这三种类型。
(1) 显式提交
用COMMIT命令直接完成的提交为显式提交。
(2) 隐式提交
用SQL命令间接完成的提交为隐式提交。这些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。
(3) 自动提交
若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,
系统将自动进行提交,这就是自动提交。其格式为:SQL>SET AUTOCOMMIT ON;
COMMIT / ROLLBACK这两个命令用的时候要小心。COMMIT / ROLLBACK 都是用在执行 DML语句(INSERT /DELETE / UPDATE / SELECT )之后的。DML 语句,执行完之后,处理的数据,都会放在回滚段中(除了 SELECT语句),等待用户进行提交(COMMIT)或者回滚 (ROLLBACK),当用户执行 COMMIT /ROLLBACK后,放在回滚段中的数据就会被删除。
(SELECT 语句执行后,数据都存在共享池。提供给其他人查询相同的数据时,直接在共享池中提取,不用再去数据库中提取,提高了数据查询的速度。)
所有的 DML 语句都是要显式提交的,也就是说要在执行完DML语句之后,执行 COMMIT 。而其他的诸如 DDL语句的,都是隐式提交的。也就是说,在运行那些非 DML 语句后,数据库已经进行了隐式提交,例如 CREATETABLE,在运行脚本后,表已经建好了,并不在需要你再进行显式提交。
分享到:
相关推荐
Sql Server 2005/2008中提供了begin tran,commit tran和rollback tran来使用事务。begin tran表示开始事务, commit tran表示提交事务,rollback tran表示回滚事物
它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的SQL接口。 它以记录集合作为操作对象,所有SQL...
他不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操纵对象,所有SQL语句接受...
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server ...
1.4.3.2 使用动态SQL的四种方法 88 1.4.3.3 SQLDA 91 1.5 第五节INFORMIX的嵌入SQL/C语言 107 1.5.1 一个简单的入门例子 107 1.5.2 宿主变量 109 1.5.3 嵌入SQL的处理过程 114 1.5.4 动态SQL语言 115 1.5.4.1 SQLDA ...
1.4.3.2 使用动态SQL的四种方法 88 1.4.3.3 SQLDA 91 1.5 第五节INFORMIX的嵌入SQL/C语言 107 1.5.1 一个简单的入门例子 107 1.5.2 宿主变量 109 1.5.3 嵌入SQL的处理过程 114 1.5.4 动态SQL语言 115 1.5.4.1 SQLDA ...
使用SQL 来生成SQL 语句的目的351 几个SQL*PLUS 命令352 SET ECHO ON/OFF353 SET FEEDBACK ON/OFF353 SET HEADING ON/OFF 353 SPOOL FILENAME/OFF353 START FILENAME354 ED FILENAME354 计算所有的表中的行数354 为...
结构化查询语言(Structured Query Language)简称SQL,是一种关系数据库查询语言,用于存取数据以及查询、更新和管理关系数据库系统。 1.2 语句结构 1.2.1 数据查询语言(DQL) 对数据库进行的信息查询,select。 ...
作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...
最高效的删除重复记录方法 ( 因为使用了ROWID)例子: DELETE FROM EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID) FROM EMP X WHERE X.EMP_NO = E.EMP_NO); (9) 用TRUNCATE替代DELETE: 当删除表中的记录时,在...
所属分类: 计算机 > 数据库 > SQL语言 编辑推荐 SQL经典畅销书 涵盖所有主流数据库 学习与参考皆宜... 内容简介 sql 是目前使用最为广泛的数据库语言之一。本书没有涉及理论,而是从实践出发,...
rollback:回溯,回溯到上次操作前的状态,把这次事务操作作废,只有一次(DDL和DCL语句会自动提交,不能回溯)。 可以用commit语句提交,这样就回溯不回了。 set pause on\off :设置分屏(设置不分屏) set pause...
在最近一次commit()方法调用之后的所有SQL会在方法commit()调用时得到确认。 1. public int delete(int sID) { 2. dbc = new DataBaseConnection(); 3. Connection con = dbc.getConnection(); 4. try { 5. con...
嵌入式SQL以及DBMS与高级语言的接口 了解嵌入式SQL在PowerBuilder中的使用方法 了解SQL Server与各种开发工具的接口,包括PowerBuilder, Delphi, Visual C++, 以及ASP架构、DOT.NET架构等各种环境下对数据库的访问...
SQL语言的分类情况大致如下: 1) 数据定义语言(DDL):Create,Drop,Grant,Revoke,… 2) 数据操纵语言(DML):Update,Insert,Delete,… 3) 数据控制语言(DCL):Commit,Rollback,Savapoint,… 4) 其他:Alter ...
我要向大家介绍的最重要的经验是充分利用SQL的面向集合的方法来解决数据库处理需求,而不是使用Java等过程化的编程语言。 如果编程人员要在一个表中查找许多行,结果中的每个行都会查找其他表中的数据,最后,...
5.12 commit&rollback; 5.13 其它命令 5.14 事务管理 5.15 Martini项目下的ibatis文件配置 5.16 数据库测试FAQ 6 Spring和SQL跟踪 6.1 @Tracer 6.2 FAQ 7 JTester插件的使用 7.1 插件功能 7.2 插件安装 7.3 录制变量...
数据库控制语言主要用于控制用户的访问权限,其中包括GRANT语句、REVOKE语句、COMMIT语句和ROLLBACK语句。 GRANT语句用于给用户增加权限,REVOKE语句用于收回用户的权限,COMMIT语句用于提交事务,ROLLBACK语句...