Orecle学习指南

经过漫长的时间,从开始的学习,到后面的一遍一遍的复习和使用oracle,今天总结一些学习的方法和以后复习的要点,对自己不足的地方进行总结:

首先oracle数据有  DQL、DML、TPL、DDL四种语言,全名分别为Data Query Language(数据查询语言)--select;Data Manilulation Language(数据操作语言)---insert、update、delete;Transacyion Process Language(事务处理语言)--commit、rollback;Data Definition Language(数据定义语言)--create、alter、drop、truncate;这些是数据库语言的根本,学会这些就是基本上对oracle数据库了解的差不多了

下面我就写出Oracle数据库的一些重要名词:

创建一个数据库空间和权限(需要管理员登陆创建,我用的是sys):

create user doctor(数据库名) identified by 123456(密码);
grant connect,resource to doctor;

数据类型主要有:数据、字符串、日期

查询语句:select:select * from emp;select * from emp where ename='aaa';

having、group by 、order by 、asc、desc、distinct、

constraints的五种约束键:not null、primary key、unique、poreign key、check;

创建constraints 有两种方法:column-level、rable-level

添加约束的方法:

alter table emp_bak add constraint emp_empno_pk primary key(empno);--添加主键约束
alter table emp_bak add constraint emp_ename_unique unique(ename);--添加唯一约束
alter table emp_bak add constraint emp_sal_check check(sal >1600);--添加检查性约束
alter table emp_bak add constraint emp_deptno_fk foreign key(deptno) references dept(deptno);--添加外键约束

alter table emp_bak modify(job constraint emp_job_nn not null);--添加非空约束


-- 删除约束

alter table emp_bak drop primary key;               --删除主键
alter table emp_bak drop constraint emp_empno_pk;   --删除主键

alter table emp_bak drop unique(ename);                --删除唯一键
alter table emp_bak drop constraint emp_ename_unique;  --删除唯一键

alter table emp_bak drop constraint emp_sal_check;--删除检查性约束
alter table emp_bak drop constraint emp_deptno_fk;--删除外键约束

alter table emp_bak modify(job null);          --删除非空约束
alter table emp_bak drop constraint emp_job_nn;--删除非空约束
 

create table sextype(
       sexno number(4) not null,
       sexname varchar2(4)
)

alter table sextype add constraints PK_sexs_NO primary key(sexno);
comment on column sextype.sexno is '性别编号';
comment on column sextype.sexname is '性别名称(男、女等)';

序列、索引、同义词

序列:主要用于自增或者自减的时候,常用的就是新增数据的时候的主键自增

简单的创建:

create sequence seq_emp;

删除序列:

dorp sequence seq_emp;

索引:索引主要用于优化查询速度,在建立主键或者是唯一键的时候,索引会自动生成;

基于表emp复制表emp_bak;

create  table emp_bak select * from emp where 1=0;   --复制结构

create table emp_bak select * from emp ;  --复制结构和里面的所有数据;

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Oracle2: 1. 《Oracle8 优化技术》摘录 (第一章 安装) 2. 《Oracle8 优化技术》摘录 (第二章 内存-CPU) 3. 《Oracle8 优化技术》摘录 (第三章 输入-输出) 4. EXP、IMP 命令详解 5. Oracle Index 的三个问题 6. Oracle PL-SQL语言基础 7. Oracle的分布式管理 8. ORACLE的数据类型 9. Oracle数据库碎片整理 10.ORACLE性能调整1 11.ORACLE性能调整2 12.Oracle专家调优秘密 13.PL_SQL单行函数和组函数详解 14.PL-SQL 15.PLSQL异常处理初步 16.SQL语句性能调整原则 17.创建和使用分区的表 18.基于成本的优化器一般错误概念和问题 19.Delphi 3_0中连接数据库的三种方式 20.远程数据库的访问 21.监控数据库性能的SQL 22.简单实现数据库表空间的备份或迁移 23.简析REDO LOGFILE 24.理解和使用Oracle 8i分析工具-LogMiner 25.哪些初始化参数最影响Oracle系统性能 26.你的SQL语句在什么情况下使用全表扫描? 27.如何对CLOB行字段执行全文检索 28.如何让你的SQL运行得更快 29.如何使‘CREATE TABLE AS SELECT’能支持ORDER BY 30.删除表内重复记录的方法 31.数据库安全性策略 32.数据库的查询优化技术. 33.提高C-S系统性能的一些方法 34.提高ORACLE数据库系统import性能 35.外部联接的用法 36.性能调试的一般问题 37.优化 38.优化调整Oracle 8i数据库(从操作系统) 39.在Internet上运作公司是一项艰苦的任务--关键任务 40.在oracle中限制返回结果集的大小 41.在远端如何建立standby数据库 42.怎样分析你的SQL语句的效率 43.自动备份Oracle数据库 44.总结SQL语句中的优化提示 45.使用Database Configuration Assistant安装第二个数据库 46.Oracle 数据库向 MS SQL Server 7.0 的迁移 Oracle1: 1. Decode()函数使用技巧(NT+IIS+ASP+ORACLE) 2. Dual伪列 3. EXP、IMP 命令详解 4. Exp-Imp大量数据 5. Export-Import 使用技巧与常见错误 6. NULL 使用详解 7. Oracle for NT系统实用工具介绍 8. Oracle 和 mysql 的一些简单命令对比参照 9. Oracle8i和Microsoft SQL Server7_0比较 10. Oracle8的不安全因素及几点说明 11. Oracle常见错误代码 12. Oracle常用Script 13. Oracle常用数据字典 14. ORACLE回滚段管理(上) 15. ORACLE回滚段管理(下) 16. Oracle基于Client-Server的性能调整 17. Oracle数据库的安全策略 18. ORACLE数据库简介 19. Oracle数据库密码文件的使用和维护 20. Oracle数据库碎片整理 21. Oracle特殊包 22. Oradim工具的用法 23. PB如何连接Oracle数据库 24. ROLLBACK不能回滚的命令 25. 安装Oracle后,经常使用的修改表空间的SQL代码 26. 比较SQL Server与Oracle、DB2 27. 多个数据库时,如何设置默认数据库 28. 各种数据类型的比较 29. 漫谈oracle中的空值 30. 没有备份、只有归档日志,如何恢复数据文件 31. 哪些初始化参数最影响Oracle系统性能 32. 如何查看数据库的字符集 33. 如何启动ARCHIVELOG模式 34. 如何使‘CREATE TABLE AS SELECT’能支持ORDER BY ? 35. 如何使用归
目 录 TIANLESOFTWARE ORACLE 学习手册.......1 一. ORACLE 基础知识..24 1.1 ORACLE OLAP 与OLTP 介绍..................24 1.1.1 什么是OLTP ....25 1.1.2 什么是OLAP....26 1.1.3 在OLAP 系统中,常使用分区技术、并行技术....26 1.1.4 分开设计与优化..........................27 1.2 索引详解..................28 1.2.1 索引介绍.........28 1.2.1.1 索引的创建语法......28 1.2.1.2 索引特点..................28 1.2.1.3 索引不足..................29 1.2.1.4 应该建索引列的特点...........................29 1.2.1.5 不应该建索引列的特点.......................29 1.2.1.6 限制索引..................29 1.2.1.6.1 使用不等于操作符(<>、!=)...29 1.2.1.6.2 使用IS NULL 或IS NOT NULL ......30 1.2.1.6.3 使用函数.........30 1.2.1.6.4 比较不匹配的数据类型...............30 1.2.1.7 查询索引..................30 1.2.1.8 组合索引..................30 1.2.1.9 ORACLE ROWID ........31 1.2.1.10 选择性..................31 1.2.1.11 群集因子(Clustering Factor) ..............31 1.2.1.12 二元高度(Binary height)....................31 1.2.1.13 快速全局扫描.......31 1.2.1.14 跳跃式扫描...........31 1.2.2 索引分类........32 1.2.2.1 B 树索引 (默认类型) ...........................32 1.2.2.2 位图索引.................33 1.2.2.3 HASH 索引................35 1.2.2.4 索引组织表.............36 1.2.2.5 反转键索引.............37 1.2.2.6 基于函数的索引..... 37 1.2.2.7 分区索引.................38 1.2.2.7.1.本地分区索引(通常使用的索引) 38 1.2.2.7.2.全局分区索引.40 1.2.2.8 位图连接索引.........40 1.3 分区表总结.............41 1.3.1. 分区表理论知识........................41 1.3.2 普通表转分区表方法..................45 1.3.2.1 插入: Insert with a subquery method ...........................46 1.3.2.1.1 Oracle 11g 的Interval................46 1.3.2.1.2 Oracle 10g 版本........................47 1.3.2.2 交换分区:Partition exchange method ...........................48 1.3.2.3 使用在线重定义:DBMS_REDEFINITION .........................50 1.3.2.4 使用导出导入.........54 1.3.2.4.1 迁移分区表的步骤.....................55 1.3.2.4.2 示例1:使用exp/imp ................55 1.3.2.4.3 示例 2:使用expdp/impdp........59 1.3.3 分区表的其他操作......................62 1.3.3.1 添加新的分区.........62 1.3.3.2 split 分区拆分.........64 1.3.3.3 合并分区Merge .....64 1.3.3.4 移动分区.................65 1.3.3.5 Truncate 分区...........65 1.3.3.6 Drop 分区.................66 1.3.4 分区表的索引66 1.3.4.4.1 Local 本地索引............................67 1.3.4.4.2 Global 索引......68 1.3.4.4.3 索引重建问题71 1.3.5 Oracle 11g 中的分区表............... 74 1.3.5.1 11g 中的分区表新特性........................74 1.3.5.1.1 Interval Partitioning ......................74 1.3.5.1.2 System Partitioning ....................... 1.3.5.1.3 More Composite Partitioning........75 1.3.5.1.4 Virtual Column-Based Partitioning75 1.3.5.2 11g 虚拟列实现 按星期分区表......76 1.3.5.3 Interval 分区 示例............................78 1.3.5.3.1 创建按月分区的分区表..............78 1.3.5.3.2 创建一个以天为间隔的分区表...80 1.4 ORACLE 锁.................82 1.4.1 锁(Lock).....82 1.4.1.1 锁的概念.................82 1.4.1.2 锁的分类.................83 1.4.1.2.1. 按用户与系统划分,可以分为自动锁与显示锁..83 1.4.1.2.2. 按锁级别划分,可分为: 排它锁 (Exclusive Locks,即X 锁)和共享锁(Share Locks, 即S 锁)........................84 1.4.1.2.3 按操作划分,可分为DML 锁(data locks,数据锁)、DDL 锁 (data dictionary lock) 和System Locks。.........84 1.4.1.2.4 DML 锁..........84 1.4.1.2.5 DDL 锁(dictionary locks).......87 1.4.1.2.6 System Locks .89 1.4.2 死锁................91 1.4.3 锁 和 阻塞....94 1.4.3.1 相关概念.................94 1.4.3.2 引起阻塞的几种常见情况..................97 1.4.3.2.1 DML 语句.....97 1.4.3.2.2 外键没有创建索引...................98 1.4.4 Latch 说明.......98 1.4.4.1 Latch.....................98 1.4.4.2 有关SPin 的说明.99 1.4.4.3 进程获取Latch 的过程.....................99 1.4.4.4 Latch 和 Lock..... 100 1.4.4.5 Latch 争用......... 100 1.4.4.5.1 共享池中的Latch 争用............. 101 1.4.4.5.2 数据缓冲池Latch 争用............. 102 1.4.4.6 热块产生的原因. 103 1.4.4.6.1 表数据块...... 103 1.4.4.6.2 索引数据块.. 103 1.4.4.6.3 索引根数据块........................... 104 1.4.4.6.4 段头数据块 104 1.4.4.7 检查Latch 的相关SQL ................... 105 1.4.4.7.1 查看造成LATCH BUFFER CACHE CHAINS 等待事件的热 快............... 105 1.4.4.7.2 查询当前数据库最繁忙的Buffer,TCH(Touch)表示访问次数越高, 热点快竞争问题就 存在. 105 1.4.4.7.3 查询当前数据库最繁忙的Buffer,结合dba_extents 查询得到这些 热点Buffer 来自哪些 对象. 106 1.4.4.7.4 如果在Top 5 中发现latch free 热点块事件时,可以从 V$latch_children 中查询具体的

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_努力赚钱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值