执行之后报错:Must declare the scalar variable "@FileName".
请各位高手来看看是哪里错了 public static int InsertData(byte[] bytes, string fileName )
{ string sql = "insert into dbo.FileInfo(FileName,FileInfo) values(@FileName,@FileInfo)";
OleDbParameter[] ps = { new OleDbParameter("@FileName", fileName), new OleDbParameter("@FileInfo", bytes) };
int result = CDBHelper.ExecuteSql(strConn, sql,ps);
return result;
}
public static int ExecuteSql(string ConnectionString,string SQLString, params OleDbParameter[] cmdParms)
{
using (OleDbConnection connection = new OleDbConnection(ConnectionString))
{
using (OleDbCommand cmd = new OleDbCommand())
{
try
{
PrepareCommand(cmd, connection, null, SQLString, cmdParms);
int rows = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return rows;
}
catch (OleDbException E)
{
throw new Exception(E.Message);
}
}
}
}
private static void PrepareCommand(OleDbCommand cmd, OleDbConnection conn, OleDbTransaction trans, string cmdText, OleDbParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open();
cmd.Connection = conn;
cmd.CommandText = cmdText;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = CommandType.Text;//cmdType;
if (cmdParms != null)
{
foreach (OleDbParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
请各位高手来看看是哪里错了 public static int InsertData(byte[] bytes, string fileName )
{ string sql = "insert into dbo.FileInfo(FileName,FileInfo) values(@FileName,@FileInfo)";
OleDbParameter[] ps = { new OleDbParameter("@FileName", fileName), new OleDbParameter("@FileInfo", bytes) };
int result = CDBHelper.ExecuteSql(strConn, sql,ps);
return result;
}
public static int ExecuteSql(string ConnectionString,string SQLString, params OleDbParameter[] cmdParms)
{
using (OleDbConnection connection = new OleDbConnection(ConnectionString))
{
using (OleDbCommand cmd = new OleDbCommand())
{
try
{
PrepareCommand(cmd, connection, null, SQLString, cmdParms);
int rows = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return rows;
}
catch (OleDbException E)
{
throw new Exception(E.Message);
}
}
}
}
private static void PrepareCommand(OleDbCommand cmd, OleDbConnection conn, OleDbTransaction trans, string cmdText, OleDbParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open();
cmd.Connection = conn;
cmd.CommandText = cmdText;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = CommandType.Text;//cmdType;
if (cmdParms != null)
{
foreach (OleDbParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
OleDbCommand command = new OleDbCommand(sql, connection);
command.Parameters.Add("?", OleDbType., 60).Value = "";
或
OleDbParameter[] parameters = {
new OleDbParameter("@FileName", OleDbType.LongVarWChar,60),
};
parameters[0].Value = "";