• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Oracle常}集(二)_oracle

oracle 搞代码 7年前 (2018-06-14) 122次浏览 已收录 0个评论

71. 群档

shmmax

含x:@O置K不Q定究竟oracleY料或者作I系y使用多少ww,只Q定了最多可以使用的w的俊_@O置也不影作I系y的群速Y源。

 

O置方法:0.5*ww

例子:Set shmsys:shminfo_shmmax=10485760

shmmin

含x:共用w的最小大小。

O置方法:一般都O置成1。

例子:Set shmsys:shminfo_shmmin=1:

shmmni

含x:系y中共用w段的最大怠

例子:Set shmsys:shminfo_shmmni=100

shmseg

含x:每用暨M程可以使用的最多的共用w段的的俊

例子:Set shmsys:shminfo_shmseg=20:

semmni

含x:系y中semaphore identifierer的最大怠

O置方法:把@档闹翟O置@系y上的所有Oracle的例的init.ora中的最大的那processes的那值加10。

 

例子:Set semsys:seminfo_semmni=100

semmns

含x:系y中emaphores的最大怠

O置方法:@值可以通^以下方式算得到:各Oracle例的initSID.oraY的processes的值的和(除去最大的Processes担畲蟮哪Processes×2+10×Oracle例的怠

 

例子:Set semsys:seminfo_semmns=200

semmsl:

含x:一set中semaphore的最大怠

O置方法:O置成10+所有Oracle例的InitSID.ora中最大的Processes的值。

例子:Set semsys:seminfo_semmsl=-200

72. 怎硬榭茨男┯碛SYSDBA、SYSOPERS可啵

SQL>conn sys/change_on_install

SQL>select * from V_$PWFILE_USERS;

 

73. 如何为浞菀或多表?

exp 用/密a tables=(表1,…,表2)

 

74. 如何为浞菀或多用簦

exp system/manager owner=(用1,用2,…,用n) file=С鑫募

 

75. 如何CLOB谖贿M行全文z索?

SELECT * FROM A WHERE dbms_lob.instr(a.a,’K’,1,1)>0;

 

76. 如何@示前B接用

SHOW USER

 

77. 如何查看Y料n案放置的路  

col file_name format a50

SQL> select tablespace_name,file_id,bytes/1024/1024,file_name from

dba_data_files order by file_id;

 

78. 如何查看F有回L段及其B  

SQL> col segment format a30

SQL> SELECT

SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM

DBA_ROLLBACK_SEGS

 

79. 如何改一谖怀跏级x的Check

SQL> alter table xxx drop constraint constraint_name;

之後再建新s束:

SQL> alter table xxx add constraint constraint_name check();

 

80. Oracle常用系y文件有哪些?

通^以下D@示@些文件Y:v$database,v$datafile,v$logfile v$controlfile

v$parameter;

 

81. 冗B接INNER JOIN

Select a.* from bsempms a,bsdptms b where a.dpt_no=b.dpt_no;

 

82. 如何外B接

Select a.* from bsempms a,bsdptms b where a.dpt_no=b.dpt_no(+);

Select a.* from bsempms a,bsdptms b wherea.dpt_no(+)=b.dpt_no;

 

83. 如何绦心_本SQL文件

SQL>@$PATH/filename.sql;

 

84. 如何快速清空一大表

SQL>truncate table table_name;

 

85. 如何查有多少例

SQL>SELECT * FROM V$INSTANCE;

 

86. 如何查有多少表

SQL>select * from all_tables;

 

87. 如何ySQLZ句绦兴玫rg

SQL>set timing on ;

SQL>select * from tablename;

 

大家在ORACLE的r候可能龅胶芏嗫雌聿浑y的}, 特eπ率碚f, 今天我伟阉Y一下, l布o大家,

希望Υ蠹矣助! 和大家一起探, 共同M步!

 

ORACLE高手碚f是不用看的.

 

88. CHR()的反函凳

ASCII()

SELECT CHAR(65) FROM DUAL;

SELECT ASCII(‘A’) FROM DUAL;

 

89. 字串的B接

SELECT CONCAT(COL1,COL2) FROM TABLE ;

SELECT COL1||COL2 FROM TABLE ;

 

90. 怎麽把select出淼慕Y果У揭文字n案中?

SQL>SPOOL C:/ABCD.TXT;

SQL>select * from table;

SQL >spool off;

 

91. 怎庸浪SQL绦械I/O  

SQL>SET AUTOTRACE ON ;

SQL>SELECT * FROM TABLE;

OR

SQL>SELECT * FROM v$filestat ;

可以查看IO

 

92. 如何在sqlplus下改谖淮笮

alter table table_name modify (field_name varchar2(100));

改大行,改小不行(除非都是空的)

 

93. 如何查某天的Y料

select * from table_name where

trunc(日期谖)=to_date(‘2003-05-02′,’yyyy-mm-dd’);

 

94. sql Z句如何插入全年日期?

create table BSYEAR (d date);

insert into BSYEAR

select to_date(‘20030101′,’yyyymmdd’)+rownum-1

from all_objects

where rownum <= to_char(to_date(‘20031231′,’yyyymmdd’),’ddd’);

 

95. 如果修改表名

alter table old_table_name rename to new_table_name;

 

96. 如何取得命令的返回B值?

sqlcode=0

 

97. 如何知道用碛械脑S可

SELECT * FROM dba_sys_privs ;

 

98. W上下d的ORACLE9Ic市錾腺u的拾嬗惺谗^e?

功能上f]有^e,只不^oracle公司有明文ǎW站上下d的oracleb品不得用於 商I用途,否t侵唷

 

99. 怎优噘Y料是/行在wn模式下是/行在非wn模式下?

M入dbastudio,v程–〉Y料—〉wn查看。

 

100. sql>startup pfile和ifile,spfiled有什麽^e?

pfile就是Oracle鹘y的初始化滴募谋靖袷降摹

ifile似於cZ言Y的include,用於把另一文件引入

spfile是9iY新增的K且是默J的滴募M位格式

startup後只可接pfile

 

101. 如何搜索出前Nl?

SELECT * FROM empLOYEE WHERE ROWNUM < n

ORDER BY empno;

 

102. 如何知道C器上的Oracle支援多少Kl用

SQL>conn internal ;

SQL>show parameter processes ;

 

103. db_block_size可以修改

一般不可以o不建h@幼龅摹

 

104. 如何y表的

select (select count(id) from aa)+(select count(id) from bb)

from dual;

 

105. 怎佑SqlZ句F查找一列中第N大值?

select * from

(select t.*,dense_rank() over (order by sal) rank from employee)

where rank = N;

106. 如何在oF有的日期加上2年?(

select add_months(sysdate,24) from dual;

 

107. USED_UBLK值表示什麽意思

It is “harmless”.

 

108. Connect string是指什麽

是tnsnames.ora中的服彰崦娴热

 

109. 怎U大REDO LOG的大小?

建立一Rr的redologM,然後切Q日I,h除以前的日I,建立新的日I。

 

110. tablespace 是否不能大於4G

]有限制.

 

111. 返回大於等於N的最小整抵

SELECT CEIL(N) FROM DUAL;

 

112. 返回小於等於N的最小整抵

SELECT FLOOR(N) FROM DUAL;

 

113. 返回前月的最後一天

SELECT LAST_DAY(SYSDATE) FROM DUAL;

 

114. 如何不同用糸g

IMP SYSTEM/MANAGER FILE=AA.DMP FROMUSER=USER_OLD TOUSER=USER_NEW

ROWS=Y INDEXES=Y ;

 

115. 如何找Y料表的主I谖坏拿Q

SQL>SELECT * FROM user_constraints WHERE CONSTRAINT_TYPE=’P’ and

table_name=’TABLE_NAME’;

 

