小编Kam*_*ora的帖子

ORA-04061: 包体 "PACKAGE.NAME" 的现有状态已失效仍然存在

在我正在处理的 Oracle 数据库实例之一上,我在重新编译包时观察到与正常行为不同的行为。

通常,(如Oracle ORA-04068 中的常见错误:包的现有状态已被丢弃)在 PL/SQL 包重新编译后首次调用时会出现以下错误:

ERROR at line 1:
ORA-04068: existing state of packages has been discarded
ORA-04061: existing state of package body "PACKAGE.NAME" has been
invalidated
ORA-06508: PL/SQL: could not find program unit being called:
"PACKAGE.NAME"
ORA-06512: at line 1
Run Code Online (Sandbox Code Playgroud)

但是第二次调用应该可以正常工作,假设包当然没有错误。此行为以前在该环境中存在。与此同时,我们从 11g R2 升级到 12c R1,并启用了基于版本的重新定义。

现在我遇到的问题是我不断得到:

ORA-04061: existing state of package body "PACKAGE.NAME" has been
invalidated
ORA-06508: PL/SQL: could not find program unit being called:
"PACKAGE.NAME"
ORA-06512: at line 1
Run Code Online (Sandbox Code Playgroud)

所以不再有 ORA-04068,修复它的唯一方法是重新连接会话或手动调用 DBMS_SESSION.RESET_PACKAGE()(但我无法控制所有可能受到影响的代码),否则每次调用时问题仍然存在。 …

oracle plsql oracle11g oracle12c

4
推荐指数
1
解决办法
5653
查看次数

LPTSTR到int(c ++)

我在创建进程时传递一些数字参数(在VC++中)

我坚持将LPTSTR转换为int.

提前致谢.

c++ casting lptstr

3
推荐指数
1
解决办法
9205
查看次数

按连续时间间隔对SQL结果进行分组(oracle sql)

嗨,我在表格中有以下数据:

ID ----- startDate ---- endDate
5549 2008-05-01 4712-12-31
5567 2008-04-17 2008-04-30 1
5567 2008-05-01 2008-07-31 1
5567 2008- 09-01 4712-12-31 2

5569 2008-05-01 2008-08-31
5569 2008-09-01 4712-12-31
5589 2008-04-18 2008-04-30
5589 2008-05-01 4712- 12-31
5667 2008-05-01 4712-12-31
5828 2008-06-03 4712-12-31
5867 2008-06-03 4712-12-31
6167 2008-11-01 4712-12-31
6207 2008- 07-01 4712-12-31
6228 2008-07-01 4712-12-31
6267 2008-07-14 4712-12-31

我正在寻找一种方法来为每个id返回连续的时间间隔:

ID,min(startDate),max(endDate),

在粗体ID 5567的结果中有这样的东西

5567 2008-04-17 2008-07-31
5567 2008-09-01 4712-12-31

PL/SQL也是一个选项:)

谢谢,

sql oracle date continuous intervals

2
推荐指数
1
解决办法
8196
查看次数

将指针传递给使用exec()生成的进程

我想传递一个指针(我将一个带有mmap的数据存储在内存中的文件)到使用fork + exec生成的进程,但我仍然坚持如何将指针传递给exec()生成的进程?

UPDATE1:

感谢您的输入,我使用共享内存创建它与mmap与MAP_INHERIT标志:

使用mmap()函数创建的每个映射文件和共享内存区域都是通过成功调用任何exec函数而取消映射的,除了那些使用MAP_INHERIT选项映射的区域.使用MAP_INHERIT选项映射的区域仍保留在新过程映像中.

来源:http://www.uwm.edu/cgi-bin/IMT/wwwman?topic=exec(2)&msection=

UPDATE2:

这是家庭作业练习,但我想我必须停止思考指针并思考IPC本身.我想我会尝试在子进程中映射相同的文件.

短代码示例非常感谢.

在此先感谢您的帮助.

c++ linux gcc mmap exec

1
推荐指数
1
解决办法
2014
查看次数

在未启用测试模式的情况下签署Windows x64驱动程序

我想让我的驱动程序安装在x64 Windows上而无需切换到测试模式.你能告诉我如何实现这个目标吗?

谢谢

windows 64-bit drivers signing device-driver

1
推荐指数
1
解决办法
685
查看次数