问题1
核对了表结构,没错。
在ACCESS.exe中执行下面的SQL语句没错。参数个数没错
但在网站程序中却报错,找不到原因.public static ZaiXian AddUser(ZaiXian zai)
{
ZaiXian xian = null;
OleDbConnection conn = DBHelper.conn();
string sql = "insert into ZaiXian(ZhuT, Massages, Names,LTime,Phones,Emails) values(@ZhuT, @Massages, @Names,@LTime,@Phons,@Emails)";
OleDbCommand cmd = new OleDbCommand(sql, conn);
cmd.Parameters.AddWithValue("@ZhuT", zai.ZhuT);
cmd.Parameters.AddWithValue("@Massages", zai.Massages);
cmd.Parameters.AddWithValue("@Names", zai.Names);
cmd.Parameters.AddWithValue("@LTime", zai.LTime);
cmd.Parameters.AddWithValue("@Phons", zai.Phons);
cmd.Parameters.AddWithValue("@Emails", zai.Emails);
conn.Open();
cmd.ExecuteScalar();
conn.Close();
return xian;
}
我对比了其他类的SQL语句,接下来这个是没有错的。
string sql = "insert into YanShiInfos(InfosBti, InfosNr, InfosTime) values(@InfosBti, @InfosNr, @InfosTime)";
---------------------------------------------
问题2:
服务器错误:在 SQL 语句结尾之后找到字符搞死人了,用SQL根本没这些问题,下午就要给客户了
核对了表结构,没错。
在ACCESS.exe中执行下面的SQL语句没错。参数个数没错
但在网站程序中却报错,找不到原因.public static ZaiXian AddUser(ZaiXian zai)
{
ZaiXian xian = null;
OleDbConnection conn = DBHelper.conn();
string sql = "insert into ZaiXian(ZhuT, Massages, Names,LTime,Phones,Emails) values(@ZhuT, @Massages, @Names,@LTime,@Phons,@Emails)";
OleDbCommand cmd = new OleDbCommand(sql, conn);
cmd.Parameters.AddWithValue("@ZhuT", zai.ZhuT);
cmd.Parameters.AddWithValue("@Massages", zai.Massages);
cmd.Parameters.AddWithValue("@Names", zai.Names);
cmd.Parameters.AddWithValue("@LTime", zai.LTime);
cmd.Parameters.AddWithValue("@Phons", zai.Phons);
cmd.Parameters.AddWithValue("@Emails", zai.Emails);
conn.Open();
cmd.ExecuteScalar();
conn.Close();
return xian;
}
我对比了其他类的SQL语句,接下来这个是没有错的。
string sql = "insert into YanShiInfos(InfosBti, InfosNr, InfosTime) values(@InfosBti, @InfosNr, @InfosTime)";
---------------------------------------------
问题2:
服务器错误:在 SQL 语句结尾之后找到字符搞死人了,用SQL根本没这些问题,下午就要给客户了
OleDbCommand cmd = new OleDbCommand(sql, conn);
OleDbParameter[] parm = new OleDbParameter[1];//这里记得多少个参数就写几
parm[0] = new OleDbParameter("ZhuT", OleDbType.VarChar);
parm[0].Value = zai.ZhuT;不知道类型会不会错了,或者用到了关键字
也就是一次只能执行一个SQL语句...
问题2:ACCESS只能一次执行一个SQL语句
一次只能执行一条SQL。
多条SQL需要多次执行
foreach(string s in lst)
{
if (s.Trim().Length > 1)
{
cmd.CommandText = s;
cmd.ExecuteNonQuery();
}
}
cmd.Transaction.Commit();
你的ZaiXian表里面是不是只有那6个字段?
如果不是的话,要补全,没有值的就用null
关于日期值的问题,可以参考这个
http://dotnet.aspx.cc/article/27c0d578-e4df-44dc-91a7-54ba10a53d1f/read.aspx