小编Vad*_* K.的帖子

从C#和ODP.NET调用包中的函数的代码

我试图用ODP.NET编写C#代码来调用包中的函数.我收到以下两个错误:

ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to INSERT_FUNC'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

ORA-06550: line 1, column 7:
PLS-00221: 'INSERT_FUNC' is not a procedure or is undefined
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
Run Code Online (Sandbox Code Playgroud)

OracleCommand的设置如下:

cmd.CommandText = "PKG_NAME.INSERT_FUNC";
cmd.CommandType = CommandType.StoredProcedure;
Run Code Online (Sandbox Code Playgroud)
  1. 我应该如何将参数传递给下面的函数?
  2. 我需要添加ReturnValue参数吗?我见过很多论坛讨论了在对象上添加ReturnValue参数的必要性.OracleParameterOracleCommand

我将不胜感激任何建议.

CREATE OR REPLACE
PACKAGE BODY pkg_name IS
  FUNCTION insert_func (
      i_description IN  tableName.description%TYPE,
      i_theme       IN …
Run Code Online (Sandbox Code Playgroud)

c# oracle odp.net

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

无法通过OCI插入度数字符(°)

我正在使用CodeIgniter和OCI10驱动程序,我在使用绑定时将度数字符(°)插入数据库时​​遇到问题.但是错误消息为空

Message: Query ' INSERT INTO T1 (ID, TEXT) VALUES (1, 'text with °') ' was not executed; returned error: ''.
Run Code Online (Sandbox Code Playgroud)

当我使用SQL Relay或者使用SQL Developer插入manualy时,它很好用.此外,当我不使用绑定时,它被正确插入.

php oracle codeigniter

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

错误:此功能不适用于您正在使用的数据库

我在Codeigniter中使用oci8作为我的数据库驱动程序.使用以下调用存储过程的代码时给出了错误:

$this->db->call_function('update_letter_body', $body_letter, $insert_id);

Error : This feature is not available for the database you are using.
Run Code Online (Sandbox Code Playgroud)

应该怎么做才能使这项工作?

我试图设置一个超过4000个字符的值,这似乎不能直接查询,似乎codeigniter不支持调用oracle的函数.有什么建议 ?

php sql oracle codeigniter

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

Oracle JDK安装两个JRE?

前downvoting接近要求时这个问题,请看到这个问题是关于JDK 7中没有6,它具有不受任何重复的线程解决的第二个问题,"Q2"这个问题是关于4不仅2个的java.exe实例.谢谢!


我刚刚安装了Oracle的Java SE JDK(64位),这导致了以下目录布局,并且不知何故有两个 JRE:

C:\Program Files\Java\
    \jdk1.7.0_40
        \jre
    \jre7
Run Code Online (Sandbox Code Playgroud)

我现在是四个 java.exe可执行文件的自豪拥有者:

C:\Program Files\Java\jdk1.7.0_40\bin\java.exe
C:\Program Files\Java\jdk1.7.0_40\jre\bin\java.exe
C:\Program Files\Java\jre7\bin\java.exe
C:\Windows\System32\java.exe
Run Code Online (Sandbox Code Playgroud)

Q1:我应该将哪一个放入我的搜索路径来执行基于Java的应用程序?

Q2:我是否需要将无限制JCE策略文件放入我的搜索路径中相应JRE的安全子目录中,或者也放入所有其他目录中才能正常工作?

java jce java-7

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

如何通过执行JavaScript代码添加动态操作以重定向到另一个页面?

我在apex应用程序上有一些按钮,单击这些按钮即可执行自定义PL / SQL代码。它们的名称为APPLY(确认)和CHANGE(计数正确)。我需要它,以便当单击APPLY时,它重定向到同一页面(已实现PL / SQL代码),而当单击CHANGE时,它重定向到另一页面(已实现PL / SQL代码)。

我尝试通过“当按钮被按下时”和/或“条件类型:请求=表达式1”为“后处理”设置条件分支,表达式1的值等于“ APPLY”或“ CHANGE”。我无法(沮丧地)以这种方式产生想要的结果。APEX说提交的页面“请求”带有被单击的名称按钮(即,当单击“应用”时单击“应用”),但是我无法做到这一点。

我现在正在寻求为“应用”和“更改”(它们当前分别为“执行PL / SQL代码”和“提交页面”)的动态操作中添加一个“真实操作”,该操作执行一个Javascript代码,重定向到应用程序中所需的页面。

我认为该代码将利用这样的东西

"apex.navigation.redirect('f?p=928:35:4081364075246::NO:::');"
Run Code Online (Sandbox Code Playgroud)

在这种情况下,第35页是我希望“更改”按钮重定向到的页面。

我不像我想的那样精通JavaScript,因此,希望能对我的方法学提供任何帮助。

javascript oracle oracle-apex

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

Oracle 11g PHP oci_connect失败OCIEnvNlsCreate()

问题:Linux CentOS/Oracle 11g/InstantClient/PHP 5.3.3

错误:oci_connect():OCIEnvNlsCreate()失败.你的系统有问题 - 请检查是否设置了ORACLE_HOME和LD_LIBRARY_PATH并指向正确的目录

phpinfo()相关部分:

在此输入图像描述

在此输入图像描述

在此输入图像描述

如您所见,环境变量已正确设置,我可以在带有的页面上回显它们getenv().我还检查了读取权限,我可以从网页上读取这些目录中的所有文件.客户端库文件(我安装并重新安装两次)完全安装.这些库是可读和可加载的.

ldd没有显示任何错误.

这是来自php文件的调用:

$test = getenv('LD_LIBRARY_PATH')."  ".getenv('ORACLE_HOME');
$this->dbconn = oci_connect("myuser","mypassword", "localhost/orcl") or die("<b>Connection Failed: $test </b>").oci_error();
Run Code Online (Sandbox Code Playgroud)

我尝试了通过谷歌搜索找到的所有技巧,没有任何效果.
任何帮助表示赞赏.

php oracle

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

oci_fetch 与 oci_fetch_array

什么时候使用oci_fetchover有好处oci_fetch_arrayoci_fetch_array返回实际数组,但oci_fetch只是将获取的内存存储在其内部缓冲区的某处。

我应该了解两者之间的性能差异吗?

php oracle

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

Oracle ODAC 12c第3版32位测试版是否支持EF 6.x?

我在Visual Studio 2013中安装了Windows 8.1 64位.我安装了最新的Oracle ODAC 12c第3版32位测试版,声称支持EF 6.当我将ADO.NET实体框架添加到我的项目并选择我的Oracle时数据连接,它不允许我选择Entity Framework 6.0版本.它选择了Entity Framework 5.x,版本6.x显示为灰色.它表示"无法为您的数据连接找到与最新版本的实体框架兼容的实体框架数据库提供程序".这是为什么?

entity-framework odp.net

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

在LIKE运算符右侧的文字中查询参数

我试图使用ODP.NET运行查询.查询在LIKE运算符右侧的文字中有一个参数.这是我的代码:

string query = @"select col1,col2,col3 from table where name like '%:cus_name%'";
OracleParameter p1 = new OracleParameter();
p1.OracleDbType = OracleDbType.Char;
p1.Value = name;
p1.ParameterName = "cus_name";

OracleCommand sql = new OracleCommand(query, conn);
sql.Parameters.Add(p1);
OracleDataReader ora = null; 
Run Code Online (Sandbox Code Playgroud)

我收到"无效参数"错误.好心提醒.

oracle odp.net

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

ORA-19011:字符串缓冲区太小

我写了一个存储过程SP_DEMAND_QRY.如果表中只有几个匹配的行(5或6),则会生成正确的值Demand.但是如果该表包含更多匹配的行(> 6),那么当我执行它时会出现此错误:

Error:
-------
ORA-19011: Character string buffer too small
ORA-06512: at line 7
Run Code Online (Sandbox Code Playgroud)

程序是:

create or replace PROCEDURE SP_DEMAND_QRY 
    (
      USR IN VARCHAR2  
    , OUT_CLOB OUT CLOB  
    ) AS 
BEGIN
    SELECT to_clob(XMLElement("DEMANDS",XMLAgg(XMLElement("Demand"
               ,XMLElement("DemandId",dmnd_id)
               ,XMLElement("CreatedBy",CREATED_BY)
               ,XMLElement("CreatedDate",CREATED_DATE)
               ,XMLElement("Designation",DESIGNATION)
               ,XMLElement("Experience",EXPERIENCE)
               ,XMLElement("PrimarySkill",PRIMARY_SKILL)
               ,XMLElement("SecondarySkill",SECONDARY_SKILL)
               ,XMLElement("OtherSkill",OTHER_SKILL)
               ,XMLElement("RequiredDate",REQUIRED_DATE)
               ,XMLElement("ProbablePercentage",PROBABLE_PERCENTAGE)
               ,XMLElement("CriticalFlag",CRITICAL_FLG)
               ,XMLElement("AssignedFlag",ASSIGNED_FLG)
               ,XMLElement("AccountName",ACCOUNT_NAME)
               ,XMLElement("OpportunityName",OPTY_NAME)
               ,XMLElement("AccountPOC",ACCNT_POC)
               ,XMLElement("COE",COE)
               ,XMLElement("DemandType",DEMAND_TYPE)
               ,XMLElement("Location",LOC)
               ,XMLElement("ExpectedRole",EXPECTED_ROLE)
               ,XMLElement("ConfidenceFactor",CONFIDENCE_FACTOR)
               ,XMLElement("EndDate",END_DT)
               ,XMLElement("HiringSO",HIRING_SO)
               ,XMLElement("HiringSOId",HIRING_SO_ID)
               ,XMLElement("Comments",COMMENTS)
           )))) 
    into OUT_CLOB
    from demand s
    where s.CREATED_BY=usr;
    --DBMS_output.put_line(OUT_CLOB);
END SP_DEMAND_QRY;
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

oracle plsql

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

标签 统计

oracle ×8

php ×4

odp.net ×3

codeigniter ×2

c# ×1

entity-framework ×1

java ×1

java-7 ×1

javascript ×1

jce ×1

oracle-apex ×1

plsql ×1

sql ×1