我写了一个存储过程,将数据插入到一个临时表中
最后作了一个查询:
Select * from TempTableName where ComputerName=@ComputerName用Sqlcmd.ExecuteNonQuery() 和Sqlcmd.ExecuteReader 好像都不能
返回结果集。
最后作了一个查询:
Select * from TempTableName where ComputerName=@ComputerName用Sqlcmd.ExecuteNonQuery() 和Sqlcmd.ExecuteReader 好像都不能
返回结果集。
/// <summary>
/// 返回一个带参数的SqlDataReader对象
/// </summary>
/// <param name="sProc">
/// 参数是存储过程名称
/// </param>
/// <param name="nId">
/// 参数是取数的id
/// </param>
public SqlDataReader dr(string sProc,int nId)
{
//定义数据库的Connection
SqlConnection myConn = new SqlConnection(SQLHelper.DBCONNECTIONSTRING);
SqlCommand myCmd = new SqlCommand(); //定义数据库的Command
myCmd.Connection = myConn;
myCmd.CommandText = sProc;
myCmd.CommandType = CommandType.StoredProcedure;
myCmd.CommandTimeout = 10; //参数id
SqlParameter id = new SqlParameter("@id",SqlDbType.Int);
id.Value = nId;
myCmd.Parameters.Add(id);
SqlDataReader dr = null;
//执行过程
try
{
//打开数据库的连接
myConn.Open();
}
catch(SqlException ex)
{ }
try
{
dr = myCmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch(SqlException ex)
{ } //返回dr
return dr; }
Select * from TempTableName where ComputerName=@ComputerName
我需要的是返回这个结果集
后面还有复杂的业务要求 要对结果集进行操作
用DataReader的话 实现起来不了