打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Oracle学习笔记
userphoto

2012.05.14

关注

Oracle学习笔记(1)

这是我的Oracle学习笔记系列的第一篇,主要总结了Oracle的体系结构,要学好Oracle,就要先了解Oracle的运行机制和原理。把今天学习的内容整理了一个图,备忘,点击可放大。

另外,还有几个语句(sql*plus):

SYS用户登录

SQL> / as sysdba;

解锁scott用户

SQL> alter user scott identified by tiger account unlock;

切换到scott用户

SQL> conn scott/tiger;

Null值参与列计算

SQL> select ename, sal, comm, (sal+nvl(comm,0)) as salary from emp;

sql*plus中用变量查询

SQL> variable va number;SQL> declare :va:=7788;SQL> select empno,ename,sal from emp where empno = :va;

看内存中包含"select * from"的SQL语句

SQL> select sql_text from v$sqlarea where sql_text like '%select * from%';

看内存(SGA)资源情况

SQL> select * from v$sgastat;

刷内存共享池

SQL> alter system flush shared_pool;

强制重启实例

SQL> startup force;

在会话中修改日期格式

SQL> alter session set nls_date_format='yyyy-mm-dd';

如果要永久修改,windows下可在注册表中建立一个名为 nls_date_format 的DWORD值,UNIX/LINUX直接配置环境变量。

 

关于共享池和SQL语句同性能的关系:

由于共享池中缓存最近SQL语句的特性,所以在构建SQL语句时要特别注意,大小写不同、空格、顺序不同都会被Oracle认为是不同的SQL语句,只有完全一样的SQL语句才会从共享池中保存的SQL语句中重复使用,而由于编写SQL语句的不规范将会产生性能问题,所以要做到:

1、尽量规范SQL语句,用统一的格式,大小写、顺序、空格、缩进、变量名格式都有相应的规范并严格遵守;

2、在大量的同一格式的SQL语句查询时(比如只有where条件的值不同),应尽量使用变量,否则共享池将被大量的垃圾查询占满而使常用的SQL不被缓存,影响效率;

3、PL/SQL或者是复杂的数据查询,可以写存储过程,用带进参数的方式保证共享池中的SQL语句一致;

4、适当调整 shared_pool_size 的大小。
 
 
 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
使用hint优化 Oracle SQL语句方法30例
Oracle 10g的使用【SQLPLUS操作大全】
Oracle 游标
详解Oracle数据库如何查找未使用绑定变量的SQL语句
PL/SQL编程急速上手
Oracle SQL 內置函數大全
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服