日期:2014-05-18  浏览次数:20628 次

一条数据库插入语句提示不匹配的问题?
Session[ "ip "]   =   Request.ServerVariables[ "Remote_Addr "];
                                Session[ "browser "]   =   Request.Browser.Browser;
                                Session[ "come_time "]   =   DateTime.Now;
                                Session[ "os "]   =   Request.Browser.Platform;
                                Session[ "left_time "]   =   DateTime.Now;
                                string   strSql   =   "insert   into   information(ip,come_time,left_time,browser,os)   values( ' "   +   Session[ "ip "].ToString()   +   " ', ' "   +   Session[ "come_time "].ToString()   +   " ', ' "   +   Session[ "left_time "].ToString()   +   " ', ' "   +   Session[ "browser "].ToString()   +   " ', ' "   +   Session[ "os "].ToString()   +   " ') ";
                                ExcuteSql(strSql);
其中ExcuteSql(strSql)函数错误提示语句如下:
{
...
dbComm.ExecuteNonQuery();//   错误所在行
}
错误是   “异常详细信息:   System.Data.OleDb.OleDbException:   标准表达式中数据类型不匹配。”

------解决方案--------------------
检查一下sql 数值类型的不要加 ' 加, 广本类型的一定要加 '
------解决方案--------------------
你可以把SQL,COPY出来,放到查询分析器里试验一下,就知道哪里错了
------解决方案--------------------
'2007-5-29 11:24:53 ' 就 可以了 不要 星期二
datatime 是时间日期型 不是星期型
------解决方案--------------------
这和你的本地时间设置有关系