
正文
oracle查询到某一行卡住,oracle查询指定行数
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
用PLSQL查询oracle数据库中某个表,查询结果如果包含两个字段时就会卡...
PL/SQL Developer对CLOB这样的数据字段支持不是很好,是它自身的问题,与Oracle数据库无关,你用Sqlplus进去应该不会出现这样的问题。
如果你的表是经常改动的,可能是因为HWM太高了,而且HWM下有很多的空块,所以会导致两个查询出现差异,解决方法就是shrink 一下表的空间,然后重新收集下表的统计信息,如果不是这种原因随时hi我。
通过PL/SQL Developer登入到数据库的管理界面。在developer的主界面左侧,找到tables,并展开。在展开的表中,找到要修改的表,并在其上单击鼠标右键,选择Edit。
相关问答
Q1: Oracle查询挂死
1、含有blob字段的表查询特别慢,如果这个表的longblob类型存储的数据很多的话,则对这个表的查询就特别慢,即使不查询longblob字段也是如此。你这种情况可能第7条数据字段blob里的数据量很大。所以卡住了。
2、Status: 状态,active表示被死锁Machine: 死锁语句所在的机器。Program: 产生死锁的语句主要来自哪个应用程序。2)用dba用户执行以下语句,可以查看到被死锁的语句。
3、select status from v$instance;如果报错不能执行(用dba用户,或者有查看$视图权限的用户),那么就是没启动。如果结果为nomount,那么就是仅仅搭载了初始文件,分配了内存,但是还没有加载控制文件。mount就是加载了控制文件。
4、我遇到同样的情况,是由于我当前使用的用户权限不足导致的(当前登录的账户没有DBMS_EXPORT_EXTENSION的权限),调整用户权限后问题解决。
Q2: oracle怎么让查询卡住
1、第二次查询在PLSQL里面或者在程序里面查询都会卡住,而且这种情况还是偶发的,有时候不修改任何条件连续查询就一直很快。看看是不是有并发什么的。这种情况确实比较难判断。
2、实例分析:1,查询正在运行的Job,通过查询有两个,和进程占用较多的是两个ORACLE进程符合。
3、含有blob字段的表查询特别慢,如果这个表的longblob类型存储的数据很多的话,则对这个表的查询就特别慢,即使不查询longblob字段也是如此。你这种情况可能第7条数据字段blob里的数据量很大。所以卡住了。
4、怀疑有可能是你操作数据库用户这张表对其他用户进行授权了,被授权的用户进行删除,如果限制了username可能会查不到。
5、password=密码 后一种:Data Source=服务名;user id=用户名;password=密码 我还是几年前做过,现在忘差不多了,不知道对不对,你在网上查一下“ADO连接ORACLE”应该有很多东东,多试几次就行了,应该没什么别的问题。
Q3: Ado连接的Oracle,在Update或者Execute时程序卡住不动了?
_ConnectionPtr是智能指针,在析构时会自动释放。你这里pConn.Release(); 释放了,导致后面会重复释放出错。而且你还没关闭连接。
这个是监听没有配置或者没有启动报错IP错误。 在设置URL时错误,例如:jdbc:oracle:thin:@19160.36:1521:sharp 数据库服务器不正确:ping 服务器IP是否正确。不正确,将URL更改为正确 端口号错误:一般不会错误。
用SQL Developer执行后有没有点提交,也许可以换个工具试试看。
我猜也许是你的jre环境有问题,查一下配套的jre,先进行安装。另外安装oracle,setup时会进行环境自检,时间比较长,我猜这时候还在进行中,只是没有显示出来。
安装数据库客户端默认管理员是不支持ado组件的,选择自定义,我把所有组件都选择上。
loop fetch cur_temp into vc_prcname, vc_prctype;exit when cur_temp%notfound;vc_sql2 := 。。
Q4: oracle查询同一条语句,第一次查询很快,第二次查询就几乎卡死
大多数情况下,用oracle, 第一次查询慢, 第二次查询肯定比第二次查询快对吧,但对于这种情况,第一次查询快, 以后查询慢。
应该是与执行计划有关,Oracle执行一个语句要先进行解析分解执行,这需要时间,并把相关结果存储,再次执行相同语句时就不需要进行解析,从而缩段时间。
这种情况有很多可能性,首先,你的服务器的负载情况会影响到你的数据读取速度的,如果数据库服务器执行的进程过多,会导致查询速度下降很多。
这时正常的,oracle会自动统计你查询的内容,如果发现频率高就提升其优先级,长期不用就降低优先级。一个新建连接开始会比较慢,但操作几次后就会明显变快。另外偶尔也会有恰好满足你查询条件的记录就在搜索队列靠前位置的可能。
Q5: java调用oracle存储过程到execute()就卡住了?debug看了一下就是走到ex...
1、从报错看是字符串索引超出范围,需要看存储过程的执行结果。可以在sqlplus中执行exec PKG_I_DFXM.PRC_I_NBBPCF(你的参数)看下结果。
2、connection不知道你是采用什么方式获取的,如果不是从连接池里取,你每connection.close()一次,下次get的时候会重新建立实际物理链接,这样会相当耗时。
3、这个调用存储过程的Java方法是mapping的一个好例子。Mapping是对一个集上的操作进行抽象的方法。不是在这个过程上返回一个集,我们可以把操作传送进去执行。本例中,操作就是把ResultSet打印到一个输出流。
4、使用oracle的sql语句来创建:e.g. 使用create or replace and compile java source named name as 后边跟上java源程序。要求类的方法必须是public static的,才能用于存储过程。
5、)存储过程创建有语法错误,编译应该不能通过。明显的 update students set STUDENT_AGE = 10 后面少了分号(;),因此调用不成功没有什么奇怪的。
关于oracle查询到某一行卡住和oracle查询指定行数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






