C#无法添加数据到access!

以下是我在添加按钮单击事件的程序,当输入数字后一点添加按钮弹出了成功信息框,但一打开数据库的表发现里面还是空的,没有记录!也就是没加进去,这是怎么回事?数据表只有一个字段... 以下是我在添加按钮单击事件的程序,当输入数字后一点添加按钮弹出了成功信息框,但一打开数据库的表发现里面还是空的,没有记录!也就是没加进去,这是怎么回事? 数据表只有一个字段,还是数值型的,已经够简化的了,提示信息是成功,可实际就是加不进去!
private void button1_Click(object sender, EventArgs e)
{
string strcon = "Provider=Microsoft.Jet.OleDb.4.0;data source=mydbtest.mdb";
OleDbConnection con = new OleDbConnection(strcon);
string sql = "insert into thenumbertest(thenumber) values("+Convert.ToInt32(this.textBox1.Text) + ")";
OleDbCommand comm = new OleDbCommand(sql, con);
try
{
con.Open();
if (comm.ExecuteNonQuery() > 0)
{
MessageBox.Show("成功");
}
else MessageBox.Show("注册失败!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
一楼说的对,数据的确在项目里的那个复制的数据库里,但又遇到了新问题,每次调试时确实能把数据添加进去了,且退出调试后数据还在,但是如果再重新调试时,也就是再次运行一下程序后,原来的那些数据都自动删除了!只能重新添加!如何才能把数据追加似的添加进去呢?
展开
 我来答
grass107
2010-02-06 · TA获得超过687个赞
知道小有建树答主
回答量:194
采纳率:0%
帮助的人:360万
展开全部
你看错数据库了,在vs项目里面那份只是一个备份而已,最终产生效果的是bin里面的数据库。

string strcon = "Provider=Microsoft.Jet.OleDb.4.0;datasource=mydbtest.mdb";
如果这么写的话,那么这个数据库是跟你运行生成的.exe文件在同级目录下。

那么这个数据库就应该在:项目路径/bin/debug(或者release)/mydbtest.mdb

你放到项目里的access数据库,最终会在上面那个路径生成一份。

对补充的回答:
因为每次运行都会重新编译一次,所以每次都会创建一个新的数据库,部署到IIS上就可以了,如果想添加多个,只能手动添加到库里,或者把bin下的库放到项目里面覆盖
百度网友253cc80
2010-02-06 · 超过18用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:50万
展开全部
查询这些错误很简单:
1. 先输出Reponse.Write(sql); 就是输入sql语句
2. 在access的视图下的sql查询中 测试这个sql语句是否正确
3. 把你的try包括到你的sql语句中,你的那个强制转换可能会导致语句错误
比如输入:abc
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
csluowei
2010-02-06 · TA获得超过178个赞
知道答主
回答量:184
采纳率:0%
帮助的人:114万
展开全部
表ID字段有没有设置为主键、递增
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式