??xml version="1.0" encoding="utf-8" standalone="yes"?>中文文字幕文字幕亚洲色,亚洲娇小性色xxxx,www.亚洲日本http://www.tkk7.com/tfzhu/category/43570.html每天q步一点点Q?/description>zh-cnMon, 12 Jul 2010 20:55:49 GMTMon, 12 Jul 2010 20:55:49 GMT60ORA-00942: 表或视图不存?/title><link>http://www.tkk7.com/tfzhu/archive/2010/07/10/325742.html</link><dc:creator>断点</dc:creator><author>断点</author><pubDate>Sat, 10 Jul 2010 09:36:00 GMT</pubDate><guid>http://www.tkk7.com/tfzhu/archive/2010/07/10/325742.html</guid><wfw:comment>http://www.tkk7.com/tfzhu/comments/325742.html</wfw:comment><comments>http://www.tkk7.com/tfzhu/archive/2010/07/10/325742.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/tfzhu/comments/commentRss/325742.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/tfzhu/services/trackbacks/325742.html</trackback:ping><description><![CDATA[<p>错误原因Q在Oracle新徏了一个表Q名?#8220;QueryHistory",用来保存用户的查询记录,q时Q再?Select * from QueryHistory"来查??"ORA-00942: 表或视图不存?"?br /> <br /> 错误分析Q利用Google搜烦扑ֈ了原因,<br />  <span style="color: #0000ff">oracle是大写敏感的,如果定义表名U或列名U的时候没有用引号引v来的?oracle会把他们全部转换为大写,q时׃出现错误了?br /> </span><br /> 解决ҎQ将语句改ؓ"Select * from "QueryHistory" 或是语句全部大写?br /> </p> <img src ="http://www.tkk7.com/tfzhu/aggbug/325742.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/tfzhu/" target="_blank">断点</a> 2010-07-10 17:36 <a href="http://www.tkk7.com/tfzhu/archive/2010/07/10/325742.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Caused by: java.sql.BatchUpdateException: ORA-00001: unique constraint (PCISV6_TS.UI_PLY_CVRG) violatedhttp://www.tkk7.com/tfzhu/archive/2010/07/10/325740.html断点断点Sat, 10 Jul 2010 08:55:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/07/10/325740.htmlhttp://www.tkk7.com/tfzhu/comments/325740.htmlhttp://www.tkk7.com/tfzhu/archive/2010/07/10/325740.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/325740.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/325740.htmlERROR>> [BizControllerImpl异常堆栈{事务ID/用户代码}:[1278583679437325]/[00000210]:com.fwk.service.BusinessServiceException: com.fwk.dao.DaoException: 保存保单Q?span style="color: #0000ff">saveOrUpdatePolicy()时出? nested exception is org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
 at com.pcis.policy.dm.PolicyDAO.saveOrUpdatePolicy(PolicyDAO.java:193)
 at com.pcis.policy.app.newbusiness.service.PolicyAppService.savePolicy(PolicyAppService.java:343)
 at com.pcis.policy.app.underwrite.bm.UnderwriteBM.submitUnderwrite(UnderwriteBM.java:139)
 at com.pcis.policy.app.underwrite.action.UnderwriteBizAction.submitUnderwrite(UnderwriteBizAction.java:548)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 ...
Caused by: org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
 at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:624)
 at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
 at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:379)
 at org.springframework.orm.hibernate3.HibernateTemplate.flush(HibernateTemplate.java:841)
 at com.fwk.dao.BaseDao.flush(Unknown Source)
 at com.pcis.policy.dm.PolicyDAO.saveOrUpdatePolicy(PolicyDAO.java:174)
 ... 80 more
Caused by: java.sql.BatchUpdateException: ORA-00001: unique constraint (PCISV6_TS.UI_PLY_CVRG) violated
 at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:602)
 at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9350)
 at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:210)
 at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
 at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
 at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
 ... 90 more

分析及解冻I
在页面保存的时候,后台提示是违反唯一索引Q通过UI_PLY_CVRG 查询相应的表Q?br /> select * from user_indexes  where index_name='UI_PLY_CVRG'
该表是WEB_PLY_CVRG Q而该表的唯一索引UI_PLY_CVRG 是由该表?个字D늻?span style="color: #0000ff">C_PLY_NO、N_EDR_PRJ_NO?N_SEQ_NOQ然后看下页面发现是N_SEQ_NO?个重复,删除多余的记录即可保存成功?br />

 



断点 2010-07-10 16:55 发表评论
]]>
ORA-00600: 内部错误代码Q参? [16201], [], [], [], [], [], [], []http://www.tkk7.com/tfzhu/archive/2010/03/06/314723.html断点断点Sat, 06 Mar 2010 15:03:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/03/06/314723.htmlhttp://www.tkk7.com/tfzhu/comments/314723.htmlhttp://www.tkk7.com/tfzhu/archive/2010/03/06/314723.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/314723.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/314723.htmlIMP-00017: ׃ ORACLE ?600 错误Q以下的语句p|
 "CREATE PACKAGE BODY quest_soo_util wrapped"
IMP-00003: 遇到 ORACLE 错误 600
ORA-00600: 内部错误代码Q参? [16201], [], [], [], [], [], [], []
IMP-00017: ׃ ORACLE ?600 错误Q以下的语句p|
 "CREATE PACKAGE BODY QUEST_SOO_PKG wrapped"

以上是imp导入Oracle是出现的错误?/span>

转蝲Q其他情况出现的ORACLE ?600 错误Q?br />

q个错误?drop 用户时生的Q用h?drop。既然如此,d该用户删除其中的procedureQ结果也出现了该错误。有个帖子介l说q是 Oracle 的一?bugQNo. 2422726Q?/span>Qƈl出了解军_法。这里记录一下:
 1. 错误现象Q?br /> SQL> show user
USER ?SYS"
SQL> select * from v$version;
 
BANNER
------------------------------------------------------------
Oracle8i Release 8.1.6.0.0 - Production
PL/SQL Release 8.1.6.0.0 - Production
CORE    8.1.6.0.0       Production
TNS for 32-bit Windows: Version 8.1.6.0.0 - Production
NLSRTL Version 3.4.1.0.0 - Production
 
SQL> drop user hos_kf_hl cascade;
drop user hos_kf_hl cascade
*
ERROR 位于W?1 ?
ORA-00600: 内部错误代码Q自变量: [16201], [], [], [], [], [], [], []
 
SQL> conn hos_kf_hl/test@qmyb
已连接?br /> SQL> drop procedure kill_session;
drop procedure kill_session
*
ERROR 位于W?1 ?
ORA-00600: 内部错误代码Q自变量: [16201], [], [], [], [], [], [], []

 
2. 查询视图 procedure$Q确认该错误Q?br /> SQL> select obj#,owner#,type# from sys.obj$ where name ='KILL_SESSION' and owner#=96;
 
      OBJ#     OWNER#      TYPE#
---------- ---------- ----------
     55491         96          7
 
SQL> select * from procedure$ where obj# = 55491;
 
      OBJ# AUDIT$                                 STORAGESIZE    OPTIONS
---------- -------------------------------------- ----------- ----------

 
3. 解决
SQL> insert into procedure$ values (55491, '----------------', null, 2);
 
1 row inserted
 
SQL> commit;
 
Commit complete
 
SQL> drop procedure kill_session;
 
q程已丢弃?br />  
SQL> conn sys/password@s177 as sysdba
已连接?br /> SQL> drop user hos_kf_hl cascade;
 
用户已丢?/span>



断点 2010-03-06 23:03 发表评论
]]>
ORA-01658: 无法I间COREV6中的D创?INITIAL ?/title><link>http://www.tkk7.com/tfzhu/archive/2010/03/03/314466.html</link><dc:creator>断点</dc:creator><author>断点</author><pubDate>Wed, 03 Mar 2010 14:30:00 GMT</pubDate><guid>http://www.tkk7.com/tfzhu/archive/2010/03/03/314466.html</guid><wfw:comment>http://www.tkk7.com/tfzhu/comments/314466.html</wfw:comment><comments>http://www.tkk7.com/tfzhu/archive/2010/03/03/314466.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/tfzhu/comments/commentRss/314466.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/tfzhu/services/trackbacks/314466.html</trackback:ping><description><![CDATA[<p>IMP-00003: 遇到 ORACLE 错误 1658<br /> <span style="color: #0000ff">ORA-01658: 无法I间COREV6中的D创?INITIAL ?/span><br /> IMP-00017: ׃ ORACLE ?1658 错误Q以下的语句p|<br />  "CREATE TABLE "WEB_VCH_APP" ("C_APP_ID" VARCHAR2(30) NOT NULL ENABLE, "C_VCH"<br />  "_TYPE" VARCHAR2(30), "C_APP_DPT" VARCHAR2(30) NOT NULL ENABLE, "T_APP_TM" D"<br />  "ATE NOT NULL ENABLE, "C_APP_CDE" VARCHAR2(50) NOT NULL ENABLE, "N_APP_NUM" "<br />  "NUMBER(8, 0) NOT NULL ENABLE, "N_STORE_NUM" NUMBER(8, 0), "C_APP_REMARK" VA"<br />  "RCHAR2(500), "C_STATUS" CHAR(1), "N_CHK_TMS" NUMBER(4, 0), "C_CRT_CDE" VARC"<br />  "HAR2(30) NOT NULL ENABLE, "T_CRT_TM" DATE NOT NULL ENABLE, "C_UPD_CDE" VARC"<br />  "HAR2(30) NOT NULL ENABLE, "T_UPD_TM" DATE NOT NULL ENABLE, "C_TRANS_MRK" CH"<br />  "AR(1), "T_TRANS_TM" DATE)  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 ST"<br />  "ORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE "COREV6" LOGG"<br />  "ING NOCOMPRESS"<br /> <br /> <span style="color: #008000">主要是表I间已经用完Q重新扩大表I间Q即可?/span><br /> </p> <img src ="http://www.tkk7.com/tfzhu/aggbug/314466.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/tfzhu/" target="_blank">断点</a> 2010-03-03 22:30 <a href="http://www.tkk7.com/tfzhu/archive/2010/03/03/314466.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>本地计算Z的OracleOraHome92TNSListener服务启动后又停止?/title><link>http://www.tkk7.com/tfzhu/archive/2010/01/22/310525.html</link><dc:creator>断点</dc:creator><author>断点</author><pubDate>Fri, 22 Jan 2010 07:08:00 GMT</pubDate><guid>http://www.tkk7.com/tfzhu/archive/2010/01/22/310525.html</guid><wfw:comment>http://www.tkk7.com/tfzhu/comments/310525.html</wfw:comment><comments>http://www.tkk7.com/tfzhu/archive/2010/01/22/310525.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/tfzhu/comments/commentRss/310525.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/tfzhu/services/trackbacks/310525.html</trackback:ping><description><![CDATA[<p>出现q个问题Q主要是我把“我的电脑---计算机名”l改了,D监听启动后自动退出?br /> <br /> 解决Ҏ有以下两U:<br /> <span style="color: #0000ff">1.攚w|文件?/span><br /> 打开E:\oracle\ora92\network\admin\listener.ora文g,listener.ora 中的HOST值改成现在的机器名或IP 地址Q然后再启动监听?br /> </p> <p><span style="color: #0000ff">2.通过囑Ş界面讄?br /> </span>打开Net ManagerQ如下图?#8220;L”Ҏ现在新的机器名,OK啦?/p> <img style="width: 714px; height: 529px" height="529" alt="" src="http://www.tkk7.com/images/blogjava_net/tfzhu/NetManager.jpg" width="714" border="0" /><br /> <img src ="http://www.tkk7.com/tfzhu/aggbug/310525.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/tfzhu/" target="_blank">断点</a> 2010-01-22 15:08 <a href="http://www.tkk7.com/tfzhu/archive/2010/01/22/310525.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQLq阶 http://www.tkk7.com/tfzhu/archive/2010/01/14/309570.html断点断点Thu, 14 Jan 2010 13:58:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309570.htmlhttp://www.tkk7.com/tfzhu/comments/309570.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309570.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309570.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309570.html具体业务中用到的sql?/p>

1.q个是查找最q标志ؓ1Q且有多条记录的数据?nbsp;(q个sql查找错误比较有用?
  select a.c_ply_no ,count(1) from web_ply_base a
where  a.c_latest_mrk='1'
group by  a.c_ply_no
having count(1)>1

 

背景count(*)   count(1)   两者比较,主要q是要count(1)所相对应的数据字段Q?nbsp;

  如果你的数据表没有主键,那么count(1)比count(*)?nbsp; 
  如果有主键的话,那主键(联合主键Q作为count的条件也比count(*)要快  
  如果你的表只有一个字D늚话那count(*)是最快的?br />   如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很的?nbsp; 
  因ؓcount(*),自动会优化指定到那一个字Dc所以没必要去count(?)Q用count(*),sql会帮你完成优化的.


其他语句Qselect * from 表名 where 条g order by 字段?asc\desc     // asc 升序    desc  降序


posted @ 2009-11-28 18:36 断点 阅读(27) | 评论 (0)

断点 2010-01-14 21:58 发表评论
]]>
ORACLE的锁机制 http://www.tkk7.com/tfzhu/archive/2010/01/14/309569.html断点断点Thu, 14 Jan 2010 13:57:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309569.htmlhttp://www.tkk7.com/tfzhu/comments/309569.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309569.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309569.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309569.html数据库用锁QlockQ来保证Ml定时刻最多只有一个事务在修改l定的一D|据。实质上Ԍ正是锁机制才使ƈ发控制成为可能?/p>

ORACLE的封锁策略:  
  1、只有当修改ӞOracle在行U上锁定数据Q不要把锁定上升到块或表U?nbsp; 
  2、Oracle决不会ؓd而锁定数据,单读取不能在数据行上讄锁定?nbsp; 
  3、数据的写入器不会阻塞数据读取器?nbsp; 
  4、只有当另一个数据写入器已经锁定了某行数据后Q才d其他人对该行数据的写入。数据的d器决不会d数据的写入器?/p>

 

 

-------------------------------------------------------------------------
Oracleq发处理机制的简单看法?a target="_blank">http://www.51testing.com/html/97/n-131297.html

转蝲内容如下Q?/p>

在Oracle开发过E中Q如果你只是独立地测试你的应用,然后部vQƈ交给数十个ƈ发用户用,很有可能痛苦地遭遇原先未能到的ƈ发问题。例如,2个用户同时修Ҏ张订单,首先他们会查询这张订单存在不存在Q如果存在,那么修改它的状态。在q发操作中,用户1会很奇怪的发现他的修改丢失了。当Ӟ除此之外Q在未能够很好的处理q发问题可能遭遇的情况还有:

  ◆破坏数据的完整性?/p>

  ◆随着用户数的增多Q应用的q行速度减慢?/p>

  ◆不能很好地扩羃应用来支持大量用戗?/p>

  册些问题。首先要引入的是ORACLE的锁机制。数据库使用锁(lockQ来保证Ml定时刻最多只有一个事务在修改l定的一D|据。实质上Ԍ正是锁机制才使ƈ发控制成为可能。对ORACLE的锁机制可以查看ORACLE官方文档介绍。以下是对ORACLE锁的一Ҏȝ?/p>

  Oracle只在修改时才Ҏ据加行锁。正常情况下不会升到块U锁或表U锁Q不q两D|交期间的一D很短的旉内除外,q是一个不常见的操作)?/p>

  ◆如果只是读数据QOraclel不会对数据锁定。不会因为简单的L作在数据行上锁定?/p>

  ◆写入器QwriterQ不会阻塞读取器QreaderQ。换U说法:读(readQ不会被写(writeQ阻塞。这一点几乎与其他所有数据库都不一栗在其他数据库中Q读往往会被写阻塞。尽听上去q个Ҏ似乎很不错Q一般情况下实如此Q,但是Q如果你没有充分理解q个思想Q而且想通过应用逻辑对应用施加完整性约束,极有可能做得不寏V?/p>

  ◆写入器惛_某行数据Q但另一个写入器已经锁定了这行数据,此时该写入器才会被阻塞。读取器l对不会d写入器?/p>

  开发h员要可能的考虑以上因素。而且q要意识到这些事ORACLE独有的。针对其他数据库Q在锁的应用上略有不同?/p>

  以DB2Z

  1.Oracle通过h意向锁的多粒度封锁机制进行ƈ发控Ӟ保证数据的一致性。其DML锁(数据锁)分ؓ两个层次Q粒度)Q即表和行U。通常的DML操作在表U获得的只是意向锁(RS或RXQ,其真正的锁_度q是在行U;DB2也是通过h意向锁的多粒度封锁机制进行ƈ发控Ӟ保证数据的一致性?/p>

  其DML锁(数据锁)分ؓ两个层次Q粒度)Q即表和行U。通常的DML操作在表U获得的只是意向锁(ISQSIX或IXQ,其真正的锁_度也是在行U;另外Q在Oracle数据库中Q单U地L据(SELECTQƈ不加锁,q些都提高了pȝ的ƈ发程度,Oracle的是能够“?#8221;到数据,q且能够快速的q行数据d。而DB2的锁的是“M致?#8221;Q进行读数据QSELECTQ时会根据不同的隔离U别QRRQRSQCSQ而分别加SQISQIS锁,只有在用UR隔离U别时才不加锁。从而保证不同应用程序和用户d的数据是一致的?/p>

  2. 在支持高q发度的同时QDB2和Oracle寚w的操U|制有所不同QOracle利用意向锁及数据行上加锁标志位等设计技巧,减小了Oraclel护行锁的开销Q其在数据库ƈ发控制方面有着一定的优势。而DB2中对每个锁会在锁的内存(locklistQ中甌分配一定字节的内存I间Q具体是X?4字节内存QS?2字节内存Q注QDB2 V8之前是X?2字节内存而S?6字节内存Q?/p>

  3. Oracle数据库中不存在锁升Q而DB2数据库中当数据库表中行锁的使用过locklist*maxlocks会发生锁升?/p>

  4. 在Oracle中当一个session对表q行insertQupdateQdelete时候,另外一个session仍然可以从Orace回滚D|者还原表I间中读取该表的前映象(before imageQ; 而在DB2中当一个session对表q行insertQupdateQdelete时候,另外一个session仍然在读取该表数据时候会处于lock wait状态,除非使用UR隔离U别可以dW一个session的未提交的|所以Oracle同一时刻不同的session有读不一致的现象Q而DB2在同一时刻所有的session都是“M?#8221;的?/p>
posted @ 2009-11-28 17:50 断点 阅读(24) | 评论 (0)

断点 2010-01-14 21:57 发表评论
]]>
SQLException ORA-01502 index VHL_V6.PK_WEB_APP_TGT_OBJ or partition of such index is in unusable state http://www.tkk7.com/tfzhu/archive/2010/01/14/309568.html断点断点Thu, 14 Jan 2010 13:56:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309568.htmlhttp://www.tkk7.com/tfzhu/comments/309568.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309568.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309568.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309568.html今天在选择一条记录进行做删除操作Ӟ见indexp|的问题,如下Q?br /> 处理p|!错误信息:[SQLException  ORA-01502  index  VHL_V6.PK_WEB_APP_TGT_OBJ  or partition of such index is in unusable state ]
在网上查询了下,知道原因Q就上数据库查了一下,l果如下Q?br /> 1 PK_WEB_APP_TGT_OBJ NORMAL VHL_V6 TABLE UNUSABLE?/span>
昄是UNUSABLE状态,那也q道原因了Q呵呵,解决Q?br />
以下为参考文Ӟ

SQL> create table t(a number);
Table created.

1、现在,我们建立一个唯一索引来看看:
SQL> create unique index idx_t on t(a);
Index created.
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='T';         
no rows selected
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDX_T';
INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDX_T                          NORMAL                      DATA_DYNAMIC                   TABLE       VALID
SQL> insert into t values(1);
1 row created.
SQL> commit;
Commit complete.

2、将索引手工修改为unusable状态(模拟发生索引失效的情况)Q?/span>
SQL> alter index idx_t unusable;
Index altered.
SQL>  select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDX_T';
INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDX_T                          NORMAL                      DATA_DYNAMIC                   TABLE       UNUSABLE
我们看到q是Q已l不能正常往表中插入数据Q?br /> SQL> insert into t values(2);
insert into t values(2)
*
ERROR at line 1:
ORA-01502: index 'MISC.IDX_T' or partition of sUCh index is in unusable state

3、首先,我们通过重徏索引Qrebuild indexQ的Ҏ来解决问题:
SQL> alter index idx_t rebuild;
Index altered.
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDX_T';
INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDX_T                          NORMAL                      DATA_DYNAMIC                   TABLE       VALID
SQL> insert into t values(2);
1 row created.
SQL> commit;
Commit complete.
SQL>

4、现在我们再ơ模拟烦引失?unusable状?Q?/span>
SQL> alter index idx_t unusable;
Index altered.
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDX_T';
INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDX_T                          NORMAL                      DATA_DYNAMIC                   TABLE       UNUSABLE
SQL> insert into t values(3);
insert into t values(3)
*
ERROR at line 1:
ORA-01502: index 'MISC.IDX_T' or partition of such index is in unusable state

5、然后,看看是否可以通过讄参数skip_unusable_indexes=true来解决问题:
SQL> alter session set skip_unusable_indexes=true;
Session altered.
SQL> insert into t values(3);
insert into t values(3)
*
ERROR at line 1:
ORA-01502: index 'MISC.IDX_T' or partition of such index is in unusable state
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDX_T';
INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDX_T                          NORMAL                      DATA_DYNAMIC                   TABLE       UNUSABLE
SQL> alter index idx_t rebuild;
Index altered.
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDX_T';
INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDX_T                          NORMAL                      DATA_DYNAMIC                   TABLE       VALID
SQL> insert into t values(3);
1 row created.
SQL> commit;
Commit complete.
SQL>

ȝQ对于unique indexQ通过单的讄参数是不能解决问题的Q要解决unique index 失效的问题,只能通过重徏索引来实现?/span>

资料引用:http://www.knowsky.com/388811.html


posted @ 2009-09-26 21:36 断点 阅读(80) | 评论 (0)

断点 2010-01-14 21:56 发表评论
]]>
ORACLE用户常用数据字典的查询方?http://www.tkk7.com/tfzhu/archive/2010/01/14/309566.html断点断点Thu, 14 Jan 2010 13:55:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309566.htmlhttp://www.tkk7.com/tfzhu/comments/309566.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309566.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309566.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309566.html1、用?/span>
查看当前用户的缺省表I间QSQL>select username,default_tablespace from user_users;
查看当前用户的角ԌSQL>select * from user_role_privs;
查看当前用户的系l权限和表权限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;

昄当前会话所h的权限:SQL>select * from session_privs;
昄指定用户所h的系l权限:SQL>select * from dba_sys_privs where grantee='GAME';
昄Ҏ用户Qselect * from v$pwfile_users;
昄用户信息(所属表I间)
select default_tablespace,temporary_tablespace
from dba_users where username='GAME';

昄用户的PROFILE Qselect profile from dba_users where username='GAME';

2、表
查看用户下所有的?SQL>select * from user_tables;

查看名称包含log字符的表
SQL>select object_name,object_id from user_objects  where instr(object_name,'LOG')>0;

查看某表的创建时?br /> SQL>select object_name,created from user_objects where object_name=upper('&table_name');

查看某表的大?br /> SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
where segment_name=upper('&table_name');

查看攑֜ORACLE的内存区里的?br /> SQL>select table_name,cache from user_tables where instr(cache,'Y')>0;

3、烦?/span>
查看索引个数和类?br /> SQL>select index_name,index_type,table_name from user_indexes order by table_name;

查看索引被烦引的字段
SQL>select * from user_ind_columns where index_name=upper('&index_name');

查看索引的大?br /> SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
where segment_name=upper('&index_name');

4、序列号
查看序列Plast_number是当前?br /> SQL>select * from user_sequences;

5、视?/span>
查看视图的名U?SQL>select view_name from user_views;

查看创徏视图的select语句
SQL>set view_name,text_length from user_views;
SQL>set long 2000; 说明Q可以根据视囄text_lengthD定set long 的大?br /> SQL>select text from user_views where view_name=upper('&view_name');

6、同义词
查看同义词的名称
SQL>select * from user_synonyms;

7、约束条?/span>
查看某表的约束条?br /> SQL>select constraint_name, constraint_type,search_condition, r_constraint_name
from user_constraints where table_name = upper('&table_name');

SQL>select c.constraint_name,c.constraint_type,cc.column_name
from user_constraints c,user_cons_columns cc
where c.owner = upper('&table_owner') and c.table_name = upper('&table_name')
and c.owner = cc.owner and c.constraint_name = cc.constraint_name
order by cc.position;

8、存储函数和q程
查看函数和过E的状?br /> SQL>select object_name,status from user_objects where object_type='FUNCTION';
SQL>select object_name,status from user_objects where object_type='PROCEDURE';

查看函数和过E的源代?br /> SQL>select text from all_source where owner=user and name=upper('&plsql_name');

转蝲Qhttp://www.javaeye.com/topic/264639

posted @ 2009-09-14 17:29 断点 阅读(28) | 评论 (0)

断点 2010-01-14 21:55 发表评论
]]>
sqlca.sqlcode!=0 http://www.tkk7.com/tfzhu/archive/2010/01/14/309565.html断点断点Thu, 14 Jan 2010 13:54:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309565.htmlhttp://www.tkk7.com/tfzhu/comments/309565.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309565.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309565.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309565.html最q看C语言的程序,E序里面带有sql语句Q其中就有这么一句:
EXEC SQL select upper(nvl(c_grant_dpt_cde,'0')),nvl(C_CTCT_CDE,'0') into :sGrantCde,:sCtctCde from t_department where c_dpt_cde = :sDptCde;
  if (sqlca.sqlcode!=0) {
         printf("[ppPlyNewCountPrm]ERROR:sqlca.sqlerrmc = %s\n", sqlca.sqlerrm.sqlerrmc);
         return(SetUserError(lpInBuffer,2,"取机构部门归属错误!"));
  }

