ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>在线视频2区,久久久91精品国产一区不卡,美女视频一区二区三区http://www.aygfsteel.com/zhangwei217245/category/43169.htmlAlways Beyond the Timezh-cnWed, 17 Mar 2010 07:41:54 GMTWed, 17 Mar 2010 07:41:54 GMT60Oracle 11g口ä×o˜q‡æœŸhttp://www.aygfsteel.com/zhangwei217245/archive/2010/03/17/315661.htmlX-SpiritX-SpiritWed, 17 Mar 2010 02:57:00 GMThttp://www.aygfsteel.com/zhangwei217245/archive/2010/03/17/315661.htmlhttp://www.aygfsteel.com/zhangwei217245/comments/315661.htmlhttp://www.aygfsteel.com/zhangwei217245/archive/2010/03/17/315661.html#Feedback0http://www.aygfsteel.com/zhangwei217245/comments/commentRss/315661.htmlhttp://www.aygfsteel.com/zhangwei217245/services/trackbacks/315661.html
不当DBA˜q˜çœŸä¸çŸ¥é“Oracle有这¼œžç§˜åŠŸèƒ½ã€?br />
上网上一查,有类似遭遇的朋友在论坛上求助åQŒäh家让他找DBA。汗。。ã€?br />
好在有的DBA乐于分äínåQŒç»ˆäºŽæ‰¾åˆîCº†è§£å†³æ–ÒŽ¡ˆåQ?br />
1. 用DBA账户ç™Õd½•SQL PLUS。我用的是sysmanã€?br /> 2. ¾pȝ»Ÿä¼šæ½Cºå£ä»¤å¤±æ•ˆï¼Œä½†æ˜¯ä¼šé©¬ä¸Šè®©ä½ é‡¾|®æ–°å¯†ç ã€?br /> 3. 重置之后åQŒè¿›å…¥SQL PLUS控制台ã€?br /> 4. 查看口ä×o失效用户的profileæ–‡äšg
SQL>SELECT username,profile FROM dba_users;

EMåQˆWeb界面的控制台åQ‰ï¼šæœåŠ¡å™?gt;用户åQŒæŸ¥çœ‹å£ä»¤å¤±æ•ˆçš„用户对应的概要文ä»Óž¼Œ˜q™é‡Œå‡è®¾ä¸ºDEFAULTåQŒä¸‹åŒã€?/p>

5. 查看对应的概要文件的口ä×o有效期设¾|?/p>

SQL>SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

EMåQˆWeb界面的控制台åQ‰ï¼šæœåŠ¡ å™?gt;概要文äšg>选择刚刚查到的概要文件DEFAULT>查看åQŒæŸ¥çœ‹å£ä»¤ä¸‹é¢çš„æœ‰æ•ˆæœŸå€¹{€?/p>

6.ž®†å£ä»¤æœ‰æ•ˆæœŸé»˜è®¤å€?80å¤? 修改æˆ?#8220;无限åˆ?#8221;åQˆæ­¤™å¹è¦æ…Žé‡åQé™¤éžä½ çœŸå¾—不想要这个密码失效的机制åQï¼‰

SQL>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

EMåQšæœåŠ¡å™¨>概要文äšg>选择刚刚查到的概要文件DEFAULT>¾~–辑>口ä×oåQŒåœ¨æœ‰æ•ˆæœŸè¾“å…? 或选择你需要的å€û|¼Œä¿å­˜ã€?/p>

该参æ•îC¿®æ”¹å®žæ—¶ç”Ÿæ•ˆã€?/span>

å‡ÞZºŽæ•°æ®åº“安全性考虑åQŒä¸å»ø™®®ž®†PASSWORD_LIFE_TIME倯D®¾¾|? 成UNLIMITEDåQŒå³å»ø™®®å®¢æˆ·èƒ½å¤Ÿå®šæœŸä¿®æ”¹æ•°æ®åº“用户口令ã€?/p>

在修改PASSWORD_LIFE_TIMEå€ég¹‹å‰å·²¾lå¤±æ•ˆçš„用户åQŒè¿˜æ˜¯éœ€ 要重æ–îC¿®æ”¹ä¸€‹Æ¡å¯†ç æ‰èƒ½ä‹É用ã€?/p>

SQL>ALTER USER test INDENTIFIED BYpassword

也可以从SQL Developer 里面来修改用æˆïLš„密码åQŒç”¨sysman账户ç™Õd½•以后åQŒæ‰¾åˆ°æ•°æ®åº“中的其他用户节点åQŒå±•å¼€åQŒæ‰¾åˆîC½ è¦ä¿®æ”¹å¯†ç çš„ç”¨æˆ·ã€‚ç„¶åŽç¼–è¾‘ç”¨æˆøP¼Œå¯¹ç”¨æˆ·å¯†ç è¿›è¡Œé‡¾|?如下图:



X-Spirit 2010-03-17 10:57 发表评论
]]>
Oracle not in查不到应有的¾l“æžœ(NULL、IN、EXISTS详解)http://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310708.htmlX-SpiritX-SpiritMon, 25 Jan 2010 03:30:00 GMThttp://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310708.htmlhttp://www.aygfsteel.com/zhangwei217245/comments/310708.htmlhttp://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310708.html#Feedback4http://www.aygfsteel.com/zhangwei217245/comments/commentRss/310708.htmlhttp://www.aygfsteel.com/zhangwei217245/services/trackbacks/310708.html
今天我把原文做了修订åQŒäؓ了对得è“v读者对我的å…Ïx³¨åQŒæˆ‘重新深入的研½I¶äº†˜q™ä¸ªé—®é¢˜åQŒåœ¨åŽé¢åQŒæˆ‘会把来龙去脉写清楚ã€?br />
问题åQ?br />
语句1åQ?br />
Select * from  table1 A where A.col1 not in ( select col1 from table2 B )

如果˜q™æ ·åQŒæœ¬æ¥åº”该有一条数据,¾l“果没有ã€?
如果我改写成˜q™æ ·åQ?

语句2åQ?br />
select * from table1 A where not exists (SELECT * FROM table2 B where B.col1 = A.col1)
¾l“æžœž®±æ­£¼‹®ï¼Œæœ‰ä¸€æ¡æ•°æ®æ˜¾½Cºã€?


¾lè¿‡ä¸€ç•ªæœç´¢ï¼ŒåŽŸä»¥ä¸ºæ˜¯å­æŸ¥è¯¢ç»“æžœé›†å¤ªå¤§çš„åŽŸå› ã€?/em>

后来有网上强人指点:子查询里面有½Iºé›†ã€‚即子查询的¾l“果集里面有NULL的结果ã€?/em>

把查询语句修æ”ÒŽˆåQ?


语句3åQ?br />
Select * from  table1 A where A.col1 not in ( select col1 from table2 B where B.col1 is not null )

果然ž®±æŸ¥å‡ºæ¥äº†ã€‚而且一点不差。。。厉害阿~~ï½?/em>


下面是针å¯ÒŽœ¬æ–‡é¢˜çš„分析:

