Приложение направляющих подключения к SQL Server 2005 из Windows

Я (печально) должен развернуть приложение направляющих на Windows XP, который должен подключить к Microsoft SQL Server 2005.

При перемещении в сети существует много хитов для подключения от Linux до SQL Server, но не может узнать, как сделать это из Windows.

В основном я выполнил эти шаги:

  • Установите dbi драгоценный камень
  • Установите activerecord-sql-server-adapter драгоценный камень

Мой database.yml теперь похож на это:

development:
  adapter: sqlserver
  mode: odbc
  dsn: test_dj
  host: HOSTNAME\SQLEXPRESS
  database: test_dj
  username: guest
  password: guest

Но я не могу соединить его. Когда я выполняю грабли db:migrate, я добираюсь

IM002 (0) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

Я не пользователь Windows, так не может понять действительно хорошо значение dsn элемента или около этого. У кого-то есть идея, как решить это?

Заранее спасибо


С подсказками Alexander теперь я изменил свой database.yml к:

development:
  adapter: sqlserver
  mode: odbc
  dsn: Provider=SQLOLEDB;Data Source=SCADA\SQLEXPRESS;UID=guest;PWD=guest;Initial Catalog=test_dj;Application Name=test

Но теперь грабли db:migrate возвращают меня:

S1090 (0) [Microsoft][ODBC Driver Manager] Invalid string or buffer length

Я пропускаю что-то?

7
задан marc_s 18 April 2010 в 09:38
поделиться

1 ответ

это образец DSN, который подключается к базе данных с использованием учетной записи пользователя Windows ( лучше всего, когда корпоративная сеть с входом в домен)

Provider = SQLOLEDB; Data Source = MyServer \ MyInstance; Integrated Security = SSPI; Initial Catalog = MyDatabase; Application Name = My Application Name, которое будет отображаться в трассировке

Итак, это использует поставщик OLEDB для SQL Server. SQLNCLI также можно использовать, не пробовал с ODBC. На самом деле этот DSN не совсем протестирован (нужно подождать, пока мой администратор предоставит мне необходимые права), но он был скопирован из рабочего скрипта, который использовал SQLNCLI в качестве поставщика. Источником данных является сервер, и если у него есть именованный экземпляр, его необходимо указать, так что это либо просто Server , либо Server \ Instance . Integrated Security = SSPI сообщает, что вы хотите использовать проверку подлинности Windows. В противном случае вы указываете пользователя и пароль, используя UID = MyUser; PWD = MyPassword . UID, User, Username, Password - я думаю, что все эти параметры работают.

В Интернете есть отличный сайт, который предоставляет всевозможные образцы DSN, просто нигде не могу их найти. Если найду, дам тебе знать.

Если у вас нет поставщика в Rails, проверьте, поддерживает ли Rails компонентную объектную модель Windows (COM). И если это так, вы даже можете инициализировать COM-класс ADODB.Connection, работать с ним с ADO.

А, вот тот сайт, о котором я говорил: http: //www.connectionstrings.com /

1
ответ дан 7 December 2019 в 20:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: