标题:一天都没有搞出来的简单问题,郁闷死了。求帮助
只看楼主
SUPERJHT
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2010-7-19
结帖率:100%
已结贴  问题点数:20 回复次数:3 
一天都没有搞出来的简单问题,郁闷死了。求帮助
其实本来很简单的问题,虽然我初学。但是这类似的代码是使用过的,但是在这个表单上楞是不好用!
代码如下。 通过的和无法通过的都已经标注。
using System;
using System.Collections.Generic;
using
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace WindowsApplication1
{
    public partial class NEWGONGCHENG : Form
    {
        public NEWGONGCHENG()
        {
            InitializeComponent();
        }

        OleDbDataAdapter da=new OleDbDataAdapter ();
        DataSet ds=new DataSet ();

        
//下面的把数据库里面的东西填到 DATAGRIDVIEW 的一段正确通过运行.
        private void NEWGONGCHENG_Load(object sender, EventArgs e)
        {
            string path = Application.StartupPath + "\\gongchenglin.mdb";
            OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + "");
            OleDbCommand cmd2 = new OleDbCommand("select * from fengmian", conn);
            OleDbDataAdapter da = new OleDbDataAdapter();
            da.SelectCommand = cmd2;
            conn.Open();
            DataSet ds = new DataSet();
            da.Fill(ds, "fengmian2");
            dataGridView1.DataSource = ds.Tables[0];
           conn.Close ();
        }

//就下面这一段小小的两句话一运行就出问题.错误提示是
//Update 无法找到 TableMapping['fengmian2'] 或 DataTable“fengmian2”。
//但是如果找不到那为什么上面da.Fill(ds, "fengmian2")又正确通过哪? 而且这段代码是我的另外一个表单用过的.真郁闷.谢谢帮助!!!

        private void button1_Click(object sender, EventArgs e)
        {
            
                OleDbCommandBuilder cmdbuild3 = new OleDbCommandBuilder(da);
                  da.Update(ds, "LUJING");
            
        }



      }
}
搜索更多相关主题的帖子: 简单问题 
2010-08-01 04:55
Anne_Zhang
Rank: 2
等 级:论坛游民
威 望:1
帖 子:27
专家分:94
注 册:2010-4-10
得分:10 
private void NEWGONGCHENG_Load(object sender, EventArgs e)
        {
            string path = Application.StartupPath + "\\gongchenglin.mdb";
            OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + "");
            OleDbCommand cmd2 = new OleDbCommand("select * from fengmian", conn);
            OleDbDataAdapter da = new OleDbDataAdapter();
            da.SelectCommand = cmd2;
            conn.Open();
            DataSet ds = new DataSet();
            da.Fill(ds, "fengmian2");
            dataGridView1.DataSource = ds.Tables[0];
           conn.Close ();
        }
如上红色标识出来的部分,在方法内部你定义了一个局部变量da,在方法外部也定义了一个全局变量da ,da.Fill(ds, "fengmian2")这个没有出错是因为用的是局部变量da,在
 private void button1_Click(object sender, EventArgs e)
        {
            
                OleDbCommandBuilder cmdbuild3 = new OleDbCommandBuilder(da);
                  da.Update(ds, "LUJING");
            
        }
中的da是全局变量,两个是不一样的,所以在这里会提示错误说找不到DataTable“fengmian2”。

2010-08-05 17:22
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:10 
程序代码:
using System;
using System.Collections.Generic;
using using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace WindowsApplication1
{
    public partial class NEWGONGCHENG : Form
    {
        public NEWGONGCHENG()
        {
            InitializeComponent();
        }

        OleDbDataAdapter da=new OleDbDataAdapter ();
        DataSet ds=new DataSet ();

       
//下面的把数据库里面的东西填到 DATAGRIDVIEW 的一段正确通过运行.
        private void NEWGONGCHENG_Load(object sender, EventArgs e)
        {
            string path = Application.StartupPath + "\\gongchenglin.mdb";
            OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + "");
            OleDbDataAdapter da = new OleDbDataAdapter("select * from fengmian", conn);
            da.Fill(ds, "fengmian");
            dataGridView1.DataSource = ds.Tables[0];
        }

//就下面这一段小小的两句话一运行就出问题.错误提示是
//Update 无法找到 TableMapping['fengmian2'] 或 DataTable“fengmian2”。
//但是如果找不到那为什么上面da.Fill(ds, "fengmian2")又正确通过哪? 而且这段代码是我的另外一个表单用过的.真郁闷.谢谢帮助!!!

        private void button1_Click(object sender, EventArgs e)
        {
           
                  da.Update(ds);
        }
      }
} 

飘过~~
2010-08-05 17:59
SUPERJHT
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2010-7-19
得分:0 
谢谢各位。当时又死瞅了一晚上。才看出这么简单的问题。
真的不是故意麻烦各位。
2010-08-06 14:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-314506-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.213765 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved