Ruby на Rails Enterner Plugin не работает на SQL Server
-
25-09-2019 - |
Вопрос
Ну, теперь, когда я наконец получил свой глупый материал ODBC настроен, я взял файл schema.rb, который я бросил из базы данных Postgres и сделал db:schema:load
На нем в проекте Rails настроен для SQL Server.
Ну, он устанавливает всю схему в базе данных SQL Server, за исключением незначительной детали: внешние ключей не создаются.
Команда Rake не отображает никаких ошибок и говорит о том, что он добавляет внешние ключей. Но они на самом деле не добавляются. Это последний бит от команды:
-- add_foreign_key("workhistoryform", "form", {:name=>"workhistoryform_form_rid_fkey", :column=>"form_rid", :primary_key=>"form_rid"})
-> 0.0002s
-- initialize_schema_migrations_table()
-> 0.0092s
-- assume_migrated_upto_version(0)
-> 0.0942s
[earlz@earlzarch avp_msql_migrations]$
Так в чем проблема? Плагин иностранца не работает на SQL Server? Если это не так, я бы ожидал увидеть ошибку или что-то ...
Решение
Хорошо, я исправил это. Ну, взломал это в любом случае. Иностранцу на самом деле на самом деле не встроен в поддержку SQL Server, но это достаточно близко к SQL_2003, что он работает (минус снимает внешние ключи и обнаруживая схему)
Я сделал сообщение об этом в моем блоге Что в основном откинули, чтобы добавить в список адаптеров и создание очень простого нового адаптера для SQL Server (используйте адаптер PostgreSQL как шаблон). (Изменение драгоценного камня иностранца)
Другие советы
Я исправил это правильно и отправил запрос на тягу к автору иностранца. Тем временем вы можете использовать версию из моего репозитория: https://github.com/cjheath/foreigner.