【问题标题】:How can I call an Oracle stored procedure with object parameter for input in c#?如何在 c# 中调用带有对象参数的 Oracle 存储过程以进行输入?
【发布时间】:2015-09-21 12:27:58
【问题描述】:

我是 Oracle 的初学者,我已经在 Oracle 中编写了这个对象:

create or replace 
TYPE behzadtype AS OBJECT 
( /* TODO enter attribute and method declarations here */ 
  SESSIONID Number,
  myID Number

)

还有这个存储过程:

create or replace 
PROCEDURE PROCEDURE2(temp in behzadtype) AS 
BEGIN
   insert into beh values(temp.myID,'behiheib');
END PROCEDURE2;

我的问题:如何从 C# 调用这个存储过程?谢谢。

【问题讨论】:

    标签: c# oracle stored-procedures


    【解决方案1】:

    通过在解决方案资源管理器中右键单击您的项目名称来添加引用>添加引用>.Net,然后添加命名空间。

    using System.Data.OracleClient;
    using System.Data;
    

    然后将此代码粘贴到事件处理程序中

      string str = "User ID=username;Password=password;Data Source=Test";
        OracleConnection conn = new OracleConnection(str);
        OracleCommand cmd = new OracleCommand("PROCEDURE2", conn);
        cmd.CommandType = CommandType.StoredProcedure;
        --Ad parameter list--
        // cmd.Parameters.Add("parameter_name", "varchar2").Value = value;
        ....
        conn.Open();
        cmd.ExecuteNonQuery();
    

    它完成了。

    【讨论】:

    • 嗨阿里,parameter_name 中写什么?对象名称?
    • 嗨贝扎德。写这样的:cmd.Parameters.Add("temp", "behzadtype").Value = value
    猜你喜欢
    • 2019-10-29
    • 1970-01-01
    • 2011-07-19
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 2011-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多