大家帮我看下下面的代码为什么跑不通?
using (OleDbConnection conn = new OleDbConnection(@"Provider=SQLOLEDB.1;Data Source=192.1.8.59;User ID=rfidimp;Password =rfidimp;Initial Catalog=Sales;Auto Translate=False"))
{
conn.Open();
Guid gid = Guid.NewGuid();
try
{
cmd = new OleDbCommand("Import_SP_AssetMaster_Patrol_Access");
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 6000;
cmd.Parameters.Add("@BatchId", OleDbType.VarChar, 36);
cmd.Parameters["@BatchId"].Value = gid;
cmd.Parameters.Add("@OutputMsg", OleDbType.VarChar,1020);
cmd.Parameters["@OutputMsg"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
this.label1.Text = cmd.Parameters["@OutputMsg"].Value.ToString();
}
catch
{
throw new Exception();
}
}
谢谢
OleDbCommand 在初始化的时候,没有挂上你的数据库连接对象conn 。
new OleDbCommand (“”, connection);
貌似只有reader的时候才需要open
因为reader是一个持续连接的过程
其他的操作都是将connection封装到了Command里面的
多个command对象与同一个连接关联,则必须显式创建并打开 Connection 对象,这样即可将 Connection 对象赋给对象变量
cmd 对象没有指定哪个OleDbConnection ,cmd.Connection = conn