64,266
社区成员
发帖
与我相关
我的任务
分享
ResultSet* ExecuteSQL(string strProc)
{
Statement *stmt = con->createStatement();
try
{
stmt->setSQL(strProc);
stmt->registerOutParam(1,OCCICURSOR);
stmt->setString(2,"");//------------------------------1
stmt->setInt(3,""); //------------------------------2
stmt->execute();
....//省略
}
....//省略
}
/// <summary>
/// 返回SqlDataReader的存储过程,一定不要忘记关闭DataReader对象
/// </summary>
/// <param name="procName">存储过程名</param>
/// <param name="coll">存储过程参数</param>
/// <returns>SqlDataReader</returns>
public static DataTable ExecProcDataTable(string procName, SqlParameter[] coll)
{
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter();
try
{
OpenConnection();
m_cmd.CommandType = CommandType.StoredProcedure;
m_cmd.CommandText = procName;
for (int i = 0; i < coll.Length; i++)
m_cmd.Parameters.Add(coll[i]);
sda.SelectCommand = m_cmd;
sda.Fill(dt);
}
catch (Exception e)
{
throw new Exception(e.Message);
}
finally
{
CloseConnection();
m_cmd.Parameters.Clear();
}
return dt;
}