问题描述:我们有一个oracle数据库,现在要做一个离线系统,离线数据库是ACCESS,就一张表,表结构一样,本来可以通过从oracle中查出数据在插入ACCESS中的方法实现,但觉得太笨了,又没有什么比较简单的方法

解决方案 »

  1.   

    小弟子顶一下,问题是这样的,我想通过查询ORACLE数据库得到一张表的说有记录,放到DATASET中,然后将这个DATASET作为ACCESS数据库操作的参数插入到ACCESS数据库中,请问这样可以吗?如果可以如何做呢,请高手指教
      

  2.   

    DataSet ds = new DataSet();
    OracleDataAdapter adapter = new OracleDataAdapter(cmd);
    adapter.Fill(ds,"CVIC_INSPECTINFO");
    OleDbCommand cmd1 = CreateCommand("SELECT * FROM CVIC_INSPECTINFO");
    OleDbDataAdapter dataAdapter = new OleDbDataAdapter(cmd1);
    dataAdapter.Update(ds,"CVIC_INSPECTINFO");
    这是部分代码,可以执行没有异常,但数据库中没有记录,SQL语句也能查到记录,就是不插入到ACCESS中去
      

  3.   

    oracle->csv->access用pl/sql developer 这个工具。
    没用过这个?去下一个
      

  4.   

    1.使用access的导入功能,连接到oracle,执行导入即可.
    2.使用sql server的dts工具,进行数据的导入导出.
    3.使用delphi data pump来进行导入导出.
    4.其它工具,很多...
    5.写代码完成,比较麻烦.
      

  5.   

    程序实现可以控制acess,录制一个宏,看怎么实现的
      

  6.   

    //VehApprobateFile记录长传至ORACLE
    DataSet ds = execaccess1.GetDataSet("SELECT * FROM VehApprobateFile WHERE CCF8NB = "+odr.GetString(3).ToString(),"CVIC_VEHAPPROBATEFILE");
    DataSet objDataSetChanges = new DataSet();
    objDataSetChanges = ds;
    DataRow anyRow = ds.Tables["CVIC_VEHAPPROBATEFILE"].NewRow();
    anyRow.ItemArray = ds.Tables["CVIC_VEHAPPROBATEFILE"].Rows[0].ItemArray;
    objDataSetChanges.Tables["CVIC_VEHAPPROBATEFILE"].Rows.Add(anyRow);
    if ((objDataSetChanges != null)) 
    {
    try 
    {
    // 需要做一些更改,所以尝试通过调用 update 方法
    // 和传递数据集以及任何参数来更新数据源。
    cmd.CommandText = "SELECT * FROM CVIC_VEHAPPROBATEFILE WHERE CCF8NB = "+odr.GetString(3).ToString();
    //创建数据库适配器
    OracleDataAdapter myDataAdapter = new OracleDataAdapter(cmd);
    //创建数据库命令构造器
    OracleCommandBuilder cb = new OracleCommandBuilder();
    cb.DataAdapter = myDataAdapter;
    myDataAdapter.InsertCommand = cb.GetInsertCommand();
    myDataAdapter.Update(objDataSetChanges,"CVIC_VEHAPPROBATEFILE");
    //dataset.Merge(dataset);
    ds.AcceptChanges();
    }
    catch (System.Exception eUpdate) 
    {
    // 在此处添加错误处理代码。
    throw eUpdate;
    }
    }
    解決了,只要數據結構相同,DATASET是通用的即可