Вам повезло, друг. Мой первый проект Rails (7 лет назад) был против ужасно настроенной базы данных SQL Server.
В соответствии с вышеизложенным, вам необходимо настроить ваш database.yml соответствующим образом. Но для существующей базы данных, очевидно, маловероятно, чтобы имена таблиц и столбцов соответствовали соглашениям Rails. Хорошей новостью является то, что вы можете переопределить все эти значения по умолчанию. Вот неполный перечень этих директив:
В модели происходит от AR :: Base,
set_table_name 'actual_table_name'
set_primary_key 'actual_primary_key_name'
На различных директив ассоциации (has_one , has_many, принадлежит_to), есть ключи foreign_key, которые позволяют указать имя внешних ключей.
Теперь одна из вещей, которые MS SQL Server позволяет вам выполнять, что такое TERRIBLE, заключается в том, что вы можете вставлять пробелы в имена столбцов. Не бойтесь, вы все равно можете ссылаться на эти столбцы по имени, используя write_attribute («плохо названный столбец») и read_attribute («плохо названный столбец»). Вы также можете обратиться к ним в различных директив, как так:
validates_length_of «Номер факса»,: максимум => 17,: allow_nil => верно
Наконец, вы можете обратиться к подразумеваемые методами эти дьявольски названные столбцы генерировать так:
self.send ('Fax Number =', new_fax_number)
очевидно, что вы не можете ссылаться на них как символы, так как пробелы запрещены символами Руби.
Удачи, и в следующий раз я надеюсь, что вы приступите к работе с реальной РСУБД, как Informix :).
почему эта ошибка происходя ODBC :: Error: S0002? (208) [Microsoft] [ODBC SQL Server Driver] [SQL Server] Недопустимое имя объекта – chinchu
Я не» Знаете, что вы пытаетесь сделать, когда получите его? –