c# 连接db2数据库,然后查询填充dataset问题。 急。。

全球车行网 2012-07-26 01:51:44
急:::::::::

全部代码放上:
这个是调用和填充部分:
OleDbCommand cmd = new OleDbCommand();
DbDataAdapter dbDataAdapter = new OleDbDataAdapter();

//DataSet dataset1 = new DataSet();
//这里调用的是第二段代码:
dbDataAdapter = DataConn.newAdapter(sql);

//if (dbDataAdapter != null) dbDataAdapter.SelectCommand = cmd;
DataSet ds = new DataSet();
if (dbDataAdapter != null)
//执行到填充的时候报错了。错误信息如何:“IBMDADB2.DB2COPY1”失败,没有可用的错误消息,结果代码: //DB_E_OBJECTOPEN(0x80040E05)。
dbDataAdapter.Fill(ds);
获取dataadapter部分:
public static DbDataAdapter newAdapter(String sql)
{
switch (DBType)
{
case mDBType.dbDB2:
return new OleDbDataAdapter(sql, (OleDbConnection)getConnection());
case mDBType.dbOracle:
return new OracleDataAdapter(sql, (OracleConnection)getConnection());
case mDBType.dbSQLServer:
return new SqlDataAdapter(sql, (SqlConnection)getConnection());
default:
return null;
}
}

获取数据库连接部分:
public static DbConnection getConnection()
{
string provider = null;
DbConnection conn = null;
switch (DBType)
{
case mDBType.dbDB2:
provider = "Provider=IBMDADB2.DB2COPY1;Password="+ strPWD +";User ID="+ strUser +";Data Source=" +strDbName ;
conn = new OleDbConnection(provider);
break;
case mDBType.dbOracle:
provider = "Data Source=" + strDbName + ";Password = " + strPWD + "; User ID = " + strUser + ";";
conn = new OracleConnection(provider);
break;
case mDBType.dbSQLServer:
provider = "server=" + strServer + ";Initial Catalog=" + strDbName + ";User Id=" + strUser + ";Password=" + strPWD + ";Max Pool Size = 5;Connect Timeout=5";
conn = new SqlConnection(provider);
break;
default:
return conn;
}
if (conn != null)
{
conn.Open();
}
return conn;
}
...全文
252 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianlehui 2012-07-26
  • 打赏
  • 举报
回复
这与DataSet和DataTable没啥关系吧…………[Quote=引用 5 楼 的回复:]
引用 4 楼 的回复:
首先 你装DB2 客户端了吧,配置连接好了?其次,你确定在Fill之前你的Connection连好并Open了?
是的。.你说的都是通过的。刚朋友提示让把dataset改成datatable,试了试,竟然可以了。。
[/Quote]
全球车行网 2012-07-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
首先 你装DB2 客户端了吧,配置连接好了?其次,你确定在Fill之前你的Connection连好并Open了?
[/Quote]是的。.你说的都是通过的。刚朋友提示让把dataset改成datatable,试了试,竟然可以了。。
tianlehui 2012-07-26
  • 打赏
  • 举报
回复
首先 你装DB2 客户端了吧,配置连接好了?其次,你确定在Fill之前你的Connection连好并Open了?
全球车行网 2012-07-26
  • 打赏
  • 举报
回复
有大师知道啥原因吗?

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