1�首先来说说Oracle中的NULL�br />
Oracle中的NULL代表的是无意义,或者没有倹{€‚å°†NULLå’Œå…¶ä»–çš„å€ÆD¿›è¡Œé€»è¾‘˜qç®—åQŒè¿½Ž—过½E‹ä¸­åQŒNULL的表现更象是FALSEã€?br /> 下面è¯ïLœ‹çœŸå€ÆD¡¨åQ?br />

 AND NULL
 OR NULL
 TRUE  NULL  TRUE
 FALSE  FALSE  NULL
 NULL  NULL
 NULL

另外åQŒNULLå’Œå…¶ä»–çš„å€ÆD¿›è¡Œæ¯”较或者算术运½Ž—(<ã€?gt;ã€?ã€?=ã€?ã€?ã€?ã€?åQ‰ï¼Œ¾l“果仍是NULLã€?br />
如果惌™¦åˆ¤å®šæŸä¸ªå€¼æ˜¯å¦äØ“NULLåQŒå¯ä»¥ç”¨IS NULL或者IS NOT NULLã€?br />
2. 再来说说Oracle中的IN�br />
in是一个成员条ä»? 对于¾l™å®šçš„一个集合或者子查询,它会比较每一个成员倹{€?br /> IN功能上相当于 =ANY 的操作,而NOT IN 功能上相当于 !=ALL 的操作ã€?br /> IN在逻辑上实际上ž®±æ˜¯å¯¹ç»™å®šçš„æˆå‘˜é›†åˆæˆ–者子查询¾l“果集进行逐条的判定,例如åQ?br />
SELECT * FROM table1 A WHERE A.col1 in (20,50,NULL);
实际上就是执行了
SELECT * FROM table1 A WHERE A.col1=20 OR A.col1=50 OR A.col1=NULL;
˜q™æ ·åQŒæ ¹æ®NULL的运½Ž—ç‰¹ç‚¹å’ŒçœŸå€ÆD¡¨åQŒæˆ‘们可以看出,上边˜q™ä¸ªWHERE 字句可以被简åŒ?如果˜q”回NULL则无¾l“果集返回,˜q™ä¸€ç‚¹å’ŒFALSE是一æ ïLš„)ä¸?br />
WHERE A.col1=20 OR A.col1=50
也就是说åQŒå¦‚果你的table1中真的存在含有NULL值的col1列,则执行该语句åQŒæ— æ³•查询出那些å€égØ“null的记录ã€?br />
再来看看NOT IN。根据逻辑˜qç®—关系åQŒæˆ‘们知道,NOT (X=Y OR N=M) ½{‰ä­häº?X!=Y AND N!=MåQŒé‚£ä¹ˆï¼š
SELECT * FROM table1 A WHERE A.col1 not in (20,50,NULL)
½{‰ä­häº?br />
SELECT * FROM table1 A WHERE A.col1!=20 AND A.col1!=50 AND A.col1!=NULL
æ ÒŽ®NULL的运½Ž—ç‰¹æ€§å’ŒçœŸå€ÆD¡¨åQŒè¯¥è¯­å¥æ— è®ºå‰ä¸¤ä¸ªåˆ¤å®šæ¡ä»¶æ˜¯å¦äؓ真,其结果一定是NULL或者FALSE。故¾lå¯¹æ²¡æœ‰ä»ÖM½•记录可以˜q”回ã€?br />
˜q™å°±æ˜¯äؓ什ä¹?u>语句1查不到应有结果的原因。当ç„Óž¼Œå¦‚果你用NOT IN的时候,预先在子查询里把NULLåŽÀLŽ‰çš„è¯åQŒé‚£ž®±æ²¡é—®é¢˜äº†ï¼Œä¾‹å¦‚语句3ã€?br /> 有些童鞋可能要问了:那如果我æƒÏxŠŠA表里面那些和B表一样col1列的å€ég¸€æ ïLš„记录都查出来åQŒå³ä¾¿A、B两表里面的col1列都包括å€égØ“NULL的记录的话,用这一条语句就没办法了吗?

我只能很遗憾的告诉你åQŒå¦‚果你惛_œ¨WHERE后面单纯用IN ä¼ég¹Žä¸å¤ªå¯èƒ½äº†ï¼Œå½“ç„¶åQŒä½ å¯ä»¥åœ¨å¤–部的查询语句中将NULL条äšgòq¶åˆ—˜q›åŽ»åQŒä¾‹å¦‚:
SELECT * FROM table1 A WHERE A.col1 in (SELECT B.col1 FROM table2 B) OR A.col1 IS NULL;



3. 最后谈谈EXISTS�br />
有äh说EXISTS的性能比IN要好。但˜q™æ˜¯å¾ˆç‰‡é¢çš„。我们来看看EXISTS的执行过½E‹ï¼š
select * from t1 where exists ( select * from t2 where t2.col1 = t1.col1 )
相当于:
for x in ( select * from t1 )
   loop
      
if ( exists ( select * from t2 where t2.col1 = x.col1 )
      
then
         OUTPUT THE RECORD in x
      
end if
end loop

也就是说åQŒEXISTS语句实际上是通过循环外部查询的结果集åQŒæ¥˜q‡æ×o出符合子查询标准的结果集。于是外部查询的¾l“果集数量对该语句执行性能影响最大,故如果外部查询的¾l“果集数量庞大,用EXISTS语句的性能也不一定就会好很多ã€?br />
当然åQŒæœ‰äºø™¯´NOT IN是对外部查询和子查询都做了全表扫描,如果有烦引的话,˜q˜ç”¨ä¸ä¸Šç´¢å¼•åQŒä½†æ˜¯NOT EXISTS是做˜qžæŽ¥æŸ¥è¯¢åQŒæ‰€ä»¥ï¼Œå¦‚æžœ˜qžæŽ¥æŸ¥è¯¢çš„两列都做了索引åQŒæ€§èƒ½ä¼šæœ‰ä¸€å®šçš„æå‡ã€?br /> 当然至于实际的查询效率,我想˜q˜æ˜¯å…·ä½“情况具体分析吧ã€?br />

那么我们不妨来分析一下语å?ä¸ÞZ»€ä¹ˆèƒ½å¤Ÿçš„到正¼‹®çš„¾l“果吧:

语句2是这æ ïLš„åQ?em>
select * from table1 A where not exists (SELECT B.col1 FROM table2 B where B.col1 = A.col1)

实际上是˜q™æ ·çš„æ‰§è¡Œè¿‡½E‹ï¼š

for x in ( select * from table1 A )
   loop
      
if (not exists ( select * from table2 B where B.col1 = x.col1 )
      
then
         OUTPUT THE RECORD in x
      
end if
end loop

ç”׃ºŽè¡¨A中不包含NULL的记录,所以,遍历完表AåQŒä¹Ÿåªèƒ½æŒ‘出表A中独有的记录ã€?br />
˜q™å°±æ˜¯äؓ什ä¹?span style="background-color: #38ff8f;">语句2能够完成语句3çš„ä“Q务的原因ã€?br />
但如果表A中存在NULL记录而表B中不存在呢?

˜q™ä¸ªé—®é¢˜è¯·å¤§å®¶è‡ªå·±åˆ†æžå§ã€‚哈哈。有½{”案了可以给我留­a€å“¦ã€?br />

½{”案åQšA表中的NULL也会被查出来。因为select * from table2 B where B.col1 = NULL不返回结果,æ•?br /> not exists ( select * from table2 B where B.col1 = x.col1 )çš„å€égؓ真ã€?/span>



以上SQL˜qè¡Œ¾l“果在MySQLå’ŒOracle上都已经通过ã€?br />


]]>
Oracle 导入DMPæ–‡äšg命ä×o。导出基本上ž®±æ˜¯æ¢æˆEXPã€?/title><link>http://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310693.html</link><dc:creator>X-Spirit</dc:creator><author>X-Spirit</author><pubDate>Mon, 25 Jan 2010 02:19:00 GMT</pubDate><guid>http://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310693.html</guid><wfw:comment>http://www.aygfsteel.com/zhangwei217245/comments/310693.html</wfw:comment><comments>http://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310693.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/zhangwei217245/comments/commentRss/310693.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/zhangwei217245/services/trackbacks/310693.html</trackback:ping><description><![CDATA[想从备䆾的dmpæ–‡äšg中导入某些表的时å€?可以用如下imp命ä×oåQŒæ ¼å¼? <br /> imp username/password@本地net服务å?file=xxx.dmp fromuser=xx touser=xx tables=(tablename) <br /> username:登陆数据库的用户å? <br /> password:登陆数据库的密码 <br /> 本地net服务å?˜qžæŽ¥æœåŠ¡å™¨çš„æœ¬åœ°net服务å? <br /> file:ä½ çš„dmpæ–‡äšgçš„èµ\å¾? <br /> fromuser,touser:从一个用户导入到另外一个用æˆ? <br /> tables:从dmpæ–‡äšg中导入的表名 <img src ="http://www.aygfsteel.com/zhangwei217245/aggbug/310693.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/zhangwei217245/" target="_blank">X-Spirit</a> 2010-01-25 10:19 <a href="http://www.aygfsteel.com/zhangwei217245/archive/2010/01/25/310693.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> Ö÷Õ¾Ö©Öë³ØÄ£°å£º <a href="http://" target="_blank">Çà¸ÔÏØ</a>| <a href="http://" target="_blank">Îâ½­ÊÐ</a>| <a href="http://" target="_blank">ʯ³ÇÏØ</a>| <a href="http://" target="_blank">ʯ¼ÒׯÊÐ</a>| <a href="http://" target="_blank">É̺ÓÏØ</a>| <a href="http://" target="_blank">Èç¸ÞÊÐ</a>| <a href="http://" target="_blank">ÆÕÍÓÇø</a>| <a href="http://" target="_blank">°ÙÉ«ÊÐ</a>| <a href="http://" target="_blank">Æß̨ºÓÊÐ</a>| <a href="http://" target="_blank">¹®ÁôÏØ</a>| <a href="http://" target="_blank">ÎäÄþÏØ</a>| <a href="http://" target="_blank">ºîÂíÊÐ</a>| <a href="http://" target="_blank">Ð˹úÏØ</a>| <a href="http://" target="_blank">Â³É½ÏØ</a>| <a href="http://" target="_blank">ÎÚËÕÊÐ</a>| <a href="http://" target="_blank">²ý¶¼ÏØ</a>| <a href="http://" target="_blank">Î÷ÇàÇø</a>| <a href="http://" target="_blank">ºø¹ØÏØ</a>| <a href="http://" target="_blank">áÓÖÝÊÐ</a>| <a href="http://" target="_blank">ÏìË®ÏØ</a>| <a href="http://" target="_blank">èï³ÇÏØ</a>| <a href="http://" target="_blank">Öг¬</a>| <a href="http://" target="_blank">Ì«ÆÍËÂÆì</a>| <a href="http://" target="_blank">ÎýÁÖºÆÌØÊÐ</a>| <a href="http://" target="_blank">ʱÉÐ</a>| <a href="http://" target="_blank">ÇɼÒÏØ</a>| <a href="http://" target="_blank">ÏÌ·áÏØ</a>| <a href="http://" target="_blank">°²ÏªÏØ</a>| <a href="http://" target="_blank">ľÀï</a>| <a href="http://" target="_blank">ÄϲýÏØ</a>| <a href="http://" target="_blank">ÄϾ¸ÏØ</a>| <a href="http://" target="_blank">ÇúËÉÏØ</a>| <a href="http://" target="_blank">Î÷°²ÊÐ</a>| <a href="http://" target="_blank">ľÀ¼ÏØ</a>| <a href="http://" target="_blank">Ä˶«ÏØ</a>| <a href="http://" target="_blank">º£êÌÏØ</a>| <a href="http://" target="_blank">½¨µÂÊÐ</a>| <a href="http://" target="_blank">½­ÁêÏØ</a>| <a href="http://" target="_blank">ÐËÎÄÏØ</a>| <a href="http://" target="_blank">´ó¹ØÏØ</a>| <a href="http://" target="_blank">ÍþÄþ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>