CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

通过ADO.Net修改access数据库的问题

楼主li_hui_hui()2004-12-02 12:43:51 在 .NET技术 / ASP.NET 提问

我正在做一个简单的小程序,想把用户输入的数据添加到后台数据库中。我保证数据库连接得没问题。但只要更新数据库就有问题了。我只要调用下面这一个子程序,运行到语句'dataAdapter.Update(myDataSet,   "city");'这句话时就有问题了。我觉得之前应该都没错,我可以跟踪到newRow的值。  
   
  protected   void   button1_Click(object   sender,   System.EventArgs   e)  
  {  
            DataRow   newRow   =   dataTable.NewRow();  
            newRow["name"]   =   cityBox.Text;  
            newRow["country"]=countryBox.Text;  
            newRow["ID"]     =           IDBox.Text;  
   
            dataTable.Rows.Add(newRow);  
   
            dataAdapter.Update(myDataSet,   "city");  
   
            Application.DoEvents();  
            myDataSet.AcceptChanges();  
   
            PopulateLB();  
            ClearFields();  
  }  
   
  很着急呀,明天就要交程序了,大家帮帮忙亚。 问题点数:20、回复次数:5Top

1 楼houlinghouling(秋水伊)回复于 2004-12-02 13:49:18 得分 5

去看一看  
  ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfsystemdatacommondbdataadapterclassupdatetopic.htm  
   
  你好像少了fill  
  Top

2 楼li_hui_hui()回复于 2004-12-02 19:47:39 得分 0

谢谢秋水伊,可是你给的连接我好象打不开呀.Top

3 楼dzvsyt(一笑天)回复于 2004-12-02 21:42:21 得分 10

楼主要不就用insert   into语句了  
  根据你的字段,应该是这样写:  
  我用VB写的,我不会C,你改一下就可以  
  Dim   sql   as   string  
  Dim   Da   as   SqlDataAdapter  
  Dim   Ds   as   New   DataSet()  
   
  sql="Insert   Into   city(name,contry,ID)   values('"   &   cityBox.Text   &   "','"   &   countryBox.Text   &   "','   "   &   IDBox.Text   &   "')"  
  Da=New   SqlDataAdapter(sql,conn)  
  Da.Fill(Ds,"add")  
  Da.Dispose()  
  conn.close()  
  Top

4 楼spgoal(敏捷的狗狗)回复于 2004-12-02 21:45:44 得分 5

上面的链接是在MSDN里打开的Top

5 楼li_hui_hui()回复于 2004-12-12 01:25:22 得分 0

谢谢大家,我现在还有一个小问题就是我的数据怎么写不回原来的access数据库呀?我试了两种方法一种是用DataSet,   一种是用insertCommand.都不行。现在的情况是,我可以往对话框中输入数据,再点确认键,程序不报错,但是检查access数据库相应表格的数据没有变化。我怀疑是不是要对access数据库进行什么修改全县的设置亚?还是我的代码有问题?我的代码贴在下面了:非常着急,非常着急,请大家帮帮我把  
   
  protected   void   addButton_Click(object   sender,   System.EventArgs   e)  
  {  
            string   cityText   =   cityTextBox.Text;  
            string   countryText   =   countryTextBox.Text;  
            string   idText   =   IDTextBox.Text;  
   
            myDataSet   =   (DataSet)Session["MyData"];  
            string   strConnection   ="Provider   =   Microsoft.Jet.OleDb.4.0;";  
            strConnection   +=@"Data   Source   =   C:\Visual   Studio   Projects\database\citydab.mdb";  
   
            myConnection   =   new   System.Data.OleDb.OleDbConnection(strConnection);  
            myConnection.Open();  
   
            myCommand   =   new   System.Data.OleDb.OleDbCommand();  
            myCommand.Connection   =   myConnection;  
            string   command   =   "insert   into   city(name,   country,   ID)   values   (cityText,   countryText,   idText)";  
            myCommand   =   new   System.Data.OleDb.OleDbCommand(command,   myConnection);  
   
            DataAdapter   =   new   System.Data.OleDb.OleDbDataAdapter();  
            DataAdapter.InsertCommand   =   myCommand;  
            DataAdapter.Dispose();  
            myConnection.Close();  
  }  
   
  还有一种方法是用DataSet:  
  protected   void   addButton_Click(object   sender,   System.EventArgs   e)  
  {  
            string   cityText   =   cityTextBox.Text;  
            string   countryText   =   countryTextBox.Text;  
            string   idText   =   IDTextBox.Text;  
   
            myDataSet   =   (DataSet)Session["MyData"];  
            string   strConnection   ="Provider   =   Microsoft.Jet.OleDb.4.0;";  
            strConnection   +=@"Data   Source   =   C:\Visual   Studio   Projects\database\citydab.mdb";  
   
            myConnection   =   new   System.Data.OleDb.OleDbConnection(strConnection);  
            myConnection.Open();  
   
            this.t1   =   myDataSet.Tables[0];  
            this.r   =   this.t1.NewRow();  
   
            this.r["name"]   =   cityText;  
            this.r["country"]   =   countryText;  
            this.r["ID"]   =   idText;  
            this.t1.Rows.Add(r);  
            myDataSet.AcceptChanges();  
            DataAdapter   =   new   System.Data.OleDb.OleDbDataAdapter();  
            DataAdapter.Update(myDataSet,   "city");  
            myConnection.Close();  
  }  
   
   
  Top

相关问题

  • 数据库ado
  • 用ado连接的数据库为什么不能修改
  • 用ADO对数据库进行修改和删除操作!!!
  • 用ADO连接能修改ACCESS2000的数据库密码吗?
  • 如何用ADO语句修改数据库密码?
  • 做一个ado的dll控件访问修改数据库,用asp做网页调用dll操作数据库
  • 两个有关.net中修改数据库数据的问题
  • 在.net中如何修改数据库中的值
  • 如何通过引用ado来修改access数据库的密码?
  • SQL Server数据库的ADO连接问题,怎么修改当前用户????

关键词

  • 数据库
  • 数据
  • access
  • sql
  • newrow
  • dataadapter
  • myconnection
  • mydataset
  • mycommand
  • oledb

得分解答快速导航

  • 帖主:li_hui_hui
  • houlinghouling
  • dzvsyt
  • spgoal

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo