当前位置: 首页 > 知识库问答 >
问题:

如何将存储过程添加到Oracle数据库?

公羊信厚
2023-03-14

通过SQL Developer,我向Oracle数据库添加了一个新的存储过程。它不仅列在存储过程列表中(与其他每个SP一起),而且我可以在SQL Developer上轻松地执行它。

问题是我似乎无法从外部应用程序执行它。数据库链接到它,我可以调用所有其他存储过程,但不能调用我刚刚创建的存储过程。我收到的错误消息是:

ORA-06550:第1行,第7列:PLS-00201:标识符'SETDATE'必须声明ORA-06550:第1行,第7列:PL/SQL:语句被忽略

我已经从其他正常工作的SP复制了访问和权限配置,但它并没有真正改变任何东西。

共有1个答案

南宫喜
2023-03-14

在调试这类事情时,有一个好处:

SELECT owner, object_name, object_type
FROM   all_objects
WHERE  object_name IN( 'PROCEDURE_WHICH_WORKS', 'PROCEDURE_WHICH_DOESNT' )

如果SQL*Developer在错误的模式中创建了它,或者缺少同义词之类的东西,这应该很明显。如果都一样,那么您需要查看可能缺少的GRANT EXECUTE权限。

您确定SQL*Developer和您的外部程序是以完全相同的用户身份连接的吗?只是为了确保你能

SELECT user FROM dual
 类似资料:
  • 正如标题所说,当我将spring数据rest存储库添加到现有的spring数据rest webmvc项目中时,我开始在项目运行中出错。 我试图使用@ConvertBy(MyConverter.class)在实体中遵循此链接进行嵌入ID转换。然而,仅仅添加jar就会导致以下错误和大量o. s. c. i. s. PathMatchingResourcePatterResolver日志。

  • 我正在尝试编写一个可以返回结果的Java存储过程。我在Oracle网站上找到了这个文档,但是没有一个示例提供返回数据http://docs.oracle.com/cd/B19306_01/java.102/b14187/cheight.htm#CHDJJDGH 我创建了如下软件包: 包体如下 和 Java 代码 我使用SQLDeveloper通过以下指令调用我的过程 执行第二条指令时,我有以下错误

  • 问题内容: 编辑:虽然此问题中的某些答案可能会帮助其他人解决不同的问题,但该解决方案实际上与数据库连接上的自动提交功能中的某些错误有关! 执行查询后强制执行提交会使数据库反映更改,因此下面显示的代码是调用此类型存储过程的正确方法 我正在尝试在oracle数据库中调用一个简单的存储过程。 该过程如下所示: 我遇到麻烦的Java代码如下所示 我根本没有收到任何错误,但是没有反映出数据库更改。当我在SQ

  • 例如,我有一个员工列表。我想将这个列表作为一个表,并将它与另一个表连接起来。但是员工列表应该作为参数从C#传递。

  • 这是我的app.js 输入的数据用于分析图表,其中数据集必须在“标签”旁边显示一周中的每一天。我是AngularJS、ChartJS和JSON的新手,请建议 以下是请求数据的工作Plunkrhttp://plnkr.co/edit/Pfxc4JrKhv9SNlRUWqHi?p=preview

  • 我可以在Oracle中通过ODBC执行一批存储过程吗?存储过程具有我使用参数标记绑定的输入参数。 在SQLServer中,我有这个功能,在DB2中,我只能进行批处理插入/更新,但我不能从ODBC/C代码批处理存储过程。 Oracle似乎支持插入语句的批处理,如果使用JDBC,也可以批处理存储过程。 是否可以做同样的事情,但使用对存储过程和ODBC的调用? 谢谢