Je suis en train de se connecter au serveur de base de données SQL 2005 de la machine * NIX:Comment se connecter à partir de rubis MS Sql Server
je la configuration suivante: Linux 64 bits
ruby -v ruby 1.8.6 (2007-09-24 patchlevel 111) [x86_64-linux] important gems: dbd-odbc (0.2.4) dbi (0.4.1) active record sql server adapter - as plugin
ruby- odbc 0,9996 (installé sans aucune option.) unixODBC est installé FreeTDS est installé
cat /etc/odbcinst.ini
[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
CPTimeout =
CPReuse =
FileUsage = 1
DSN:
DRIVER=FreeTDS;TDS_Version=8.0;SERVER=XXXX;DATABASE=XXX;Port=1433;uid=XXX;pwd=XXXX;"
ou
DRIVER=/usr/lib/libtdsodbc.so;TDS_Version=8.0;SERVER=XXXX;DATABASE=XXX;Port=1433;uid=XXX;pwd=XXXX;"
je reçois l'erreur suivante:
>>ActiveRecord::Base.sqlserver_connection({"mode"=>"ODBC", "adapter"=>"sqlserver", "dsn"=>my_dns)
DBI::DatabaseError: IM002 (0) [unixODBC][Driver Manager]Data source name not found, and no default driver specified
from /usr/lib/ruby/1.8/DBD/ODBC/ODBC.rb:95:in `connect'
from /usr/lib/ruby/1.8/dbi.rb:424:in `connect'
from /usr/lib/ruby/1.8/dbi.rb:215:in `connect'
from /opt/ublip/rails/current/vendor/plugins/activerecord-sqlserver-adapter/lib/active_record/connection_adapters/sqlserver_adapter.rb:47:in `sqlserver_connection'
Il ressemble à ODBC incapable de trouver le pilote ODBC approprié, mais je n'ai aucune idée pourquoi.
J'ai eu un problème avec /usr/lib/libtdsodbc.so qui est vide dans le paquet par défaut debian free-tds dev, mais j'ai résolu le problème en supprimant le paquet cassé et l'installation des sources.
Apprécierez n'importe quelle pensée!
Note: Je suis Albe de se connecter en utilisant les mêmes étapes sur Mac 10.5
Tout d'abord, quelle est la version de Ruby que vous utilisez sur "mac 10.5"? Je pense que 1.8.6 pourrait être le problème. Aussi .. Quelle version d'Activerecord utilisez-vous? – Trevoke