string strCnn = "Provider=msdaora; Data Source = OracleDB; User Id = 'ls'; Password = p19831016; Integrated Security = no;";
OleDbConnection cnn = new OleDbConnection(strCnn); try
{
cnn.Open(); string strSql = "Select * From table1";
OleDbCommand cmm = new OleDbCommand(strSql, cnn);
OleDbDataAdapter ad = new OleDbDataAdapter(cmm);
OleDbDataReader reader = cmm.ExecuteReader(System.Data.CommandBehavior.KeyInfo);
DataTable dt = reader.GetSchemaTable();
DataSet ds = new DataSet();
ds.Tables.Add(dt); ds.WriteXml(xmlpath);
}
catch (Exception e)
{
Console.Write(e.Message);
Console.Read();
}
finally
{
cnn.Close();
}同样的代码,用OracleClient可运行成功,
但用OleDB出错,在cnn.Open()处出现异常:多步OLE DB操作产生错误。如果可能,请检查每个OLE DB的状态值。没有工作被完成。
什么原因?
OleDbConnection cnn = new OleDbConnection(strCnn); try
{
cnn.Open(); string strSql = "Select * From table1";
OleDbCommand cmm = new OleDbCommand(strSql, cnn);
OleDbDataAdapter ad = new OleDbDataAdapter(cmm);
OleDbDataReader reader = cmm.ExecuteReader(System.Data.CommandBehavior.KeyInfo);
DataTable dt = reader.GetSchemaTable();
DataSet ds = new DataSet();
ds.Tables.Add(dt); ds.WriteXml(xmlpath);
}
catch (Exception e)
{
Console.Write(e.Message);
Console.Read();
}
finally
{
cnn.Close();
}同样的代码,用OracleClient可运行成功,
但用OleDB出错,在cnn.Open()处出现异常:多步OLE DB操作产生错误。如果可能,请检查每个OLE DB的状态值。没有工作被完成。
什么原因?
解决方案 »
- 求助:winform 中datagridview选择部分列(非固定)导出为excel
- C# 怎么把Excel1的Sheet1 拷贝到 Excel2的Sheet1后面
- 关于手机彩信
- 请教DataGridView如何在单击单元格的时候显示DatetimePicker,没有源码给点提示或参考资料也行
- 大家好 新手求助
- 类似VS工具箱的控件,在隐藏后触发的刷新怎么办?
- 前几天还能用的代码,这几天出现如下现象,是不是中毒了,如果是的话还能修复吗?怎么修复,请高手指点,谢谢!
- 重写datagridview方法
- 神啊救救我吧 干掉这个session
- 如何遍历记录集?
- 求助C#中的一个简单问题
- 如何通过网络搜索可用信息添加到应用程序
好像使用microsoft的ado数据驱动程序,不使用oracle的oledb驱动程序就没有问题;
试试看
连接成功了。