Conectar Rails con SQL Server 2008 desde Ubuntu

Buenos días, tengo un problema que soy incapaz de resolver. He leído
infinidad de páginas y foros (todo en inglés prácticamente) y no hallo
una solución.
El problema es que tengo una aplicación en Rails con la versión 2.3.2 y
necesito conectarme a una base de datos SQL Server 2008 que está ubicada
en un servidor externo (el de la empresa). Esta empresa me ha habilitado
un servidor de nombre PRUEBAS\PRUEBAS en una dirección ip
XXX.XXX.XXX.XXX y una base de datos llamada pruebas_development en la
que hay una tabla usuarios en la que quiero leer información y escribir
y modificar datos.

He seguido los pasos que dice la siguiente página:
http://oldwiki.rubyonrails.org/rails/pages/HowtoConnectToMicrosoftSQLServerFromRailsOnLinux
y también los de esta:
http://flux88.com/2011/01/connecting-to-sql-server-2008-from-ruby-on-linux/

Ambas son parecidas y te mandan instalar unixODBC y FreeTDS y la verdad
no se para que sirven pero los he instalado como bien dicen ambas
páginas.

Las gemas que he instalado son: ‘dbi’, ‘activerecord-sqlserver-adapter
(2.3.2)’, ‘odbc-rails’, ‘ruby-odbc’ y ‘dbd-odbc’. Estas gemas
supuestamente (igual no todas) son las que se necesitan para la
conexión.

El database.yml que tengo es el siguiente:
development:
adapter: sqlserver
mode: odbc
#username: user
#password: pass
server: PRUEBAS\PRUEBAS
database: pruebas_development
host: XXX.XXX.XXX.XXX
dsn: Server=PRUEBAS\PRUEBAS;Database=pruebas_development

el campo para el usuario y la contraseña están comentados porque no son
necesarios para poder acceder

También he probado varias configuraciones de este databse.yml jugando
con el campo DSN:
dsn: Driver={SQL
Server};Server=PRUEBAS\PRUEBAS;Database=pruebas_development;Uid=user
;Pwd=pass
También he probado con quitar los campos server y database porque ya
están incluidos en la línea del dsn y nada

He intentado hacer las pruebas desde consola con ruby script/console
y al arrancar arrnca (puedo ejecutar órdenes) pero da este mensaje:

/usr/lib/ruby/gems/1.8/gems/activerecord-sqlserver-adapter-2.3.2/lib/active_record/connection_adapters/sqlserver_adapter.rb:774:in
`initialize’:ODBC::Error: S1090 (0) [unixODBC][Driver Manager]Invalid
string or buffer length

He buscado y rebuscado y probado diferentes cosas y me sigue sin
funcionar, aunque igual no estoy metiendo bien los datos. Tampoco se
como poder hacer una consulta a la tabla ‘usuarios’.

Mirando páginas hablan de modificar unos archivos de lo que mandaron
instalar las páginas anteriores de ‘how to connect …’

En el freetds.conf:
[TEST_PRUEBAS]
host = XXX.XXX.XXX.XXX
port = 1433
tds version = 8.0

En el odbc.ini:
[TEST_PRUEBAS]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = PRUEBAS\PRUEBAS
Database = pruebas_development

Agradecería que me indicáseis que hago mal o que me falta o que me sobra
porque me estoy desesperando

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs