Ⅰ delphi adoquery进度条
我不知道你所谓的“Oracle无效对象”是神马玩意,但显示ADOQuery进度是有办法的。
1、将ADOQuery的ExcuteOption属性中的eoAsyncFetch设为True,使其能够触发异步消息。
2、在ADOQuery的OnFetchProgress事件里处理进度,进度会显示在窗体标题上:
procere TForm1.ADOQuery1FetchProgress(DataSet: TCustomADODataSet;
Progress, MaxProgress: Integer; var EventStatus: TEventStatus);
begin
Self.Caption := '完成百分比: ' + IntToStr(Trunc(Progress / MaxProgress * 100)) + '% ';
Application.ProcessMessages;
end;
Ⅱ 如何重编译ORACLE数据库的无效对象
一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没法,只好重启数据库。现在提供一种方法解决这种问题,那就是在ORACLE中杀不掉的,在OS一级再杀。1.下面的语句用来查询哪些对象被锁:selectobject_name,machine,s.sid,s.serial#fromv$locked_objectl,dba_objectso,v$sessionswherel.object_id=o.object_idandl.session_id=s.sid;2.下面的语句用来杀死一个进程:altersystemkillsession'24,111';(其中24,111分别是上面查询出的sid,serial#)【注】以上两步,可以通过Oracle的管理控制台来执行。3.如果利用上面的命令杀死一个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os一级再杀死相应的进程(线程),首先执行下面的语句获得进程(线程)号:selectspid,osuser,s.programfromv$sessions,v$processpwheres.paddr=p.addrands.sid=24(24是上面的sid)4.在OS上杀死这个进程(线程):1)在unix上,用root身份执行命令:#kill-912345(即第3步查询出的spid)2)在windows(unix也适用)用orakill杀死线程,orakill是oracle提供的一个可执行命令,语法为:orakillsidthread其中:sid:表示要杀死的进程属于的实例名thread:是要杀掉的线程号,即第3步查询出的spid。例:c:>orakillorcl12345
Ⅲ 如何重新编译PLSQL中的无效对象或者指定的对象
如何重新编译PLSQL中的无效对象或者指定的对象
打开那个对象(一般都是打叉的过程或者包体,点一下左上角的齿轮执行,编译通过的话,叉叉会消失)。有一个批量编译的(我看别人操作过,没看清界面在哪里,所以我只能手动逐个编译)
Ⅳ plsql里面的编译无效对象是什么意思
Oracle中出现无效对象,就是因为在创建函数或存储过程等,里边的内容书写不正确导致。如果要重新编译,需要先修正错误,然后编译。
工具:Oracle 10g、PL/SQL
步骤:
1、在PL/SQL中打开出现编译错误的函数或存储过程,这里以存储过程为例。
2、右键点击该存储过程,选择“编辑”。
3、根据错误提示,找到错误,并修改错误。
4、改正错误后,点击左上方的“齿轮”状按钮。
5、运行成功后,则该存储过程就会变为编译成功的状态。
Ⅳ oracle 存储过程无法编译,删除,一旦执行该操作PLSQL就会出现未响应
存在无效对象,用plsql菜单中的工具先“编译无效对象”