不明?sqlca.sqlcode = 0 是什么意思,搜了搜,记录一下sqlca.sqlcode的各U取值的意义Q?/p>

    0 ——最q一ơsql语句执行成功

   -1 ——最q一ơsql语句执行p|

100 ——最q一ơsql语句没有q回数据


posted @ 2009-09-10 19:59 断点 阅读(129) | 评论 (0)

断点 2010-01-14 21:54 发表评论
]]>
Oracle中sql解释 http://www.tkk7.com/tfzhu/archive/2010/01/14/309564.html断点断点Thu, 14 Jan 2010 13:53:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309564.htmlhttp://www.tkk7.com/tfzhu/comments/309564.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309564.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309564.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309564.html1、SELECT nvl(C_REMARK,chr(0)) into :sRate
       from T_COMM_CODE
       where c_cde = trim(:sText2) and rownum = 1;

nvl是个函数Q作用是如果W一个参CؓI|则返回第二个参数的|否则q回W一个参数的倹{?/p>

chr(0)数?转化为字W??/p>

2、Y.YJKSBH=X.ZXKSBH(+) AND Y.ZLXMID=X.ZLXMID(+)
Q?Q表C左q接Q就是在做关联之后,y表中存在而x表中不存在的数据也能查出来?/p>
posted @ 2009-06-13 17:46 断点 阅读(72) | 评论 (0)

断点 2010-01-14 21:53 发表评论
]]>
ORA-01502: 索引'P_ABCD.PK_WEB_BASE'或这cȝ引的分区处于不可用状?/title><link>http://www.tkk7.com/tfzhu/archive/2010/01/14/309563.html</link><dc:creator>断点</dc:creator><author>断点</author><pubDate>Thu, 14 Jan 2010 13:52:00 GMT</pubDate><guid>http://www.tkk7.com/tfzhu/archive/2010/01/14/309563.html</guid><wfw:comment>http://www.tkk7.com/tfzhu/comments/309563.html</wfw:comment><comments>http://www.tkk7.com/tfzhu/archive/2010/01/14/309563.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/tfzhu/comments/commentRss/309563.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/tfzhu/services/trackbacks/309563.html</trackback:ping><description><![CDATA[<p>原因Q出现这个问题,可能有hmoveq表Q或者disable q烦引?br /> 1、alter table xxxxxx move tablespace xxxxxxx 命o后,索引׃失效?br /> 2、alter index index_name  unusableQ命令索引失效?/p> <p>解决办法Q?br /> 1、重建烦引才是解册c问题的完全的方法?br /> alter index index_name rebuild (online);<br /> 2、如果是分区索引只需要重建那个失效的分区 ?br /> alter index index_name rebuild partition partition_name (online); </p> <p>说明Q?br /> 1. alter session set skip_unusable_indexes=true;可以在sessionU别跌无效索引作查询?br /> 2.分区索引应适用user_ind_partitions?br /> 3.状态分4U:<br /> N/A说明q个是分区烦引需要查user_ind_partitions或者user_ind_subpartitions来确定每个分区是否可用;<br /> VAILD说明q个索引可用Q?br /> UNUSABLE说明q个索引不可用;<br /> USABLE 说明q个索引的分区是可用的?/p> <p>http://www.sudu.cn/info/html/edu/20071225/20526.html<br /> <a >http://blog.oracle.com.cn/html/65/t-122265.html</a></p> <br /> <br /> posted @ 2009-05-19 19:16 断点 阅读(369) | 评论 (0) <img src ="http://www.tkk7.com/tfzhu/aggbug/309563.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/tfzhu/" target="_blank">断点</a> 2010-01-14 21:52 <a href="http://www.tkk7.com/tfzhu/archive/2010/01/14/309563.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORA-01438: 值大于此列指定的允许_?http://www.tkk7.com/tfzhu/archive/2010/01/14/309561.html断点断点Thu, 14 Jan 2010 13:51:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309561.htmlhttp://www.tkk7.com/tfzhu/comments/309561.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309561.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309561.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309561.html比如定义为number(4,2)Q却要插入一个?00.12的话Q就会出错啊Q原因是numberQpQsQ的问题?

numberQpQsQ,其中p表示该number的总长度,s为小C?br /> 如果s敎ͼ则会取相应位数的取整?br /> 例如Q如果numberQ?Q?3Q,则数?234的存储gؓ1000Q如果numberQ?Q?2Q,则数?234的存储gؓ1200?/span>

在对数据库表中的字段讑֮cdӞ要注意:
NUMBER(10,6)  Double   带有数
NUMBER(4)     Long     为整?/span>


posted @ 2009-05-16 17:31 断点 阅读(363) | 评论 (0)

断点 2010-01-14 21:51 发表评论
]]>
Oracle中Blob和Clob http://www.tkk7.com/tfzhu/archive/2010/01/14/309562.html断点断点Thu, 14 Jan 2010 13:51:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309562.htmlhttp://www.tkk7.com/tfzhu/comments/309562.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309562.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309562.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309562.htmlBlob是指二进制大对象也就是英文Binary Large Object的所写;
Clob是指大字W对象也是英文Character Large Object的所写?br />
因此q两个类型都是用来存储大量数据而设计的Q其中BLOB是用来存储大量二q制数据的;CLOB用来存储大量文本数据?

