Witam, mam problem.
Opiszę cała sytuację, ponieważ jestem dopiero początkujący i nie wiem jak się za to zabrać.
Stworzyłem bazę danych w Microsoft SQL Serverze 2008 (prawy na Databases -> new database).
Wyskakuje okienko ‘New Database’, wpisuję databasename: sql_test, wybieram owner’a: W4der_PC/wader. Zatwierdzam wszystko.
Baza zostaje utworzona. Tworzę tam tabele i uzupełniam.
wchodzę w konsolę i wpisuję:
rails sql_test
Teraz mam problem żeby połączyć tą bazę danych z Railsami. Znalazłem podobny wątek na tym forum, ale jest już on mało aktualny i linki w nim wygasły.
Znalazłem na stronę: http://rubyrailsandwindows.blogspot.com/2008/03/rails-2-and-sql-server-2008-on-windows_24.html
Gdzie pisze żeby w pliku ‘database.yml’, sekcję ‘development’ zmienić na:
adapter: sqlserver
mode: odbc
dsn: sqlserverapp
username: user
password: secret
host: mycomputer
Więc w moim przypadku to będzie:
development:
adapter: sqlserver
mode: odbc
dsn: sqlserverapp
username: wader <- może powinno być W4der_PC/wader ?
password: <-Znalazłem gdzieś, że jest to standardowe hasło jakim się loguje do systemu, takie też wpisałem. Ponieważ w SQL serwerze podczas zakładania BD nie podawałem żadnego hasła. Jakby ktoś mógł mi powiedzieć jak je ustawić w SQL serwerze, krok po kroku - byłbym bardzo wdzięczny.
host: localhost
Zatwierdzam zmiany. Otwieram wiersz poleceń i wpisuję:
rake db:create
i wyskakuje mi błąd:
rake aborted! undefined method ‘[]’ for nil:NilClass
Znowu na innej stronie znalazłem że ‘database.yml’ w wypadku MS SQL Server 2008 powinien zawierać takie dane:
development:
adapter: sqlserver
database: sql_test
host: localhost
username: wader
password: <- znowu nie wiem jakie hasło konkretnie.
Zatwierdzam zmiany w database.yml. Otwieram wiersz poleceń i wpisuję:
rake db:create
i wyskakuje mi błąd:
rake aborted! no such file to load – odbc
Wpisywałem w wierszu poleceń aby zainstalował jakiś specjalny gem do tego, ale nawet po jego zainstalowaniu wyskakują te same błędy.
gem install activerecord-sqlserver-adapter
Mógłby ktoś mi pomóc w rozwiązaniu tego problemu? Męczę się już drugi dzień i nie radzę sobie.