Loading Seed Data from MySQL exported file

Hello,

I’m developing an application, and I want to automatically load seed
data into database. The seed data exists in a SQL file (exported from
MySQL database). I want the application to load such data when I make
db:reset or db:migrate:reset or db:seed.

Any help?

2010/1/18 Ahmed A. [email protected]:

Hello,

I’m developing an application, and I want to automatically load seed
data into database. The seed data exists in a SQL file (exported from
MySQL database). I want the application to load such data when I make
db:reset or db:migrate:reset or db:seed.

When you do rake db:seed it runs db/seeds.rb, so you can do what you
want in there. If you are not using latest Rails you might need to
check this works for you as it was only recently introduced.

Colin

I believe, converting of data to the seed.rb format is not an option?

If so, the easiest way would be to write a rake task to use mysql or
sqlite3 to upload your data. Here’s the sample that I put together
quickly: db.rb · GitHub It replaces the standard
db:seed with the SQL-based version.

  • Aleksey

Aleksey G. wrote:

I believe, converting of data to the seed.rb format is not an option?

If so, the easiest way would be to write a rake task to use mysql or
sqlite3 to upload your data. Here’s the sample that I put together
quickly: db.rb · GitHub It replaces the standard
db:seed with the SQL-based version.

  • Aleksey

Thank you Aleksey, it seems good solution, I will try it

Ahmed

Hi Ahmed,
I think you want to create fixtures for your seed data:

http://api.rubyonrails.org/classes/Fixtures.html

Fixtures can even be scoped to an environment so you can have distinct
seed data for Development, Testing and Production. But, recent
versions of Rails use something called seed.rb now which allows you to
write seed data in Ruby, so fixtures are kind of old hat now.

Explaining how to use these would require more space than a forum post
will allow, but if you get stuck on something please post back here
and we’ll try to help you out.

Cheers!

Billee D. wrote:

Hi Ahmed,
I think you want to create fixtures for your seed data:

http://api.rubyonrails.org/classes/Fixtures.html

Fixtures can even be scoped to an environment so you can have distinct
seed data for Development, Testing and Production. But, recent
versions of Rails use something called seed.rb now which allows you to
write seed data in Ruby, so fixtures are kind of old hat now.

Explaining how to use these would require more space than a forum post
will allow, but if you get stuck on something please post back here
and we’ll try to help you out.

Cheers!

Hello Billee,

Thanks for your response. Does fixtures support importing data from
MySQL?

On Jan 18, 2:31Â am, Ahmed A. [email protected] wrote:

Hello,

I’m developing an application, and I want to automatically load seed
data into database. The seed data exists in a SQL file (exported from
MySQL database). I want the application to load such data when I make
db:reset or db:migrate:reset or db:seed.

2010/1/18 Billee D. [email protected]:

Hi Ahmed,
I think you want to create fixtures for your seed data:

Since the OP has his seed data in SQL format I do not think that
fixtures are appropriate.

Colin