c#中老提示insert into语法错误,求高手指点!

代码如下:privatevoidreg_Click(objectsender,EventArgse){if(userNameTbx.Text==""){MessageBo... 代码如下:
private void reg_Click(object sender, EventArgs e)
{

if (userNameTbx.Text == "")
{
MessageBox.Show("用户名不能为空");
}
else
if (pswTbx.Text == "")
{
MessageBox.Show("密码不能为空");
}
else
if ((keyTbx.Text == "") || (pswTbx.Text != keyTbx.Text))
{
MessageBox.Show("二次输入的密码不一致!");
}

string conStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\1000.mdb";
OleDbConnection con = new OleDbConnection(conStr);
string str = "insert into users values('"+userNameTbx.Text+"','"+pswTbx.Text+ "','" +keyTbx.Text+ "',)";
OleDbCommand cm = new OleDbCommand(str, con);
con.Open();
cm.ExecuteNonQuery();
con.Close();

}
展开
 我来答
syht2000
高粉答主

2013-05-14 · 关注我不会让你失望
知道大有可为答主
回答量:3万
采纳率:79%
帮助的人:1.5亿
展开全部
string str = 这一行最后的那个+keyTbx.Text+ "',)";
最后的,是多余的,改成+keyTbx.Text+ "')";
这种简单问题实际上没必要问,你自己在OleDbConnection con这一行上下断点,然后中断的时候看一下str的值就知道了。

另外,你的users中是不是只有这三个字段,如果不是,你需要在users后指明字段名,比如是
string str = "insert into users(字段一,字段2,字段3) values('
cww3080
2013-05-14 · 超过11用户采纳过TA的回答
知道答主
回答量:26
采纳率:0%
帮助的人:31.2万
展开全部
insert into users(userName, psw, key) values('' , '' , '')
可能字段没有全部插入数据,所以要在表后加上要写入的字段名称
如果不是的话,你values()括号里面最后多了一个","符号
追问
string str = "insert into users(userName,userPassword,key) values('"+userNameTbx.Text+"','"+pswTbx.Text+ "','" +keyTbx.Text+ "')";
OleDbCommand cm = new OleDbCommand(str, con);
con.Open();
cm.ExecuteNonQuery();
con.Close();完善后就成上面的语句,但还是显示语法错误,郁闷了,初学,望见谅,谢谢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式