Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

How can I create an exact copy of an oracle database in MS SQL 2008 Standard

Posted on 2011-03-23
7
Medium Priority
?
311 Views
Last Modified: 2012-05-11
Or what is the best way? I had an Idea to create linked servers and that once linked I could find a stored proceedure somewhere that would run and get all the table names and data and create them on my MS SQL 2008 Server.  I only want a snapshot to be taken I do not need the data to be updated at all.
0
Comment
Question by:LorneCash
7 Comments
 
LVL 78

Expert Comment

by:slightwv (䄆 Netminder)
ID: 35198743
What Oracle version?

There is an Oracle package: dbms_metadata and a function called get_ddl in the newer versions of Oracle.

This will extract the structures.  I've not heard of a utility that will port the code automatically.
0
 
LVL 35

Expert Comment

by:johnsone
ID: 35198971
What about CTAS?  I don't know SQL Server that well so I'm not sure it will work, but I would think it should.

You should be able to do something like:

create table <tab> ... as select * from <tab>@<link>;

You could wrap that in a procedure that did a select on user_tables@<link> to loop through all the tables.
0
 
LVL 50

Accepted Solution

by:
Lowfatspread earned 1000 total points
ID: 35199636
if you are using oracle 9i or later can you not just use oracle publishing and snapshot replication to achieve a copy

http://msdn.microsoft.com/en-us/library/ms151243.aspx
0
Get your Conversational Ransomware Defense e‑book

This e-book gives you an insight into the ransomware threat and reviews the fundamentals of top-notch ransomware preparedness and recovery. To help you protect yourself and your organization. The initial infection may be inevitable, so the best protection is to be fully prepared.

 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 35200837
>>How can I create an exact copy of an oracle database in MS SQL 2008 Standard<<
You will not be able to create an exact copy.  Something similar perhaps, but not exactly the same.
0
 
LVL 1

Author Comment

by:LorneCash
ID: 35200986
I think I need to be more specific... All I need is the tables populated with the data no code, no users and no permissions just tables with the same number of columns and the same number of rows that contain the same data.
0
 
LVL 78

Expert Comment

by:slightwv (䄆 Netminder)
ID: 35201029
If you have linked the databases then:  Then johnsone's post in http:#a35198971
or insert into table (select * from linked_table)

Do have DTS (Data Transformation Services) with sql server?

If they aren't linked you can create a delimited flat file.

0
 
LVL 1

Author Closing Comment

by:LorneCash
ID: 35201589
SSMA is the way to go in this case
0

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It is possible to export the data of a SQL Table in SSMS and generate INSERT statements. It's neatly tucked away in the generate scripts option of a database.
This month, Experts Exchange sat down with resident SQL expert, Jim Horn, for an in-depth look into the makings of a successful career in SQL.
Via a live example, show how to set up a backup for SQL Server using a Maintenance Plan and how to schedule the job into SQL Server Agent.
Viewers will learn how to use the INSERT statement to insert data into their tables. It will also introduce the NULL statement, to show them what happens when no value is giving for any given column.
Suggested Courses

581 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question