1

I want to run a ruby on rails project in my Ubuntu 12 mechine.After running the command bundle install i used the following command

   rake db:drop db:setup 

it shows

-- create_table("art_clas", {:force=>true})
   -> 0.3222s
-- add_index("art_clas, ["art_id", "clas, {:name=>"index_art_attes_on_art_attribute", :unique=>true})
   -> 0.4328s
.....................................
.....................................

while i using $ rake db:setup command it shows the existing db's

franche_development already exists
franche_test already exists
 -- create_table("art_clas", {:force=>true})
       -> 0.3222s
    -- add_index("art_clas, ["art_id", "clas, {:name=>"index_art_attes_on_art_attribute", :unique=>true})
       -> 0.4328s
    .....................................

Later when i run the project it doesn't show any value from database tables(showing blank). after that i typed following to show the databases. But this operation does not shows my existing databases in the rails project

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test               |
+--------------------+
2 rows in set (0.23 sec)

Executing rake db:drop returns nothing

 $ rake db:drop
 $

and when running the project displaying

Mysql2::Error: Table 'franche_development.arts' doesn't exist: SELECT `arts`.* FROM `arts`  WHERE `arts`.`active` = 1 .....

How can i set up and use the existing databases and tables from rails project.

Is it due to any code error or database setup??

1 Answer 1

1

So you want to use an existing database created in mySQL in ruby. You need to setup an configuration in config/database.yml.

here is an example

development:
adapter: mysql2
encoding: utf8
database: my_db_name
username: root
password: my_password
host: 127.0.0.1
port: 3306

Also you need to install mysql gem. and also update your Gemfile about mysql gem

By default rails setup databases in sqlite and not in mySQL and is stored in RAILS_ROOT/db/development.sqlite3 . This means that you will not be able to see the tables by using mysql if you have created them in rails, you need to use sqlite3 in order to interact with them

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.