oracle数据库复习要点,总结的新学的oracle数据库,适合学过的新手复习

本文详细介绍了SQL语言中的DDL、DML、TCL和DCL语句,包括数据定义、操作、控制和权限管理。同时,讲解了日期处理、数据类型、条件判断以及事务处理等核心概念,并探讨了各种函数和操作符的使用。此外,还涵盖了表的创建、修改、删除以及索引、视图和存储过程的管理。
摘要由CSDN通过智能技术生成

DDL数据定义语言 语句自动提交

create drop truncate alter

DML数据操作语言 用commit,rollback结束当前事物

update delete insert

TCL事务控制语言 :commit rollback savepoint(保留点)

DCL数据控制语言 :grant

d: 用数字表达一周内的第几天 1代表周日

day: 全拼表达星期几(sunday)

month:

mon: 简拼表达月(mar)

months_between(”,”): 相差多少月

add_months(,n): 加n个月

next_day(”,’星期’): 出现下个参数的日期

last_day(”): 同月的最后一天

数据类型

number

char

varchar2(一定要有值)(空格敏感)

一些关键字

exists 存在

default 缺省(默认)

sysdate 系统时间

show user 显示用户名

rollback 回滚(到上次提交后)

commit 提交(旧事物的结束,新事物的开始)

where 过滤行

group by 分组

having 过滤组

order by 排序(自然小-->大,asc升序)desc降序

|| 拼接运算符

distinct 消除重复行

case 1 when 2 then 3 when 4 then 5 else 6 end;

decode(1,2,3,4,5,6)

cross join

inner join on 内连接

outer(left /right ) join on

union/union all 并

intersect 交

minus 差

rownum 伪列 行标号1,2,3…

rowid 伪id

constraint 给约束写个名字,可以不写(也是系统自动创建

索引的名字)

primary key 主键约束

unique key 唯一约束

not null 非空约束

check(col_name ….)

references foreign key

多个表级约束用’,’分隔.

外键后面加:

on delete cascade; delete父表时将删除子表对应的行

on delete set null; delete 父表时将子表对应的列赋值为 null

transaction 事物(undo segment 未提交保存的地方)

synonym 同义詷 create synonym ytf for account;

inline view

view 约束 with check option,with read only;

index (index segment,rowid)

单行函数

数值函数:round,trunc

转换函数:to_char(,”),to_date(,”),to_number

字符类型:upper 大写,lower 小写,initcap 首字母大写,

concat 拼接 length lpad 右对齐 rpad

一般函数 nvl,ltrim/rtrim(去空格的函数 fm也行写字符串里面)

组函数

max,min,count,sum,avg

–过滤条件

in like is_null between_and =

and or not <>,!=,^=

col_name like ‘h_%’ escape ‘\’; ‘找h_开头的

(case when 1=2… then 3…

when 1=4…then 5…

else 6…

end)=decode(1,2,3,4,5,6);

from-where-group_by-having-select-order_by

–执行顺序

alter session set nls_date_format=

‘yyyy mm dd hh24:mi:ss’;

–改变session中的日期格式

alter table tab_name drop constraint_name/primary key;

–删除约束/删除主键约束

alter table tab_name drop(col_name)

–删除一列

alter table tab1_name add 表级约束语法(constraint constraint_name foreign key(col_name) references tab2_name(col_name))

–增加约束

alter table tab_name add(c1 char)

–增加一列

alter table tab_name modify(col_name null);

–将not null改为null列

alter index index_name rebuild;

–重建索引

alter procedure/package/function p_name compile;

–编译过程/包/函数

alter package pkg_ytf compile body;

–编译包体

alter trigger trig_name compile;

–编译触发器

alter trigger trig_name disable/enable

–触发器无效/有效

alter table tab_name disable/enable all triggers;

–该表所有触发器无效/有效

create index index_name on table_name(col);

–按照某表的列创建索引

create table table_name (

col_name1 类型,col_name2 类型….);

–创建表

create table table_name as select…;

–创建表,类型和数据与子查询结果一样

create or replace view as select….;

–创建视图

create sequence se_name start with 1(缺省 1) maxvalue 5

cache 3 ; (day309.sql(day08 42页面))

–创建序列号

create or replace procedure p_name(

v_name in/out/in_out type…)]is[可以定义变量]

begin exception end;

–创建过程

create or replace function f_name(…) return type is

[可以定义变量] begin end;

–创建函数

create or replace package pkg_name is end;

–创建包

create or replace package body pkg_name

is begin end;

–创建包体

insert into table_name values();

–添加一行数据

insert into table_name select….;

–添加子查询的数据

delete from table_name where…;

–删除行,表数据删除高水位线没动,表占的空间没有释放,可以回滚

drop table tab_name purge;

–删除表

drop index/view/sequence/procedure/function/package _name;

–删除索引/视图/序列号

truncate table table_name;

–删除所有记录,DDL语句自动提交,没有回滚,空间释放,不可以回滚

update table_name set col_name=….where…;

–改数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值