• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 652
  • Last Modified:

Best way to update an Oracle Table?

I have an Access table with over a million records.  What is the quickest way to update an Oracle table with these records in access?  export to CSV file and import into Oracle? Oracle SQL import process??  Thanks in advance.

1 Solution
Depends on which version of Oracle. With recent versions, if you can export them to a CSV, then you can create an external table for Oracle and use SQL in Oracle to do merge. Prior to external tables, you would need to use sql loader to pull them into an Oracle staging table, then do an update to the target table. Either way, getting them out of access and into a fixed or delimited format will make it easier for bulk loading with Oracle.

If you have a lot of time, you could use Intelligent Converters Access-to-Oracle tool. It will take a few hours to insert that many. The problem will be if you want to repeatedly do this update, I would probably not use the tool, instead, use a tool that extracts from Access to CSV as fast as possible. Once it is in a flat file, Oracle sql loader or external tables with data pump is the fastest way. It can load a million rows in minutes.

Since I don't know Access so well, I cannot recommend much on that side, except the conversion tool I use, listed above.

Creating a dblink to Access from Oracle and update the Oracle table.
Creating CSV file and using external tables is an alternative.

You should explore access database and see if you can find an option to save data in csv (comma seperated variable) or delimited by any other special character
One of the Easy Way
1) Create csv files from Acess
2) Load to oracle using sqlloader utility or using External tables.

you want to use e.g "|" or "~" ,";" ...
You don't need any special privs to use sqlldr but you do need create, read, and write to directory privs and access to db server for external tables. See following links for examples of sqlldr and external tables.


External Tables
Mark GeerlingsDatabase AdministratorCommented:
The quickest way is export the data from Access into either a CSV or fixed-length ASCII file, then move or copy that file to the Oracle server (unless the Access database is also on the Oracle server) then use Oracle's SQL*Loader (not Oracle import) to load the data into an Oracle table.  You must create the table in Oracle though before you can load this data into it.
pandkyonAuthor Commented:
Thanks! that worked  Alos thanks to others as well, they were basically point in the same direction.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now