473,387 Members | 1,578 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

Informix to Oracle Migration

Hi,
I am sure if anyone can help me, you guys can!

I am an Informix Developer, moving to Oracle 8i and later databases.
I am struggling to find the Oracle equivelant to many of the useful
Informix features that I have come to rely upon.

I have looked through the Oracle/Infomix groups and some helpful
users have posted some solutions, but many of them seem to be very
complex work-arounds for features that were readily available in
Informix.

Let me give you some examples:

1) We regularly used the Informix LOAD FROM and UNLOAD TO statments
e.g.

UNLOAD TO '/tmp/orderdata.unl'
SELECT * FROM ORDER
WHERE val > 100000;

There does not seem to be an easy way to do this in Oracle. Am I
missing something ( I am sure the answer to that is "Yes"! )

2) Informix has a serial data type, so if you had a primary key that
you would like to auto-increment, you declare it as serial, all done.
I searched groups and the solution seems to be to create a sequence
and on insert triggers. Seems a long workaround to me. Is this really
the recommended way of implementing this behavior in Oracle?

If, during testing, you wish to unload some of the tables to file
and reload them when the tables have been dropped and re-created, it
seems to be a struggle, as the sequence will generate new key values
for all the records on insert, and referential integrity is broken.
Informix's serial datatype does not have a problem with this, if you
insert a row with a specific value into a serial column, and the value
is unique, it inserts that value rather than a new serial value, so
loading old data back into the table is not a problem, integrity in
maintained.

3) Any user other than the table owner must prefix the table name in
queries with the owner name, e.g. DEVUSER.ORDER. Why is this? Would
any sensible database design allow for two identically named tables in
the same schema, but with different owners? I do appreciate that
synonyms can be created to work around this, but again this seems to
be a workaround for a problem that just creates extra hassle and no
benefit.

I am sure you guys can help me out with this stuff, it would make my
professional life a hell of a lot easier if I felt with Oracle, like I
did with Informix, that I am being assisted by the database, not that
it is my greatest enemy to hitting deadlines.

Thanks in advance

PH
Jul 19 '05 #1
1 8786
ph*************@totalise.co.uk (Phil Hindmoor) wrote in message news:<34**************************@posting.google. com>...
Hi,
I am sure if anyone can help me, you guys can!

I am an Informix Developer, moving to Oracle 8i and later databases.
I am struggling to find the Oracle equivelant to many of the useful
Informix features that I have come to rely upon.

I have looked through the Oracle/Infomix groups and some helpful
users have posted some solutions, but many of them seem to be very
complex work-arounds for features that were readily available in
Informix.

Let me give you some examples:

1) We regularly used the Informix LOAD FROM and UNLOAD TO statments
e.g.

UNLOAD TO '/tmp/orderdata.unl'
SELECT * FROM ORDER
WHERE val > 100000;

There does not seem to be an easy way to do this in Oracle. Am I
missing something ( I am sure the answer to that is "Yes"! )
look up the SQl*PLUS SPOOL command.

2) Informix has a serial data type, so if you had a primary key that
you would like to auto-increment, you declare it as serial, all done.
I searched groups and the solution seems to be to create a sequence
and on insert triggers. Seems a long workaround to me. Is this really
the recommended way of implementing this behavior in Oracle?
Yes. You got a problem with that? ;^)
If, during testing, you wish to unload some of the tables to file
and reload them when the tables have been dropped and re-created, it
seems to be a struggle, as the sequence will generate new key values
for all the records on insert, and referential integrity is broken.
Informix's serial datatype does not have a problem with this, if you
insert a row with a specific value into a serial column, and the value
is unique, it inserts that value rather than a new serial value, so
loading old data back into the table is not a problem, integrity in
maintained.
When you program the trigger to handle that column, you can progrm
this way.
IOW, in the trigger, if the value for that column is NULL, then get
the next sequence value, else just let the current value be inserted.

Look at the examples again. It's not the problem that you think.
3) Any user other than the table owner must prefix the table name in
queries with the owner name, e.g. DEVUSER.ORDER. Why is this?
That's standard SQL
Would
any sensible database design allow for two identically named tables in
the same schema, but with different owners?
Read the manuals about SCHEMA, but I think, your answer
to this question is the expected NO.
(and I beleive it is also impossible to do.)
I do appreciate that
synonyms can be created to work around this, but again this seems to
be a workaround for a problem that just creates extra hassle and no
benefit.
You will find much more benefit than hassle to distinct SCHEMAs.
Think of it as similar to the difference between programming in BASIC
(global variables) and programming in C or PASCAL.

I am sure you guys can help me out with this stuff, it would make my
professional life a hell of a lot easier if I felt with Oracle, like I
did with Informix, that I am being assisted by the database, not that
it is my greatest enemy to hitting deadlines.

Thanks in advance

PH

You are going thru a small culture shock. Much of what you mentioned
is just going thru the learning curve. Don't dispair, you'll be fine.
Take a class and you'll get comfortable more quickly.

and Welcome to the world of ORACLE!

Ed
Also checkout comp.databases.oracle.misc and the other 3 ORACLE
related groups, since comp.databases.oracle is suposed to go away.
(Why GOOGLE still lets me post here is a mystery.)
Jul 19 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: ky | last post by:
I'll ask the age old question, can anyone direct me to some Oracle vs. Informix comparision information? I am looking for something as concise as possible but with good content. Thanks in advance.
4
by: susmita_ganguly | last post by:
Hi I am trying to upgrade from oracle 8i to oracle 9i on the same server ..I don't know much abt migration . Can anyone help me out. Thanks. Susmita
0
by: Chavan Koya | last post by:
Hi, This is my first posting to this group. We are thinking to migrate a Informix database which is running on HP-UX 11. Initially we are try to evaluate the Oracle Migration WorkBench to do...
4
by: Abram Friesen | last post by:
Hi, I'm a developer for a software application vendor, and our application makes use of a customer-maintained Oracle 8i/9i database. We've had a customer request to support DB2 database, and I'm...
8
by: Tavish Muldoon | last post by:
At a high level - what would be involved in switching from Oracle to DB2? Pretty vague, I know - but anyone have experience with this kind of migration? Pointers? Things to look for? Tmuld
6
by: FireHawkBr® | last post by:
Hi, My company uses Informix as corporative database. As experienced DBA of the company, I have that to make a study comparing Oracle, Informix and DB2 databases and suggesting new alternatives....
56
by: Ashish Patankar | last post by:
I want to migrate my Oracle 10g database to Db2. I want some documentation for the comparision between these to databases. I also want to know which features of Oracle 10g are supported by Db2 and...
0
by: Lester Knutsen | last post by:
A two-day IBM Informix and DB2 User Group Technical Conference - Friday and Saturday, December 8-9, 2006 We are very please to announce our Keynote Speakers...
3
by: Rodolfo | last post by:
Hi everybody! I'm working on a migration from Informix to SQL Server... I'm doing it through DTS and ODBC. What I'm doing is using the DTS, my data origin is tha Informix database and mi...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.