image

编辑人: 沉寂于曾经

calendar2025-03-22

message5

visits449

请用C#语言调用Oracle的存储过程

Function GetList(keywords In varchar2

,p_info_list_Cursor out get_data_cur_type)

Return Number

As

Begin

open p_info_list_Cursor For

Select * from Test where Key=keywords;

Return 0;

End;

—————-

OracleConnection OracleConn = new OracleConnection(连接字符串);

OracleCommand cmd = new OracleCommand(“GetList”, OracleConn);

cmd.Parameters.AddRange(new OracleParameter[]

{

new OracleParameter(“keyWords”, OracleType.VarChar),

new OracleParameter(“ReturnValue”, OracleType.Number, 0,                  ParameterDirection.ReturnValue, true, 0, 0, “”,DataRowVersion.Default,                   Convert.DBNull),

new OracleParameter(“p_info_list_Cursor”, OracleType.Cursor, 2000,                  ParameterDirection.Output, true, 0, 0, “”,DataRowVersion.Default, Convert.DBNull)

});

cmd.Parameters[0].Value = ‘t07美女’;

cmd.Parameters[0].Direction = ParameterDirection.Input;

cmd.CommandType = CommandType.StoredProcedure;

OracleConn.Open()

OracleDataReader rdr=cmd.ExecuteReader();

//其他代码

        OracleConn.Close();

C#执行Oracle的参数过程,Sql 语句中使用”:” 表示参数。

在Sql Server 中我们可以按以下方式使用SQL 语句: “Insert into Table (Field1,field2) values(@Value1,@Value2) “, 然后我们再New 几个Paramter: new SqlParameter(“@Value1″,value)…

在查询字符串中使用@+字符 来描述参数,在SqlParameter中的参数名也要使用”@”符号。

而在Oracle中Sql 语句不能使用@符号, 以冒号”:”代替. 如:

——string Sql = “Insert into SEARCH_HISTORY(KEYWORDS,PHONE,RESULT_ID,SEARCH_TIME) values(:KEYWORDS,:PHONE,:RESULT_ID,:SEARCH_TIME)”;

OracleCommand cmd = new OracleCommand(Sql, OracleConn);

cmd.Parameters.AddRange(new OracleParameter[]{

new OracleParameter(“KEYWORDS”,OracleType.VarChar),

new OracleParameter(“PHONE”,OracleType.VarChar),

new OracleParameter(“RESULT_ID”,OracleType.Number),

new OracleParameter(“SEARCH_TIME”,OracleType.DateTime)

});

cmd.Parameters[0].Value = Keywords;

cmd.Parameters[1].Value = Phone;

cmd.Parameters[2].Value=2;

cmd.Parameters[3].Value = DateTime.Now;

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:请用C#语言调用Oracle的存储过程

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share