116. Y果集互加的函

SQL>SELECT * FROM BSEMPMS_OLD INTERSECT SELECT * FROM BSEMPMS_NEW;

SQL>SELECT * FROM BSEMPMS_OLD UNION SELECT * FROM BSEMPMS_NEW;

SQL>SELECT * FROM BSEMPMS_OLD UNION ALL SELECT * FROM BSEMPMS_NEW;

 

117. Y果集互p的函

SQL>SELECT * FROM BSEMPMS_OLD MINUS SELECT * FROM BSEMPMS_NEW;

 

118. 如何配置Sequence

建sequence seq_custid

create sequence seq_custid start 1 incrememt by 1;

建表r:

create table cust

{ cust_id smallint not null,

…}

insert r:

insert into table cust

values( seq_cust.nextval, …)

 

日期的各部分的常用的的法

119>.取rgc的年份的法:

SELECT TO_CHAR(SYSDATE,’YYYY’) FROM DUAL;

 

120>.取rgc的月份的法:

SELECT TO_CHAR(SYSDATE,’MM’) FROM DUAL;

 

121>.取rgc的日的法:

SELECT TO_CHAR(SYSDATE,’DD’) FROM DUAL;

 

122>.取rgc的r的法:

SELECT TO_CHAR(SYSDATE,’HH24′) FROM DUAL;

 

123>.取rgc的分的法:

SELECT TO_CHAR(SYSDATE,’MI’) FROM DUAL;

 

124>.取rgc的秒的法:

SELECT TO_CHAR(SYSDATE,’SS’) FROM DUAL;

 

125>.取rgc的日期的法:

SELECT TRUNC(SYSDATE) FROM DUAL;

 

126>.取rgc的rg的法:

SELECT TO_CHAR(SYSDATE,’HH24:MI:SS’) FROM DUAL;

 

127>.日期,rg形B樽衷B

SELECT TO_CHAR(SYSDATE) FROM DUAL;

 

128>.⒆执DQ成日期或rg形B:

SELECT TO_DATE(‘2003/08/01’) FROM DUAL;

 

129>.返回档男瞧的法:

SELECT TO_CHAR(SYSDATE,’D’) FROM DUAL;

 

130>.返回狄荒曛械牡天的法:

SELECT TO_CHAR(SYSDATE,’DDD’) FROM DUAL;

 

131>.返回午夜和抵兄付ǖrg值之g的秒档法:

SELECT TO_CHAR(SYSDATE,’SSSSS’) FROM DUAL;

 

132>.返回抵幸荒甑牡周的法:

SELECT TO_CHAR(SYSDATE,’WW’) FROM DUAL;

 

大家在ORACLE的r候可能龅胶芏嗫雌聿浑y的}, 特eπ率碚f, 今天我伟阉Y一下, l布o大家,

希望Υ蠹矣助! 和大家一起探, 共同M步!

 

ORACLE高手碚f是不用看的.

 

M谖

 

133. CURRVAL 和 nextval

表建序列

CREATE SEQUENCE EMPSEQ … ;

SELECT empseq.currval FROM DUAL ;

自硬迦胄蛄械抵

INSERT INTO emp

VALUES (empseq.nextval, ‘LEWIS’, ‘CLERK’,

7902, SYSDATE, 1200, NULL, 20) ;

 

134. ROWNUM

按O定排序的行的序

SELECT * FROM emp WHERE ROWNUM < 10 ;

135. ROWID

返回行的物理位址

SELECT ROWID, ename FROM emp WHERE deptno = 20 ;

 

136. N秒DQr分秒格式?

set serverout on

declare

N number := 1000000;

ret varchar2(100);

begin

ret := trunc(n/3600) || ‘小r’ ||

to_char(to_date(mod(n,3600),’sssss’),’fmmi”分 “ss”秒”‘) ;

dbms_output.put_line(ret);

end;

 

137. 如何查做比^大的排序的M程?

SELECT b.tablespace, b.segfile#, b.segblk#, b.blocks, a.sid,

a.serial#,

a.username, a.osuser, a.status

FROM v$session a,v$sort_usage b

WHERE a.saddr = b.session_addr

ORDER BY b.tablespace, b.segfile#, b.segblk#, b.blocks ;

 

138. 如何查做比^大的排序的M程的SQLZ句?

select /*+ ORDERED */ sql_text from v$sqltext a

where a.hash_value = (

select sql_hash_value from v$session b

where b.sid = &sid and b.serial# = &serial)

order by piece asc ;

 

139. 如何查找重?

SELECT * FROM TABLE_NAME

WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D

WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);

140. 如何h除重?

DELETE FROM TABLE_NAME

WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D

WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);

 

141. 如何快速g所有D?

SQL >SPOOL VIEW1.SQL

SQL >SELECT ‘ALTER VIEW ‘||TNAME||’

COMPILE;’ FROM TAB;

SQL >SPOOL OFF

然後绦VIEW1.SQL即可。

SQL >@VIEW1.SQL;

 

142. ORA-01555 SNAPSHOT TOO OLD的解Qk法

增加MINEXTENTS的值,增加^的大小,O置一高的OPTIMAL值。

143. 事找蟮幕L段空g不颍憩F表空g用M(ORA-01560e`),回L段U展到_

MAXEXTENTS的值(ORA-01628)的解Qk法.

向回L段表空g添加文件或使已有的文件大;增加MAXEXTENTS的值。

 

144. 如何加密ORACLE的存^程?

下列存^程热莘旁AA.SQL文件中

create or replace procedure testCCB(i in number) as

begin

dbms_output.put_line(‘入凳’||to_char(i));

end;

SQL>wrap iname=a.sql;

PL/SQL Wrapper: Release 8.1.7.0.0 – Production on Tue Nov 27

22:26:48 2001

Copyright (c) Oracle Corporation 1993, 2000. All Rights Reserved.

Processing AA.sql to AA.plb

/行AA.plb

SQL> @AA.plb ;

 

145. 如何O控事例的等待?

select event,sum(decode(wait_Time,0,0,1)) “Prev”,

sum(decode(wait_Time,0,1,0)) “Curr”,count(*) “Tot”

from v$session_Wait

group by event order by 4;

 

146. 如何回L段的们r?

select name, waits, gets, waits/gets “Ratio”

from v$rollstat C, v$rollname D

where C.usn = D.usn;

 

147. 如何O控表空g的 I/O 比例?

select B.tablespace_name name,B.file_name “file”,A.phyrds pyr,

A.phyblkrd pbr,A.phywrts pyw, A.phyblkwrt pbw

from v$filestat A, dba_data_files B

where A.file# = B.file_id

order by B.tablespace_name;

 

148. 如何O控文件系y的 I/O 比例?

select substr(C.file#,1,2) “#”, substr(C.name,1,30) “Name”,

C.status, C.bytes, D.phyrds, D.phywrts

from v$datafile C, v$filestat D

where C.file# = D.file#;

 

149. 如何在某用粝抡宜械乃饕

select user_indexes.table_name,

user_indexes.index_name,uniqueness, column_name

from user_ind_columns, user_indexes

where user_ind_columns.index_name = user_indexes.index_name

and user_ind_columns.table_name = user_indexes.table_name

order by user_indexes.table_type, user_indexes.table_name,

user_indexes.index_name, column_position;

 

150. 如何O控 SGA 的命中率?

select a.value + b.value “logical_reads”, c.value “phys_reads”,

round(100 * ((a.value+b.value)-c.value) / (a.value+b.value))

“BUFFER HIT RATIO”

from v$sysstat a, v$sysstat b, v$sysstat c

where a.statistic# = 38 and b.statistic# = 39

and c.statistic# = 40;

欢迎大家阅读《Oracle常}集(二)_oracle》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Oracle常}集(二)_oracle

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址