在JDBC中有两个接口对应数据库中的BLOB和CLOBcdQjava.sql.Blob和java.sql.Clob。和你^怋用数据库一样你可以直接通过ResultSet.getBlob()Ҏ来获取该接口的对象。与qx的查扑֔一不同的是得到Blob或Clob的对象后Q我们ƈ没有得到M数据Q但是我们可以这两个接口中的Ҏ得到数据?
例如Q?
Blob b=resultSet.getBlob(1);
InputStream bin=b.getBinaryStream();
Clob c=resultSet.getClob(2);
Reader cReader=c.getCharacterStream():
 
另外q有一U获取方法,不用数据流Q而是使用数据块?
例如
Blob b=resultSet.getBlob(1);
byte data=b.getByte(0,b.length());
Clob c=resultSet.getClob(2);
String str=c.getSubString(0,c.length());
在这里要说明一下,q个Ҏ其实q不安全Q如果你很细心的话,那很Ҏp发现getByte()和getSubString()两个Ҏ中的W二个参数都是intcd的,而BLOB和CLOB是用来存储大量数据的。而且Bolb.length()和Clob.length()的返回值都是longcd的,所以很不安全?/p>


那么有h肯定要问既然已经有VARCHAR和VARBINARY两中cdQؓ什么还要再使用另外的两U类型呢Q?br /> 原因QVARCHAR和VARBINARY两种cd是有自己的局限性的。首先说q两U类型的长度q是有限的不可以过一定的限额Q以VARCHAR在ORA中ؓ例长度不可以过4000Q而LONGVARCHARcd的一个重要缺陷就是不可以使用LIKEq样的条件检索?/p>

另外是在数据库中VARCHAR和VARBINARY的存取是全部内容从全部d或写入,对于100K或者说更大数据来说q样的读写方式,q不如用进行读写来得更现实一些?


posted @ 2009-05-16 19:26 断点 阅读(166) | 评论 (0)

断点 2010-01-14 21:51 发表评论
]]>
Oracle中插入Date数据 http://www.tkk7.com/tfzhu/archive/2010/01/14/309560.html断点断点Thu, 14 Jan 2010 13:49:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309560.htmlhttp://www.tkk7.com/tfzhu/comments/309560.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309560.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309560.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309560.html在oracle中徏有datecd的字D,插入可以采取如下ҎQ?

如果是小时ؓQ1Q1Q 采取如下格式Qyyyy-mm-dd HH:MI:SS
insert into test values(to_date('2009-5-7 07:09:37','yyyy-mm-dd HH:MI:SS'));


如果是小时ؓQ1Q2Q 采取如下格式Qyyyy-mm-dd HH24:MI:SS
insert into test values(to_date('2009-5-7 17:09:37','yyyy-mm-dd HH24:MI:SS'));


posted @ 2009-05-07 20:14 断点 阅读(145) | 评论 (0)

断点 2010-01-14 21:49 发表评论
]]>
ORA-01461: 仅可以ؓ插入 LONG 列的 LONG D?http://www.tkk7.com/tfzhu/archive/2010/01/14/309559.html断点断点Thu, 14 Jan 2010 13:48:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309559.htmlhttp://www.tkk7.com/tfzhu/comments/309559.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309559.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309559.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309559.html 我在pȝ的一个页面上加蝲一?xml文gӞ出现了这个错误?

原因Q?/p>

当插入数据的长度?000?000内,׃抛出q样的错误?/p>


解决ҎQ?/p>

思\Q将存储的字W串补上I格Q让其超q?000的长度即可,但仅限与紧急解决问题?br /> 1、首先在.java文g中引入import org.apache.commons.lang.StringUtils;
2、在?java文g的相应的Ҏ里添加如下判断:

    // 处理ora-1461问题(clob长度?000-2000之间会出?
        if (xml.length() >= 1000 && xml.length() <= 2000) {
            xml = StringUtils.rightPad(xml, 2008);
        }

 

相关知识Q?/p>

LONG: 可变长的字符串数据,最?GQLONGhVARCHAR2列的Ҏ,可以存储长文本一个表中最多一个LONG?
LONG RAW: 可变长二q制数据Q最?G
CLOB:  字符大对象Clob 用来存储单字节的字符数据
NCLOB: 用来存储多字节的字符数据
BLOB: 用于存储二进制数?
BFILE: 存储在文件中的二q制数据Q这个文件中的数据只能被只读ѝ但该文件不包含在数据库内。bfile字段实际的文件存储在文gpȝ?字段中存储的是文件定位指?bfile对oracle来说是只ȝ,也不参与事务性控制和数据恢复?
其中CLOBQNCLOBQBLOB都是内部的LOB(Large Object)cdQ最?GQ没有LONG只能有一列的限制。要保存囄、文本文件、Word文g各自最好采用那E数据类型呢QBLOB最好,LONG RAW也不错,但Long是oracle要废弃的类型,因此用BLOB?/p>

相关链接Q?a href="http://www.tkk7.com/allen-zhe/archive/2008/05/06/198627.html">http://www.tkk7.com/allen-zhe/archive/2008/05/06/198627.html


posted @ 2009-04-18 13:01 断点 阅读(676) | 评论 (0)

断点 2010-01-14 21:48 发表评论
]]>
oracle数据库中文ؕ?http://www.tkk7.com/tfzhu/archive/2010/01/14/309558.html断点断点Thu, 14 Jan 2010 13:47:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309558.htmlhttp://www.tkk7.com/tfzhu/comments/309558.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309558.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309558.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309558.html今天跟新人安装oracle后,打开数据库查看表里面的数据,发现里面的数据全?#8220;?#8221;字?br /> q可是以前没有出现过的。因此就查了一下,了解到是注册表的字符U问题。现解决如下Q?br />  
在注册表里进行修改:
开?->q行里面输入regedit-->我的电脑\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 ?span style="color: #0000ff">NLS_LANG的?br /> 以前是:American_America.ZHS16GBK
现改为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

再一ơ打开oracleӞ数据昄一切正常?/p>
posted @ 2009-04-09 15:08 断点 阅读(118) | 评论 (0)

断点 2010-01-14 21:47 发表评论
]]>
TOAD常用快捷?http://www.tkk7.com/tfzhu/archive/2010/01/14/309557.html断点断点Thu, 14 Jan 2010 13:46:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309557.htmlhttp://www.tkk7.com/tfzhu/comments/309557.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309557.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309557.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309557.html现在在企业中Q操作oracle数据库的客户端,除了PL/SQL外,使用的较多的是TOAD了!

为此Q我在网上搜索了下,整理了些单TOAD的用技巧,现分享给大家?/p>


常用快捷键:

F8 调出以前执行的sql命o
F9 执行全部sql
Ctrl+t 补全table_name
Ctrl+. 补全table_name
alt+ 头上下 看sql history
Ctrl+Enter 直接执行当前sql
Ctrl+Shift+F  格式化sql语句?/p>

如果q觉得不够用的话Q可以在pȝ菜单I白处点d键,q入menu shortcutsQ自行定义快捷键?/p>

 

toad下修改表中字D늚|
首先在schema Browser下查扑ֈ相应的表Q在双点击Data栏,然后选中一条记录,再点击Data栏下面的?Edit Record)Q即可修改字D里的|然后点击√(Post edit)Q最后就是Commit了?/p>
posted @ 2009-04-08 20:50 断点 阅读(637) | 评论 (0)

断点 2010-01-14 21:46 发表评论
]]>
Oracle数据的导Z导入 http://www.tkk7.com/tfzhu/archive/2010/01/14/309556.html断点断点Thu, 14 Jan 2010 13:45:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309556.htmlhttp://www.tkk7.com/tfzhu/comments/309556.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309556.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309556.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309556.html前序Q关?font face="Verdana">Oracle9i数据的导Z导入问题Q折腾我好长旉了,其是导入。今天在一位同事的指导下,是l于成功了,ZCq位同事的帮助,在此仅以“?#8221;作ؓ记号?/p>

正文Q?/p>

Oracle数据导出Q?br /> 如果是导出本机的Oracle数据库:
exp pcisv62/11@ORCL  file="d:\pcisv62081226.dmp"  full=y   
QORCL为本地数据库监听Q?/font>

如果是导出服务器端的Oracle数据Q?br /> exp pcisv62/11@tnsname  file="d:\pcisv62081226.dmp" full=y
Qtnsname为COREV6_DBSERVERQSID为COREV6Q主ZؓDBSERVER。)
exp pcisv6_ab/11@COREV6_DBSERVER file=d:\v6100210.dmp rows=y buffer=1024000

注意Q必L DBA 才能执行完整数据库或表空间导出操作?/font>


Oracle数据导入,分以下步骤:
1.先在Oracle9i的Enterprise Manager Console下,以sys/sys及sysdbaw䆾登陆Q在“存储”-->“表空?#8221;下创I间COREV6Q同时给其分配合适的I间?br /> 2.?#8220;安全?#8221;-->“用户”下创建用户pcisv62,使用户默认的表空间ؓCOREV6Q同时在“角色”里授予CONNECT、DBA、EXP_FULL_DATABASE、IMP_FULL_DATABASE、RESOURCE?br /> 3.导入.dmp文gQ开?->q行cmdQ导入命令:
imp pcisv6_ab/11@ORCL file=d:\v6100210.dmp  full=y ignore=y

注意Q如果备份的.dmp文g是以用户pcisv62导出COREV6I间的数据,那么
1.新徏的用h好是pcisv62Q否则命令ؓQ?br />   imp pcisv62/11@ORCL file=d:\v6100210.dmp   fromuser=pcisv62  touser=pcisv6_ab   full=y  ignore=y  rows=y  tablespaces=corev6
2.与新建用户关联的新徏I间名必MؓCOREV6Q否则Oracle报找不到COREV6I间的错误?/p>

 

数据成功导入以后Q下一步就是配|Tomcat的server.xml文gQ?br /> 1.如果用到的是本机上的数据Q本地数据源里的部分配置为: username="pcisv62" password="11"

url="jdbc:oracle:thin:@localhost:1521:orcl"
2.如果用到的是服务器上的数据,则数据源里的部分配置为: username="pcisv62" password="11"

url="jdbc:oracle:thin:@dbserver:1521:corev6"Q?/span>dbserver为服务器的名字,corev6为服务器上Oracle的SIDQ?/p>

 

oracle的安装目录E:\oracle\ora92\network\admin下的tnsnames.oraQ?br /> 本地配置Q?br /> ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = L?(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )
或服务器配置Q?br /> COREV6_DBSERVER =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = COREV6)
      (SERVER = DEDICATED)
    )
  )


以下转蝲Q几U导入导出的命oҎQ以备以后查阅?br /> 数据导出Q?br /> exp qhmis/qhmis@qhmis  file='d:\backup\qhmis\qhmis20060526.dmp'  grants=y  full=n
 1 数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp?br />    exp system/manager@TEST file=d:\daochu.dmp full=y
 2 数据库中system用户与sys用户的表导出
   exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
 3 数据库中的表table1 、table2导出
   exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
 4 数据库中的表table1中的字段filed1?00"打头的数据导?br />    exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"      
数据的导入:
 1 D:\daochu.dmp 中的数据导入 TEST数据库中?br />    imp system/manager@TEST  file=d:\daochu.dmp
   上面可能有点问题Q因为有的表已经存在Q然后它报错,对该表就不进行导入?br />    在后面加?ignore=y 可以了?br />  2 d:\daochu.dmp中的表table1 导入
 imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1)


posted @ 2009-03-04 17:06 断点 阅读(1224) | 评论 (0)

断点 2010-01-14 21:45 发表评论
]]>
以systemw䆾登陆sql*pulsҎ http://www.tkk7.com/tfzhu/archive/2010/01/14/309555.html断点断点Thu, 14 Jan 2010 13:44:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309555.htmlhttp://www.tkk7.com/tfzhu/comments/309555.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309555.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309555.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309555.htmlpȝ环境QWindowXP?/p>

oracle9i  安装到最后,更改了:sys口o:sys    system口o:system   

现在需要以systemw䆾登陆sql*pulsQ方法有二:

 

W一U方法:.q入SQL*Plus后在弹出对话框中直接点击“定”Q?nbsp;  
  误入用户名Qsys   as   sysdba   

     误入口令:sys  


W二U方法:q入DosH口Q输入一下命令:  
  c:\>sqlplus   /nolog  
  SQL>conn   sys/password   as   sysdba

注意Qsys的权限最大!是默认的DBAQ一般不在该用户下徏用户表,PACKAGE{!system的权限就差一些?/p>
posted @ 2009-02-27 14:55 断点 阅读(96) | 评论 (0)

断点 2010-01-14 21:44 发表评论
]]>
oracle中的 exists ?in 的效率问?http://www.tkk7.com/tfzhu/archive/2010/01/14/309554.html断点断点Thu, 14 Jan 2010 13:42:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309554.htmlhttp://www.tkk7.com/tfzhu/comments/309554.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309554.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309554.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309554.html有两个简单例子,以说?“exists”?#8220;in”的效率问?/span>

