C# Oracle CLR:必须定义标识符“DBMS_CLR” 我已经为Visual Studio ODTwithODAC1120320\u 32bit安装了Oracle开发工具 我已经运行了数据库配置助手来启用oracle数据库上的.NET层

C# Oracle CLR:必须定义标识符“DBMS_CLR” 我已经为Visual Studio ODTwithODAC1120320\u 32bit安装了Oracle开发工具 我已经运行了数据库配置助手来启用oracle数据库上的.NET层,c#,oracle,visual-studio,clr,windows-7-x64,C#,Oracle,Visual Studio,Clr,Windows 7 X64,然而,当我尝试部署一个简单的函数时,它无法编译,并出现错误 C:\...\SQL Developer\Untitled2.sql Error(5,5): PLS-00201: identifier 'DBMS_CLR' must be declared Error(5,5): PL/SQL: Statement ignored Error(6,5): PL/SQL: Statement ignored Error(6,33): PLS-00201: identif

然而,当我尝试部署一个简单的函数时,它无法编译,并出现错误

C:\...\SQL Developer\Untitled2.sql
    Error(5,5): PLS-00201: identifier 'DBMS_CLR' must be declared
    Error(5,5): PL/SQL: Statement ignored
    Error(6,5): PL/SQL: Statement ignored
    Error(6,33): PLS-00201: identifier 'DBMS_CLR' must be declared
    Error(7,5): PL/SQL: Statement ignored
    Error(7,12): PLS-00201: identifier 'DBMS_CLR' must be declared
编译后的函数,它只创建一个连接并将输入的数字作为输出返回

CREATE  OR REPLACE LIBRARY "PROJECT12_DLL" AS '$ORACLE_HOME\bin\clr\Project12.dll';
/
CREATE OR REPLACE FUNCTION GETNUMBER wrapped 
a000000
369
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
8
14a 138
Zi7LUdjyS4D8cjiW2nS3rf/pLZwwg0zQNW0VfC8CAP7qXStE8/w9Xuy8PFb6oFkbDrDC1e3j
Zk34tXgr6lXtdGr+HE4Zd/dftKfDHWt9DKWOvIwrjachIBIMrDl6XnT0WbVLJcw8YQkbZdYa
0Kh//cLT8GNZJp7U3mCDP6HgYyjtUjR8y+za14OE3TiB6rLIjmWX/mBOnMneXSAUftbdmifX
ub8cMk85fnBRyoj8xsbrNIYzHWAYAQ+tnHJcGZCu+Di/YqeZx840cRj99kDVECydQMf5HLD2
XzUOJ43wC5sdUklUwA==

/
当我在谷歌上搜索PLS-00201时,它提到:

未正确安装和配置.NET的Oracle数据库扩展 尚未使用.NET的Oracle部署向导正确部署.NET存储过程。 我想我已经做了两件事:

我已经运行了数据库配置代理来配置.Net层,没有太多可能的配置,只是一个勾选框和一个下拉列表,供模式安装 我已经从.net部署了dll,还尝试了上面生成的脚本
有人知道我还能做些什么吗?在windows-7-x64计算机上本地运行oracle。谢谢。

我似乎有回答自己问题的坏习惯,无论如何,如果其他人碰到这个问题,我解决了DBMS_CLR上的编译器错误,必须通过执行以下命令来声明:

GRANT EXECUTE ON DBMS_CLR TO public;
GRANT EXECUTE ON DBMS_CLRTYPE TO public;
GRANT EXECUTE ON DBMS_CLRPARAMTABLE TO public;

DBMS_CLR似乎没有正确部署。请参见以下问题:。您是否运行了%ORACLE_HOME%\RDBMS\ADMIN\dbmscr.plb脚本?您好@Vincent Malgrat,是的,我已经尝试过了,没有任何更改,不断得到错误dbms_clr必须在我尝试部署函数时声明。