c#操作access插入失败..急.
string strConn =@ " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source=c:\db.mdb; ";
OleDbConnection myConn = new OleDbConnection(strConn);
myConn.Open();
string strInsert = " INSERT INTO user ( 用户名 , 密码 , 联系地址 , Email地址 , 手机 ) VALUES ( ";
strInsert += this.tbusername .Text + ", ' ";
strInsert += this.tbpwd1 .Text + " ', ' ";
strInsert += this.tbaddress .Text + " ', ";
strInsert += this.tbemail .Text + ", ";
strInsert += this.tbphone .Text + ") ";
OleDbCommand inst = new OleDbCommand(strInsert, myConn);
inst.ExecuteNonQuery();
myConn.Close();
------解决方案--------------------tbusername 前面少了 '号
如果还不行,就有可能是权限问题。
------解决方案--------------------慕白兄正解
好象在遇到使用系统保留字的时候需要在表名和字段名上加[]
------解决方案--------------------tbusername 前面少了 '号
------解决方案--------------------hou面少了 '号
------解决方案--------------------access 不能被其他文件打开,
用完的datareader要关闭。
------解决方案--------------------你最好将各字段类型说一下,如果全是字符型的你少了几个单引号,代码应为:
string strConn =@ " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source=c:\db.mdb; ";
OleDbConnection myConn = new OleDbConnection(strConn);
myConn.Open();
string strInsert = " INSERT INTO user ( 用户名 , 密码 , 联系地址 , Email地址 , 手机 ) VALUES ( ' ";
strInsert += this.tbusername .Text + " ', ' ";
strInsert += this.tbpwd1 .Text + " ', ' ";
strInsert += this.tbaddress .Text + " ', ' ";
strInsert += this.tbemail .Text + " ', ' ";
strInsert += this.tbphone .Text + " ') ";
OleDbCommand inst = new OleDbCommand(strInsert, myConn);
inst.ExecuteNonQuery();
myConn.Close();
------解决方案--------------------user 是不是也应该改成 [user]