We help IT Professionals succeed at work.

using toad to automate etl from oracle query to sql server table

avoorheis
avoorheis used Ask the Experts™
on
I just transfered to a new group who mostly uses oracle and toad (I have little oracle experince; use Access and sql server often). No one seems to use any automation and I want to find out if it's possible to schedule a query to run, from oracle tables, and save the results to a sql server table.

If that can't be done, can I just save to a test file (I can then use ssis to load that data into sql server).

It looks like Toad has a scheduler (we're using Toad for Oracle v. 9.5.0.31, no add-ons), so, can I schedule with that, or, should I use the command line interface and schedule with windows task scheduler (it's on a win 2003 server box)?

thanks
alan
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Top Expert 2011
Commented:
- to insert result from oracle to sql server, you can look into using oracle
dblink:
http://www.databasejournal.com/features/oracle/article.php/3442661

- to schedule a query, you can write a pl/sql writing the result to a text file, then use dbms_job to schedule when to run the pl/sql. here is a link on both, and you can google for more example:
http://www.oracle.com/technetwork/database/features/plsql/index.html
http://www.devshed.com/c/a/Oracle/Writing-to-Text-Files-in-Oracle-PLSQL/
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_job.htm

- using toad, you can also output a result to a file, then use SSIS to upload the data into sql server. i am not a toad user, however i found the following link on scheduling a query via toad and output to a file. i believe there is more sample available in the toad world:
http://old.nabble.com/Schedule-a-script-td18348301.html
http://toadworld.com/Community/Forums/tabid/64/Default.aspx
Gerwin Jansen, EE MVETopic Advisor
Most Valuable Expert 2016
Commented:
In case Oracle is running on some Unix box, I'd be creating cron jobs that start at regular intervals firing SQL scripts that generate the data you want and store the data on some NFS/SMB share.

In case Oracle is running on Windows, I'd be using the same SQL scripts, only then launch them through the Windows scheduler (sqlplus user/passwd@database @script.sql).

In both cases I would not use Toad for this as this is a developer tool that runs on a workstation (PC) and it would have to run all the time.

An easy start would be that you create a sql script that gets your data for you, test it on your workstation (PC) that has an Oracle client and schedule it though task scheduler. After the task has run, trigger your ssis loader to load into sql server.

Or you could start learning Oracle of course.
Most Valuable Expert 2012
Distinguished Expert 2018

Commented:
I agree, do not use Toad.

What is your reason for loading into sql server?

If it is because you do not know Oracle, I agree, learn Oracle.  It isn't that hard.

Author

Commented:
seems like one of zaharin's suggestions will work...use the action palet. I tried and seems like it will work...can run what i want manually, just can't schedule it yet, which looks like a permission issue with the windows task scheduler...have to get that sorted out tomorrow.

Going to sql server because that's what I know, at least for now. I'll be creating some spread sheets that get the data via a connection. Also, our oracle production data is pretty tightly locked down and I would be able to query it from excel.
Most Valuable Expert 2012
Distinguished Expert 2018
Commented:
Go from Oracle to CSV to Excel.  No need for SQL Server.
Top Expert 2011

Commented:
"I'll be creating some spread sheets that get the data via a connection. "
- if you need to get the data to excel from oracle, you can use toad. run the query in toad then right click on the adta grid and choose "save as". then choose "excel instance"/"excel file". here is a link on that:
http://www.toadworld.com/BLOGS/tabid/67/EntryId/323/Toad-Excel-Easy-Data-Access.aspx