By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,679 Members | 2,763 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,679 IT Pros & Developers. It's quick & easy.

how to import Excel file into an already normalized database?

P: n/a
Hi all,

I have a problem with the issue in the subject, i have all data in one
big excel file,
in a denormalized form, and on the other side, i have mysql database
with many tables, which is already in production, and it is of course
in the 3rd NF. How do i go about importing that excel file , is there
any good tool i could use to handle prim/foreign key issues for me?
Any advice appreciated!

Thanks

Jun 26 '06 #1
Share this Question
Share on Google+
3 Replies


P: n/a

<fk*****@gmail.com> wrote in message
news:11*********************@b68g2000cwa.googlegro ups.com...
Hi all,

I have a problem with the issue in the subject, i have all data in one
big excel file,
in a denormalized form, and on the other side, i have mysql database
with many tables, which is already in production, and it is of course
in the 3rd NF. How do i go about importing that excel file , is there
any good tool i could use to handle prim/foreign key issues for me?
Any advice appreciated!

Thanks

save the excel file as a csv file instead and import that
Jun 26 '06 #2

P: n/a

fk*****@gmail.com wrote:
Hi all,

I have a problem with the issue in the subject, i have all data in one
big excel file,
in a denormalized form, and on the other side, i have mysql database
with many tables, which is already in production, and it is of course
in the 3rd NF. How do i go about importing that excel file , is there
any good tool i could use to handle prim/foreign key issues for me?
Any advice appreciated!

Thanks


There are two options. The first is to convert the excel file to CSV,
import it into the database in its own table, then populate the
normalised table using INSERT INTO table VALUES ( SELECT ... FROM
excel_table WHERE ... ); This doesn't work too well if you're using
auto incremented keys to join the values, though.

The second option is to just bite the bullet and write your own import
utility. Perl excels at string manipulation and DB access, but any
language will do. This is the better route if:

a) You use automatically incremented primary key fields
b) The data you're importing is not brand new, but must be linked to
existing records
c) It's not possible to go with option 1 due to complexity / lack of
identifying informaiton in the excel file.

Regards,
Ian

Jun 26 '06 #3

P: n/a
Ian,

Thanks for your advice, I am aware that writing a script to import this
data was one solution, but i asked here, in hope that someone might
reveal some "GreatTool (TM)" that will do all the hard work for me, and
just let me specify what data goes to which table. I will continue my
search for the holy grail, and if anyone could help me on my quest, i
would greatly appreciate it!
Thx all
raisinodd wrote:
fk*****@gmail.com wrote:
Hi all,

I have a problem with the issue in the subject, i have all data in one
big excel file,
in a denormalized form, and on the other side, i have mysql database
with many tables, which is already in production, and it is of course
in the 3rd NF. How do i go about importing that excel file , is there
any good tool i could use to handle prim/foreign key issues for me?
Any advice appreciated!

Thanks


There are two options. The first is to convert the excel file to CSV,
import it into the database in its own table, then populate the
normalised table using INSERT INTO table VALUES ( SELECT ... FROM
excel_table WHERE ... ); This doesn't work too well if you're using
auto incremented keys to join the values, though.

The second option is to just bite the bullet and write your own import
utility. Perl excels at string manipulation and DB access, but any
language will do. This is the better route if:

a) You use automatically incremented primary key fields
b) The data you're importing is not brand new, but must be linked to
existing records
c) It's not possible to go with option 1 due to complexity / lack of
identifying informaiton in the excel file.

Regards,
Ian


Jun 26 '06 #4

This discussion thread is closed

Replies have been disabled for this discussion.