博客
关于我
[oracle] 学习_持续更新
阅读量:395 次
发布时间:2019-03-05

本文共 2535 字,大约阅读时间需要 8 分钟。

Oracle 教程目录(自学指南)

1. 创建与管理表

1.1 创建表

create table TEST_PARA (    name        VARCHAR2(100) not null,    sql         CLOB,    create_time DATE);

1.2 修改字段长度

alter table WX_INVOICES modify shop_director_tel varchar2(50);

1.3 管理序列

-- 创建序列create sequence SEQ_TABLE     minvalue 1     maxvalue 999999999999999999999999999     start with 15     increment by 1     nocache;-- 查询序列下一个值select SEQ_TABLE.nextval from dual;-- 删除序列drop sequence SEQ_TABLE;

2. 动态 SQL 与强制执行

2.1 动态 SQL 应用

execute immediate ('TRUNCATE TABLE TABLE'); -- 动态执行存储过程V_SQL = 'BEGIN PROC(I_YF,O_RET_CODE,O_RET_NOTE);END;';execute immediate V_SQL using (IN) I_YF, (OUT) O_RET_CODE, (OUT) O_RET_NOTE;-- 动态检索数据execute immediate 'select count(1) from table' into v_sql;execute immediate 'insert into table (int) values (:X)' using i;

2.2 截取日期年月日

select     to_date('201904', 'YYYYMM') as date_str,    extract(year from to_date('201904', 'YYYYMM')) as year,    extract(month from to_date('201904', 'YYYYMM')) as month,    extract(day from to_date('201904', 'YYYYMM')) as day,    extract(year from sysdate) as year_sys,    extract(month from sysdate) as month_sys,    extract(day from sysdate) as day_sys,    extract(year from date '2015-05-04') as year_date,    extract(month from date '2015-05-04') as month_date,    extract(day from date '2011-05-04') as day_datefrom dual;

3. 循环与字符串操作

3.1 FOR 循环

for x in 1..v_cnt loop    -- 循环体end loop;

3.2 行转列

select     reg_replace('xxyyzziioo', 'xx|zz|oo$', '') from dual;

4. 数据验证与转换

4.1 手机格式验证

select     max(1) as flag from dual where regexp_like(:MOBILE, '^[1]{1}[3456789]{1}[[:digit:]]{9}$');

5. 数据排序与统计

5.1 取最大值或最小值

select     max(a.column) keep(dense_rank last order by a.column) from table a;

6. 查看系统信息

6.1 查看外键关联表

select * from user_constraints cc where cc.r_constraint_name in (    select c.r_constraint_name     from user_constraints c     where c.constraint_type = 'R'     and c.constraint_name = 'FK_MT_SCH_L_REFERENCE_MT_SCH');

7. 事务管理与优化

7.1 数据库回退

flashback table ecif.TJG_DX to timestamp to_timestamp('2017-09-05 12:30:00', 'YYYY-MM-DD HH24:mi:ss');

8. 特殊字符处理

8.1 去空格与回车

select     ltrim(rtrim(replace(replace('qwe123', chr(10), ''), chr(13), '')) from dual;

9. 触发器应用

9.1 创建触发器

create or replace trigger Temptable_TESTbefore insert or update on Temptable_TESTfor each rowwhen (old.n1 > 100)begin    insert into Temptable_TEST_his (C1, C2) values ('de_trig', :old.c2);end;

10. 树遍历结构

10.1 树结构查询

select id from lborganizationconnect by prior id = fidstart with id = ***;

以上内容为Oracle数据库管理的实用指南,涵盖了从基础操作到高级功能的多个方面,旨在为学习者提供全面的学习资源。

转载地址:http://trdzz.baihongyu.com/

你可能感兴趣的文章
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>
MYSQL:基础——3N范式的表结构设计
查看>>
MYSQL:基础——触发器
查看>>
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>
mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
查看>>
mysqldump 参数--lock-tables浅析
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump 导出数据库中每张表的前n条
查看>>
mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
查看>>
Mysqldump参数大全(参数来源于mysql5.5.19源码)
查看>>
mysqldump备份时忽略某些表
查看>>
mysqldump实现数据备份及灾难恢复
查看>>
mysqldump数据库备份无法进行操作只能查询 --single-transaction
查看>>
mysqldump的一些用法
查看>>
mysqli
查看>>
MySQLIntegrityConstraintViolationException异常处理
查看>>