System.Data.OleDb.OleDbConnection con = new OleDbConnection(OleDB.ConnectionString);
con.Open();
System.Data.OleDb.OleDbCommand com = new OleDbCommand("delete ChatHtmlTemplet where id = @ID",con);
com.CommandType = CommandType.Text;
com.Parameters.Add("@ID",_ID);
com.ExecuteNonQuery();
con.Close();--------------------
错误提示:必须声明变量 '@ID'。 我晕了,是怎么回事啊。大家说说看。
con.Open();
System.Data.OleDb.OleDbCommand com = new OleDbCommand("delete ChatHtmlTemplet where id = @ID",con);
com.CommandType = CommandType.Text;
com.Parameters.Add("@ID",_ID);
com.ExecuteNonQuery();
con.Close();--------------------
错误提示:必须声明变量 '@ID'。 我晕了,是怎么回事啊。大家说说看。
System.Data.OleDb.OleDbCommand com = new OleDbCommand("delete ChatHtmlTemplet where id = @ID",con);
OleDbParameter parm1=new OleDbParameter("@ID",SqlDbType.Int);
parm1.Value=Convert.ToInt32(_ID);
com.Parameters.Add(parm1);
con.Open();
com.ExecuteNonQuery();
con.Close();
con.Open();
System.Data.OleDb.OleDbCommand com = new OleDbCommand("delete ChatHtmlTemplet where id = @ID",con);
com.Parameters.Add(new Parameter("@ID",SqlDbType.Int,4);
com.Parameters["@ID"].value=Convert.toInt32(_ID);
com.Open();
com.ExecuteNonQuery();
con.Close();
delete from ChatHtmlTemplet where id = @ID
From 呢???而且操作Access的时候一般应该这样写:
Delect * From TableName Where ID=@ID
Or
Delect * From TableName Where ID=?
System.Data.OleDb.OleDbCommand com = new OleDbCommand("delete from ChatHtmlTemplet where id = ?",con);
OleDbParameter parm1=new OleDbParameter();
parm1 = com.Parameters.Add("?", OleDbType.Integer);
parm1.Value=Convert.ToInt32(_ID);
con.Open();
com.ExecuteNonQuery();
con.Close();改成这样,把@ID改为?
这个方法在MSSQL中是非法的。singlepine(小山) :还有这么奇怪的用法?如果是多参数怎么用?
如果不是Int型的,肯定不可以的.
比如,如果是varchar(50)
你必须这样
delete * from tablename where id = "33"而由于Access传参数是按地址传的.
所以,可以用?代替@参数名.
但是必须保证?,?和数据库字段保持一致的。
System.Data.OleDb.OleDbCommand com = new OleDbCommand("delete from ChatHtmlTemplet where id = ? or name = ?",con);
com.Parameters.Add("?",_ID);
com.Parameters.Add("?","333");
con.Open();
com.ExecuteNonQuery();
con.Close();
OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0;Data Source="+Server.MapPath("Data.Mdb"));
conn.Open();
OleDbCommand cmd=new OleDbCommand("Insert Into Test(1,2) Values(?,?)",conn);
cmd.Parameters.Add("?",this.TextBox1.Text);
cmd.Parameters.Add("?",this.TextBox2.Text);
cmd.ExecuteNonQuery();
conn.Close();