.net insert语句出错

来源:百度知道 编辑:UC知道 时间:2024/05/12 01:34:55
void enter (object sender ,EventArgs e)
{
OleDbConnection conn=new OleDbConnection();
conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+
Server.MapPath ("mydata.mdb");
conn.Open();
string sql;
sql="Insert Into user(id,name,password1,year,month,day) Values("+id.Text+","+name.Text+","+password1.Text+","+year.Text+","+month.Text+","+day.Text+")";
OleDbDataAdapter da= new OleDbDataAdapter(sql,conn);
DataSet ds = new DataSet();
da.Fill(ds,"mydata");
conn.Close();
Session["id"] = id.Text;
}

加'也不行

我常用这种格式,这样很容易发现问题,希望对你有帮助
string sql=string.Formart("Insert Into user(id,name,password1,year,month,day) Values ('{0}','{1}','{2}','{3}','{4}','{5}')",id.Text,name.Text,password1.Text,year.Text,month.Text,day.Text);

是不是你的“password1”有问题,仔细看一下

sql="Insert Into user(id,name,password1,year,month,day) Values('"+id.Text+'",'"+name.Text+"','"+password1.Text+"','"+year.Text+"','"+month.Text+"','"+day.Text+"')";

再不行,就看不出来错误了。

加了单引号还错,那估计就是你这个Sql语句里的各项与表里的各个字段没对上.建议你把这个Sql语句复制到查询分析器里,再把单引号里的"+id.Text+"等内容改成对应表里的真实数据,再执行下.