1) select * from T1 where exists(select * from T2 where T1.a=T2.a) ;

    T1数据量小而T2数据量非常大ӞT1<<T2 Ӟ1) 的查询效率高?/span>

2) select * from T1 where T1.a in (select T2.a from T2) ;

     T1数据量非常大而T2数据量小ӞT1>>T2 Ӟ2) 的查询效率高?/span>

exists 用法Q?/font>

1Q句中的“select * from T2 where T1.a=T2.a” 相当于一个关联表查询Q?/font>

     相当?/font>“select * from T1,T2  where T1.a=T2.a”Q?/p>

    “existsQxxxQ?#8221;它只在乎括号里的数据能不能查扑և来,是否存在q样的记录,如果存在Q这1Q句的where 条g成立?/font>

in的用法:

2Q句中的“select * from T1 where T1.a in (select T2.a from T2) ”Q?/font>q里?#8220;in”后面括号里的语句搜烦出来的字D늚内容一定要相对应,一般来_T1和T2q两个表的a字段表达的意义应该是一LQ否则这h没什么意义?/font>

---------------------------------------------------------------

+++++++++++++   下面转蝲  +++++++++++++++++++

---------------------------------------------------------------

今天市场报告有个sql及慢Q运行需?0多分钟,如下Q?br /> update p_container_decl cd
set cd.ANNUL_FLAG=\'0001\',ANNUL_DATE = sysdate
where exists(
select 1
from (
select tc.decl_no,tc.goods_no
from p_transfer_cont tc,P_AFFIRM_DO ad
where tc.GOODS_DECL_NO = ad.DECL_NO
and ad.DECL_NO = \'sssssssssssssssss\'
) a
where a.decl_no = cd.decl_no
and a.goods_no = cd.goods_no
)
上面涉及?个表的记录数都不,均在百万左右。根据这U情况,我想C前不久看的tom的一文章,说的是exists和in的区别,in 是把外表和那表作hash joinQ而exists是对外表作loopQ每ơloop再对那表q行查询?br /> q样的话Qin适合内外表都很大的情况,exists适合外表l果集很的情况?

而我目前的情况适合用in来作查询Q于是我改写了sqlQ如下:
update p_container_decl cd
set cd.ANNUL_FLAG=\'0001\',ANNUL_DATE = sysdate
where (decl_no,goods_no) in
(
select tc.decl_no,tc.goods_no
from p_transfer_cont tc,P_AFFIRM_DO ad
where tc.GOODS_DECL_NO = ad.DECL_NO
and ad.DECL_NO = ‘ssssssssssss’
)

让市Zh员测试,l果q行旉?分钟内。问题解决了Q看来exists和in实是要Ҏ表的数据量来军_使用?/font>

--------------------------------------------------------------------------


posted @ 2009-02-01 17:54 断点 阅读(240) | 评论 (0)

断点 2010-01-14 21:42 发表评论
]]>
卸蝲oracleҎ http://www.tkk7.com/tfzhu/archive/2010/01/14/309553.html断点断点Thu, 14 Jan 2010 13:41:00 GMThttp://www.tkk7.com/tfzhu/archive/2010/01/14/309553.htmlhttp://www.tkk7.com/tfzhu/comments/309553.htmlhttp://www.tkk7.com/tfzhu/archive/2010/01/14/309553.html#Feedback0http://www.tkk7.com/tfzhu/comments/commentRss/309553.htmlhttp://www.tkk7.com/tfzhu/services/trackbacks/309553.html在卸载Oracle时删不干净Q搞的要重装pȝQ本人在工作中ȝ出如下方法,希望对大家有所帮助?
注意Qoracle的源E序的\径必L英文路径Q否则安装会出错Q?/font>

1.以Administrators w䆾登陆windowspȝ?br /> 2.停掉Oracle Service服务?nbsp;
3.通过Oracle installer 卸蝲Morcle产品及组件?
4.删除%ORACLE_base%文档和SYSTEM_DRIVE:\program files下的oracle文档?
5.删除SYSTEM_DRIVE:\Documents and Settings\All Users\「开始」菜单\E式中的oracleV?
6.?#8220;开始菜?#8221;—点“q行”—输?#8220;regedit”打开注册表:
   到HKEY_CLASSES_ROOT下,删除以OracleQORAQORCL开头的键;
   到HKEY_LOCAL_MACHINE\SOFTWARE下,删除ORACLE键和Apache Group键;
   到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下,删除以Oracle开头的键;
   到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \Eventlog\Application下,删除以Oracle
开头的键;
  到HKEY_CURRENT_USER下,删除Oracle键;
  到HKEY_CURRENT_USER\SOFTWARE\ORACLE下,删除以Oracle ?Orcl开头的键(假如有的话)Q?
7.打开pȝpȝ环境变量Q我的电脑->右键Q?gt;pȝ属性->高Q?gt;环境变量Q,在PATH中删除Q何以%
ORACLE_HOME%开始的V?
8.重启电脑?/font>


posted @ 2008-12-18 12:37 断点 阅读(68) | 评论 (0)

断点 2010-01-14 21:41 发表评论
]]>
վ֩ģ壺 ޵һҳ߹ۿ| ӰԺһ| һƵ| Ļѿ| Ļþۺ| Ʒ޳a߹ۿ| ƷƵһ| ¼ҳ| ֻˬִַ̼ | ԻȫƵۿ | ޳AVƬһ| պƷרվ| ޳avƬ߹ۿ| aƬ߹ۿ| þþƷҹɫav| պ伤Ƶ߲| þþþAVר| ߹ۿƵ| ޺ϼԭƷ| Ů18Ƶ| ޾Ʒŷ߹ۿ| þþþŮۺ| ˿ҺƵ| պƵ| պëƬ߹ۿ| ձһѸƵ | һŮ18ëƬ| պƷרӰ| ձ߹ۿƵ| ëƬa߹ۿ| ޹ۺϾƷĵһ| ѿһƬ| ԻȫƵ߹ۿ | Ƶ| eeussӰԺ92242| ۺͼƬС˵Ⱦþ| ձһѵӰ| ֻˬִƵ| ҹƷ| Ʒۺһ| ߹ۿƵվ|