补充:v$sql,v$sqlarea,v$sqltext有什么区别
http://inthirties.com:90/thread-1202-1-1.html
前面文章 ”v$sql,v$sqlarea,v$sqltext有什么区别“ 见 http://blog.csdn.net/inthirties/archive/2010/03/10/5364777.aspx
这里补充一下
补充:
1、查一下这些视图的定义你就能理解,它们的源都是一个。
SELECT view_definition from v$fixed_view_definition WHERE view_name='GV$SQL';
SELECT view_definition from v$fixed_view_definition WHERE view_name='GV$SQL_AREA';
2、实际上最模糊的是v$sql与v$sqlarea,区别与联系除biti说的还有:
a、v$sql_area相当于是按INST_ID, KGLNAOBJ, KGLHDPAR, KGLNAHSH, KGLNATIM,
GLOBTS0,GLOBT19, KGLOBTS1, KGLOBT20,DECODE(KGLOBT33, 1, 'Y',
'N'),KGLHDCLT这些列的自v$sql的group
by,也就是说v$sql的每一行表示的是每一个sql语句的一个versiion,而v$sqlarea存放的是相同语句不同version一个汇总。
b、 v$sql与v$sqlarea的源都是一个:X$KGLCURSOR
c、实际调优中建议使用v$sql,相对来说比v$sqlarea快,而且还不会产生share pool latch的争用。
3、因v$sql及v$sqlarea存放着统计信息在调优时使用居多,但其sql是不全的,如果想获得完整的sql就要用v$sqltext了。
提供Oracle管理/故障处理/优化/安装/RAC/备份恢复技术服务,提供专业的Oracle培训和咨询服务。
邮件: inthirties@gmail.com
MSN: inthirties@hotmail.com
QQ: inthirties@qq.com
专业论坛 http://www.inthirties.com
技术博客 http://blog.csdn.net/inthirties
个人站点 http://blog.inthirties.com
相关文档:
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection conn= new SqlConnection("server=(local);database=colorring;uid=sa;pwd=;");
conn.Open();
string sqlstr = "exec master..xp_cmdshell 'bcp \"select top 100 * from master..aps\" queryout c:\\aa ......
当执行一条DML语句后,DML语句的结果保存在四个游标属性中,这些属性用于控制程序流程或者了解程序的状态。当运行DML语句时,PL/SQL打开一个内建游标并处理结果,游标是维护查询结果的内存中的一个区域,游标在运行DML语句时打开,完成后关闭。隐式游标只使用SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT三个属性.SQL%FOUND,SQ ......
1.如何将一个SQL Server表的结构复制到另一个新建的表中
select * into 新表 from 旧表 where 0 = 1
2.修改字段默认值
alter table 表名 add default 默认值 for 字段名
3. 取得数据库结构
SELECT name from sysdatabases
4.增加列
......
标准的 SQL 的解析顺序为:
(
1
).
from
子句, 组装来自不同数据源的数据
(
2
).
WHERE
子句, 基于指定的条件对记录进行筛选
(
3
).
GROUP
BY
子句, 将数据划分为多个分组
(
4
).使用聚合函数进行计算
(
5
).使用
HAVING
子句筛选分组
(
6
).计算所有的表达式
......