注册 登录
编程论坛 ASP.NET技术论坛

OleDbDataAdapter.FILL()重载出错

zerocn 发布于 2007-07-27 21:25, 2057 次点击

private void DgDataBind()
{
string DataPath = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=f:\\data\\db1.mdb";
OleDbConnection conn = new OleDbConnection(DataPath);
string strCmd = "Select * From Dv_User";
DataSet DataSet1 = new DataSet();
OleDbDataAdapter DataAdapter1 = new OleDbDataAdapter(strCmd,conn);
DataAdapter1.Fill( DataSet1 ,"Table1");
DataGrid1.DataSource = DataSet1;
DataGrid1.DataBind();
}


结果提示:

行 27:         DataSet DataSet1 = new DataSet();
行 28: OleDbDataAdapter DataAdapter1 = new OleDbDataAdapter(strCmd,conn);
行 29: DataAdapter1.Fill(DataSet1,"Table1");
行 30: DataGrid1.DataSource = DataSet1;
行 31: DataGrid1.DataBind();

编译器错误信息: CS1502: 与“System.Data.OleDb.OleDbDataAdapter.Fill(System.Data.DataTable, object)”最匹配的重载方法具有一些无效参数


就是这里不明白,书上的重载方法是这样,MSDN里面也有这个重载方法,不知道为什么不行
源文件在这里,共3个文件(DataSet.aspx、DataSet.aspx.cs、db1.mdb)

只有本站会员才能查看附件,请 登录

[此贴子已经被作者于2007-7-28 16:26:31编辑过]

11 回复
#2
冰彩虹2007-07-28 00:49
可惜现在电脑上没有编译器哈,改天看看...
#3
zerocn2007-07-31 16:54
顶上去,还没有解决
#4
冰彩虹2007-07-31 17:13
DataAdapter1.Fill(DataSet1,"Table1");
外部表不是预期的格式

估计是要求表名为Table1的表结构跟读取的Dv_User结构要一致吧


这样不行的话,用Fill别的方法好了
#5
cyyu_ryh2007-07-31 17:33
试用

DataAdapter1.Fill( DataSet1 ,"Table1");
DataGrid1.DataSource = DataSet1.Tables["Table1"].DefautView;
DataGrid1.DataBind();
#6
xjh242007-07-31 21:11

#7
zerocn2007-07-31 21:53
试了一下4、5楼的,还是不可以,到底我的VS有问题还是什么的,你们下载源文件编译下看下有没有问题
#8
卡卡艾2007-07-31 22:12
string myStr = "Data Source=(local);Initial Catalog=MyStockSystemDB;Integrated Security=SSPI";
SqlConnection myCon = new SqlConnection(myStr);
SqlDataAdapter adp =new SqlDataAdapter("select * from table1 where 列 ='" + textBox1.Text+"'",myCon);
DataSet ds = new DataSet();
adp.Fill(ds, "BuyIn");
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "table1";

这是我做的一个查询部分的代码..和你要求的功能差不多...我的一点问题也没有.我也不知道你的问题在哪里..你考虑下4楼斑竹说的.
#9
川流不息2007-07-31 23:51
把你填充后的那个表名Table1换一下看看?
#10
zerocn2007-08-01 17:06
以下是引用卡卡艾在2007-7-31 22:12:42的发言:
string myStr = "Data Source=(local);Initial Catalog=MyStockSystemDB;Integrated Security=SSPI";
SqlConnection myCon = new SqlConnection(myStr);
SqlDataAdapter adp =new SqlDataAdapter("select * from table1 where 列 ='" + textBox1.Text+"'",myCon);
DataSet ds = new DataSet();
adp.Fill(ds, "BuyIn");
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "table1";

这是我做的一个查询部分的代码..和你要求的功能差不多...我的一点问题也没有.我也不知道你的问题在哪里..你考虑下4楼斑竹说的.

我模仿你的修改了下

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=f:\\data\\image.mdb");
DataSet ds = new DataSet();
OleDbDataAdapter adp = new OleDbDataAdapter("Select * From Dv_User",conn);
adp.Fill(ds,"Dv_User");
DataGrid1.DataSource = ds;
DataGrid1.DataMember = "Dv_User";
DataGrid1.DataBind();

问题依然存在.(难道我的编译器问题?)请你下在我的源文件试下编译有没有问题。(源文件在一楼)

[此贴子已经被作者于2007-8-1 17:08:05编辑过]

#11
sean882007-08-01 17:24
以下是引用zerocn在2007-8-1 17:06:18的发言:

我模仿你的修改了下

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=f:\\data\\image.mdb");
DataSet ds = new DataSet();
OleDbDataAdapter adp = new OleDbDataAdapter("Select * From Dv_User",conn);
adp.Fill(ds,"Dv_User");
DataGrid1.DataSource = ds;
DataGrid1.DataMember = "Dv_User";
DataGrid1.DataBind();

问题依然存在.(难道我的编译器问题?)请你下在我的源文件试下编译有没有问题。(源文件在一楼)

请按红色部分这样试一下~~~~

OleDbConnection oleConn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=f:\\data\\image.mdb");

OleDbDataAdapter oleAdaper = new OleDbDataAdapter();
oleAdaper.SelectCommand = new OleDbCommand("Select * From Dv_User",oleConn);


DataSet ds = new DataSet();
oleAdaper.Fill(ds,"Dv_User");

DataGrid1.DataMember = "Dv_User";
DataGrid1.DataBind();

[此贴子已经被作者于2007-8-1 17:25:15编辑过]

#12
zerocn2007-08-01 17:34
以下是引用sean88在2007-8-1 17:24:04的发言:

请按红色部分这样试一下~~~~

OleDbConnection oleConn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=f:\\data\\image.mdb");

OleDbDataAdapter oleAdaper = new OleDbDataAdapter();
oleAdaper.SelectCommand = new OleDbCommand("Select * From Dv_User",oleConn);

DataSet ds = new DataSet();
oleAdaper.Fill(ds,"Dv_User");

DataGrid1.DataMember = "Dv_User";
DataGrid1.DataBind();

依然存在,想请你试下编译我的源文件,我想先确认是不是我的编译器的问题

1