??xml version="1.0" encoding="utf-8" standalone="yes"?>国产一区视频在线观看免费,国产99久久久国产精品免费看,日韩一级免费一区 http://www.aygfsteel.com/xiekai-blog/category/18491.html北冥有鱼Q其名ؓ(f)鲌Ӏ鲲之大Q不知其几千里也。化而ؓ(f)鸟,其名为鹏。鹏之背Q不知其几千里也。怒而飞Q其D垂天之云。是鸟也Qvq则徙于南冥。南冥者,天池也?
zh-cn Tue, 31 Aug 2010 21:54:15 GMT Tue, 31 Aug 2010 21:54:15 GMT 60 Oracle 的小技?/title> http://www.aygfsteel.com/xiekai-blog/archive/2010/08/31/330430.html言w寸 言w寸 Tue, 31 Aug 2010 07:58:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2010/08/31/330430.html http://www.aygfsteel.com/xiekai-blog/comments/330430.html http://www.aygfsteel.com/xiekai-blog/archive/2010/08/31/330430.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/330430.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/330430.html
SELECT
table_name,
Count(*) As 列数
FROM
user_tab_columns
GROUP BY
table_name
]]> ORACLE的INSTANCE(实例)和SCHEMAQ方案、模式) http://www.aygfsteel.com/xiekai-blog/archive/2010/07/17/326417.html言w寸 言w寸 Sat, 17 Jul 2010 11:57:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2010/07/17/326417.html http://www.aygfsteel.com/xiekai-blog/comments/326417.html http://www.aygfsteel.com/xiekai-blog/archive/2010/07/17/326417.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/326417.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/326417.html 每一个运行的ORACLE数据库与一个ORACLE实例QINSTANCEQ相联系?br />
一个ORACLE实例为存取和控制一数据库的软g机制?/span>每一ơ在数据库服务器上启动一数据库时Q称为系l全局区(SYSTEM
GLOBAL AREAQ的一内存区(USGAQ被分配Q有一个或多个ORACLEq程被启动。该SGA ?
ORACLEq程的结合称Z个ORACLE数据库实例?/span>一个实例的SGA和进Eؓ(f)理数据库数据、ؓ(f)该数据库一个或多个用户服务而工作?
ORACLE在内存存储下列信息:(x)
l 执行的程序代码?
l q接的会(x)话信?
l E序执行期间所需数据和共享的信息
l 存储在外存储上的~冲信息?
ORACLEh下列基本的内存结构:(x)
l 软g代码?
l pȝ全局?包括数据库缓冲存储区、日志缓冲区和共享池.
l E序全局?包括栈区和数据区.
l 排序?
软g代码?
用于存储正在执行的或可以执行的程序代码?
软g区是只读Q可安装成共享或非共享。ORACLEpȝE序是可׃n的,以致多个ORACLE用户可存取它Q而不需要在内存有多个副本。用L(fng)序可以共享也可以不共享?
pȝ全局?
Zl由O(jin)RACLE分配的共享的内存l构Q可包含一个数据库实例的数据或控制信息。如果多个用户同时连接到同一实例Ӟ在实例的SGA中数据可为多个用h׃nQ所以又UCؓ(f)׃n全局区。当实例起动ӞSGA的存储自动地被分配;当实例关闭时Q该存储被回收。所有连接到多进E数据库实例的全部用户可自动地被分配Q当实例关闭Ӟ该存储被回收。所有连接到多进E数据库实例的全部用户可使用其SGA中的信息Q但仅仅有几个进E可写入信息。在SGA中存储信息将内存划分成几个区Q数据库~冲存储区、日志缓冲区、共享池、请求和响应队列、数据字典存储区和其它各U信息?
E序全局?
PGA是一个内存区Q包含单个进E的数据和控制信息,所以又UCؓ(f)q程全局区(PROCESS GLOBAL AREAQ?
排序?
排序需要内?nobr style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" target="_blank">I间QORACLE利用该内存排序数据,q部分空间称为排序区。排序区存在于请求排序的用户q程的内存中Q该I间的大ؓ(f)适就排序数据量的大小Q可增长Q但受初始化参数SORT-AREA-SIZER所限制?
Ҏ(gu)也叫模式Q一个模?schema)为模式对?scehma object)的一个集合,每一个数据库用户对应一个模式?/span>模式对象为直接引用数据库数据的逻辑l构Q模式对象包含如表、视图、烦引、聚集、序列、同义词、数据库链、过E和包等l构。模式对象是逻辑数据存储l构。一个模式对象逻辑地存储在数据库的一个表I间中,每一个对象的数据物理地包含在表空间的一个或多个数据文g中?/p>
Q?/p>
服务器可用内存较?yu),采用多方案。多个SCHEMAQ方案、模式)
服务器可用内存充I采用多实例。多个INSTANCE(实例)
]]> Oracle中sequence的用方?/title> http://www.aygfsteel.com/xiekai-blog/archive/2009/10/12/297904.html言w寸 言w寸 Mon, 12 Oct 2009 08:02:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2009/10/12/297904.html http://www.aygfsteel.com/xiekai-blog/comments/297904.html http://www.aygfsteel.com/xiekai-blog/archive/2009/10/12/297904.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/297904.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/297904.html
1、Create Sequence
(注释Q你需要有CREATE SEQUENCE或CREATE ANY SEQUENCE权限)
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 —?每次加几?br />
START WITH 1 —??开始计?br />
NOMAXVALUE —?不设|最大?br />
NOCYCLE —?一直篏加,不@?br />
CACHE 10;
- 假如指定CACHE|Oracle可以预先在内存里面攄一些sequenceQ这样存取的快些。cache里面的取完后QOracle自动再取一l到cache. 使用cache或许?x)蟩P 比如数据库突然不正常down?shutdown abort)Qcache中的sequence׃(x)丢失?所以可以在create sequence的时候用nocache防止q种情况?br />
只要定义了emp_sequenceQ你可以用使CURRVALQNEXTVAL
CURRVAL=q回 sequence的当前?br />
NEXTVAL=增加sequence的|然后q回 sequence ?br />
例如Q?br />
emp_sequence.CURRVAL
emp_sequence.NEXTVAL
可以使用sequence的地方:(x)
。不包含子查询、snapshot、VIEW?SELECT 语句
。INSERT语句的子查询?br />
。INSERT语句的VALUES?br />
。UPDATE ?SET?br />
例:(x)
INSERT INTO emp VALUES
(empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);
SELECT empseq.currval FROM DUAL;
2、Alter Sequence
你需要有sequence的ownerQ或者拥有ALTER ANY SEQUENCE 权限才能改动sequence.
可以alter除start至以外的所有sequence参数。如果想要改变start|必须 drop sequence ?re-create .
Alter sequenceCZQ?br />
ALTER SEQUENCE emp_sequence INCREMENT BY 10 MAXVALUE 10000 CYCLE -- ?0000后从头开?NOCACHE ;
]]> delete from tablea & truncate table tablea 的区?/title> http://www.aygfsteel.com/xiekai-blog/archive/2009/07/17/287170.html言w寸 言w寸 Fri, 17 Jul 2009 07:26:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2009/07/17/287170.html http://www.aygfsteel.com/xiekai-blog/comments/287170.html http://www.aygfsteel.com/xiekai-blog/archive/2009/07/17/287170.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/287170.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/287170.html
不同?
1. truncate?delete只删除数据不删除表的l构(定义)
drop语句删除表的结构被依赖的约?constrain),触发?trigger),索引(index); 依赖于该表的存储q程/函数保?但是变ؓ(f)invalid状?
2.delete语句是dml,q个操作?x)放到rollback segement?事务提交之后才生?如果有相应的trigger,执行的时候将被触?
truncate,drop是ddl, 操作立即生效,原数据不攑ֈrollback segment?不能回滚. 操作不触发trigger.
3.速度,一般来? drop> truncate > delete
4.惛_除表,当然用drop。想保留表而将所有数据删? 如果和事务无?用truncate卛_. 如果和事务有?或者想触发trigger,q是用delete.
]]> Oracle的exp和imp http://www.aygfsteel.com/xiekai-blog/archive/2009/07/17/287157.html言w寸 言w寸 Fri, 17 Jul 2009 07:05:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2009/07/17/287157.html http://www.aygfsteel.com/xiekai-blog/comments/287157.html http://www.aygfsteel.com/xiekai-blog/archive/2009/07/17/287157.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/287157.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/287157.html
其实Q这是Oracle自带的两个工P在Oracle的安装目录的BIN目录下,可以看到exp.exe和imp.exe?br />
q行-->输入cmd-->q入DOS环境-->输入命o(h)Qexp 用户?密码@数据库名 file=xxx.dmp
可以实现数据库的导Z Q前提是要设|环境变量PATH=C:\oracle\product\10.2.0\client_1\binQ?br />
或者通过TeraTerm之类的Y件登录数据库服务器,d成功后运行命令:(x)exp 用户?密码 file=xxx.dmp
通过q个Ҏ(gu)Q一下子可以把数据库的表,视图Q触发器Q包{数据库对象全部导出成dmp文g?br />
再通过imp命o(h)Q就可以实现数据库的转储?
]]> Oracle SQL ?RANK & DENSE_RANK 的应?/title> http://www.aygfsteel.com/xiekai-blog/archive/2007/11/29/163961.html言w寸 言w寸 Thu, 29 Nov 2007 04:22:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2007/11/29/163961.html http://www.aygfsteel.com/xiekai-blog/comments/163961.html http://www.aygfsteel.com/xiekai-blog/archive/2007/11/29/163961.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/163961.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/163961.html Oracle中聚合函数RANK和DENSE_RANK的?
期末考试成W表(T_QMKSCJQ?br />
q度 班?nbsp;U目?nbsp;学生学号 成W
2000 001 0001 00001001 88
2000 001 0001 00001002 99
2000 001 0001 00001003 89
2000 001 0002 00001001 87
2000 001 0002 00001002 60
2000 001 0002 00001003 70
2000 002 0001 00002001 88
2000 002 0001 00002002 99
2000 002 0001 00002003 89
2000 002 0002 00002001 87
2000 002 0002 00002002 60
2000 002 0002 00002003 70
2001 001 0001 01001001 88
2001 001 0001 01001002 99
2001 001 0001 01001003 89
2001 001 0002 01001001 87
2001 001 0002 01001002 60
2001 001 0002 01001003 70
2001 002 0001 01002001 88
2001 002 0001 01002002 99
2001 002 0001 01002003 89
2001 002 0002 01002001 87
2001 002 0002 01002002 60
2001 002 0002 01002003 70
2001 003 0003 01003001 87
2001 003 0003 01003002 60
2001 003 0003 01003003 70
1Q选出各年度各班各科目第一名的学生的信息(q度Q班U号Q科目号Q成l,学号)
select T.q度, T.班? T.U目? T.成WQT.学生学号Q?br />
dense_rank() over (partition by T.q度, T.班? T.U目?order by T.成W desc) T.排名
from T_QMKSCJ T
where T.排名 = '1'
2Q选出各年度各班各科目第一名的学生的信息(q度Q班U名Q科目名Q成l,学号Q学生姓?
select T.q度, T.班? T.U目? T.成WQT.学生学号QT.学生姓名Q?br />
dense_rank() over (partition by T.q度, T.班? T.U目?order by T.成W desc) T.排名
from
(select
A.q度, A.班? A.U目? A.成WQA.学生学号QB.班? C.学生姓名, D.U目?br />
from
T_QMKSCJ A,
T_班 B,
T_学生 C,
T_U目 D
where A.班?= B.班?br />
and A.学生学号 = C.学生学号
and A.U目?= D.U目?br />
) T
where T.排名 = '1'
3Q某q度某班U的某学生的某门U目的考试成W在其班排第几?
q度 班?nbsp;U目?nbsp;学生学号 成W
2001 002 0001 01002003 89
SELECT
RANK(2001,002,0001,89) WITHIN GROUP
(ORDER BY T.q度, T.班? T.U目? T.成W DESC) T.排名
FROM T_QMKSCJ T
注意:
Rank()里的参数必须为常?或常D辑ּ,里面参数的个?cd也要和order by后字D늚cd相对?
]]>L解决CSE中不昄TimeStamp的问?/title> http://www.aygfsteel.com/xiekai-blog/archive/2007/10/25/155886.html言w寸 言w寸 Thu, 25 Oct 2007 08:09:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2007/10/25/155886.html http://www.aygfsteel.com/xiekai-blog/comments/155886.html http://www.aygfsteel.com/xiekai-blog/archive/2007/10/25/155886.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/155886.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/155886.html
select timestamp from table
where ....
其实只要加上to_char()命o(h)Q就可以让隐藏v来的数g乖显C出来?br />
select to_char(timestamp) from table
where ....
q一步,q可以控制显C的格式?br />
select
to_char(timestamp, 'yyyy/mm/dd hh:mi:ss')
from
table
where
rownum < 'n' --只显Ctable中前n-1条记录?-
]]> oracle SQL性能优化 http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95241.html言w寸 言w寸 Mon, 22 Jan 2007 03:16:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95241.html http://www.aygfsteel.com/xiekai-blog/comments/95241.html http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95241.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/95241.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/95241.html 阅读全文 ]]> Oracle的WHERE语句中的索引的?/title> http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95240.html言w寸 言w寸 Mon, 22 Jan 2007 03:13:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95240.html http://www.aygfsteel.com/xiekai-blog/comments/95240.html http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95240.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/95240.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/95240.html
索引是表的一个概念部?/span>
,
用来提高?gu)(g)索数据的效率Q?/span>
ORACLE
使用了一个复杂的自^?/span>
B-tree
l构
.
通常
,
通过索引查询数据比全表扫描要?/span>
.
?/span>
ORACLE
扑և执行查询?/span>
Update
语句的最佌\径时
, ORACLE
优化器将使用索引?/span>
大部分的性能问题其实都是索引应用的问题,W(xu)here子句、Order By、Group By 都要用到索引?br />一般开发h员认为将索引建全了就可以下班回家了,实则q有颇多的思量和陷阱?/font>
索引列上不要使用IS NULL ?IS NOT NULL
× SELECT Col FROM tbl WHERE col IS NULL
索引列上不要使用函数
× SELECT Col FROM tbl WHERE substr(name
,
1
,
3
)
=
'ABC' ○ SELECT Col FROM tbl WHERE name LIKE 'ABC%'
WHERE子句中,如果索引列是函数的一部分Q优化器不使用索引而用全表扫描.
索引列上不要使用NOT
Q?/span>
!=
?/span>
<>
Q?br />
× SELECT Col FROM tbl WHERE col !
=
10
○ SELECT Col FROM tbl WHERE col >
10
OR col <
10
C
,
索引只能告诉你什么存在于表中
,
而不能告诉你什么不存在于表?/span>
.
要避免在索引列上使用NOT, NOT ?x)生在和在索引列上使用函数相同?/span>影响 . ?/span>ORACLE?/span>遇到 ”NOT, 他就?x)停止用烦引{而执行全表扫描?br />
索引列上不要q行计算
× SELECT Col FROM tbl WHERE col /
10
>
10
○ SELECT Col FROM tbl WHERE col >
10
*
10
q是最最普遍的失效陷阱,比如where trunc(order_date)=trunc(sysdate), i+2>4。烦引失效的原因也简单,索引是针对原值徏的二叉树(wi)Q你列?3/4+2折腾一番后Q原来的二叉?wi)当然就用不上了?br />
]]> Oracle中DECODE的?/title> http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95221.html言w寸 言w寸 Mon, 22 Jan 2007 01:57:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95221.html http://www.aygfsteel.com/xiekai-blog/comments/95221.html http://www.aygfsteel.com/xiekai-blog/archive/2007/01/22/95221.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/95221.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/95221.html DECODE (条g,?,译?,?,译?,...值n,译值n,~省? 该函数的含义如下Q?br /> IF 条g=? THEN RETURN(译?) ELSIF 条g=? THEN RETURN(译?) ...... ELSIF 条g=值n THEN RETURN(译值n) ELSE RETURN(~省? END IF ]]> SQL文中关于UNION和左q接的?/title> http://www.aygfsteel.com/xiekai-blog/archive/2006/12/18/88472.html言w寸 言w寸 Mon, 18 Dec 2006 03:44:00 GMT http://www.aygfsteel.com/xiekai-blog/archive/2006/12/18/88472.html http://www.aygfsteel.com/xiekai-blog/comments/88472.html http://www.aygfsteel.com/xiekai-blog/archive/2006/12/18/88472.html#Feedback 0 http://www.aygfsteel.com/xiekai-blog/comments/commentRss/88472.html http://www.aygfsteel.com/xiekai-blog/services/trackbacks/88472.html 阅读全文 ]]>
վ֩ģ壺
|
dz |
γ |
«ɽ |
̴ |
¡ |
|
μԴ |
|
|
|
|
|
ͺ |
ɽ |
|
|
ɽ |
|
Զ |
|
˳ |
|
ɽ |
ɽ |
ǿ |
ʳ |
|
|
|
|
|
|
|
ҵ |
» |
֣ |
ƽ |
|
|
㰲 |