数极客首页

跟着梓晨学SQL:数据处理与事务控制

SQL中数据操作言语
主要有三种,分别为DML、DDL、DCL,i含义分别为:

DML(data manipulation language):是数据支配
言语
:它们是SELECT、UPDATE、INSERT、DELETE,就像它的名字一样,这4条命令是用来对数据库里的数据中止

操作的言语

DDL(data definition language):是数据定义言语
:DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改动
表(TABLE)的结构

,数据类型,表之间 的链接和约束等初始化工作上,他们大多在树立
表时运用

DCL(Data Control Language):是数据库控制言语
:是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。

今天我们主要是解说

DML和DDL数据操作言语

1:DDL

I:Create table为创建

表的命令,第一
我们创建

一张表mop.t_sys_group,包含的列名有fid、fname、fclass;

SQL>create table mop.t_sys_group

(fid number(20) not null,

Fname varchar2(20),

Fclass varchar2(20)

);

Table create—此时我们曾经
胜利

创建

表mop.t_sys_group

(注:也能够

依据

已有的表去创建

表,如我们创建

表group,能够

运用
mop.t_sys_group中止

创建

group:

SQL> create table group(fid,fname,fclass)

As

(select fid,fname,fclass

From mop.t_sys_group)– Table create)

II:Alter table为修正
表的结构

的命令,我们能够

经过
此命令去增加列或改动
数据存储的空间大小,如我们往常

需求
对表mop.t_sys_group新增一列faddress,同时将fname的存储空间更改为50.

SQL>alter table mop.t_sys_group

add faddress varchar2(50)

table alter—此时曾经
新增一列faddress

SQL>alter table mop.t_sys_group

modify fname varchar2(50)

table alter—此时曾经
fname的存储空间曾经
更改为50

III:drop table为删除表的命令

SQL>drop table mop.t_sys_group

Table drop–此时表曾经
彻底

此种删除容易构成

误删且难以修复,因而

我们举荐

运用
以下的删除办法

SQL>drop table owner.mop.t_sys_group

Table drop—给出该表一切
的所属数据库或工程的名字。

2:DML

I:Update为更新命令,普通
与set连用,如我们往常

需求
更新表mop.t_sys_group中fid为2的fname为“卧龙大数据”:

SQL>update mop.t_sys_group

set fname=’卧龙大数据’

where fid=2;

1 row update

(注:假定

update省略了where子句,那么表中的一切
记载
都会被更新,当发现操作错误时分
,能够

应用
rollback中止

回滚)

II:Insert为插入命令,普通
与into一并运用
。如我们往常

要向mop.t_sys_group中插入一行,其操作为:

SQL>Insert into mop.t_sys_group(/*fid,fname,fclass,faddress*/)

Values(3,’卧龙大数据’,’平台’,’深圳’);

1 row created

(注:上面所述的插入办法

能够

归结为insert values语句,此操作一次只能插入一行。但是我们也能够

应用
现有的表中止

插入,能够

归结为insert select语句,此操作一次能够

插入多行,我们应用
group表中的数据向mop.t_sys_group插入数据;

SQL>insert into mop.t_sys_group(fid,fname,fclass,faddress)

Select fid,fname,fclass,faddress from group

4 rows created)

III:Delete为删除行的操作,普通
与from连用,能够

删除单一的行,也能够

删除多行致使

一切
行,例如我们删除表mop.t_sys_group中fid为1的行,则其操作为:

SQL>delete from mop.t_sys_group where fid=1

1 row deleted—(假定

省略where子句则会删除一切
行)

在后续的学习中我们还会遇到一个函数为truncate函数,如:

SQL>truncate table mop.t_sys_group

此操作无法rollback中止

回滚,而

SQL>delete from mop.t_sys_group

能够

中止

rollback,这是两者之间最大的区别。

3:事务控制

事务控制能够

定义为一个有组织的工作单元,通常是由之前引见
的一些语句查询等共同组成,相似

为java中单线程与多线程,能够

对比

了解

。事务控制控制的常用命令有commit(终了

事务进程)、rollback(取消事务进程)、savepoint(在事务进程中设置保管
点)等。

在当前用户访问处置
事务未终了

时,则该项目会被锁定,其他用户访问后无法对其项目中止

操作,只需

当该事务终了

后,才干
解锁。

由于DCL普通
为数据库权限与角色控制语句,将会在后续的章节中中止

论述

,由于时间关系,今晚就写到这里。

作者简介:梓晨,安徽大学毕业,目前在金蝶软件(中国)有限公司从事数据剖析

工作,数据剖析

探求

与喜好

者。

发表评论

评论已关闭。

相关文章