我往Access数据库插入一行数据,却无法更新,在插入的过程中还出现了错误:验证服务器名称是否正确,服务器是否正在运行,验证您在使用有效的凭据进行连接。
可是在插入之前我对用户名进行了基于数据库的验证了的啊,怎么到了对数据库进行插入的时候就出现了错误了呢
求大神解答一下
这是我的后台代码:
protected void Button1_Click(object sender, EventArgs e)
{
string s = ConfigurationManager.ConnectionStrings["db2"].ToString();
OleDbConnection cn = new OleDbConnection(s);
cn.Open();
string sql = "insert into student1(name,pd,email,text) values('" + this.name.Text + "','" + this.TextBox1.Text + "','" + this.TextBox3.Text + "','" + this.TextBox4.Text + "')";
string strInsert = " INSERT INTO student1 ( name,pd,email,text) VALUES ( ";
strInsert += name.Text + ", '";
strInsert += TextBox1.Text + "', '";
strInsert +=TextBox2.Text + "', ";
strInsert +=TextBox4.Text + ")";
OleDbCommand cm = new OleDbCommand(strInsert, cn);
cm.ExecuteNonQuery();//错误出现在这一步
cn.Close();
}
Access数据库 插入出错
------解决方案--------------------
1:你首先查看一下s的值是你验证的连接字符串吗
2:错误提示是什么?
------解决方案--------------------
string strInsert = " INSERT INTO student1 ( name,pd,email,text) VALUES ( ";
strInsert += name.Text + ", '";
strInsert += TextBox1.Text + "', '";
strInsert +=TextBox2.Text + "', ";
strInsert +=TextBox4.Text + ")";
为什么不拿引号括起来?
在执行前,把SQL语句拿出来,去数据库执行下,看有问题没有。
------解决方案--------------------
lz 那你调试看一下 strInsert的值是什么,你检查一下哪里出现了问题。
理论上,这个处理这个问题很简单。
如果你处理不了的话,可以贴出来strInsert的值