2010-05-21 4 views
0

У меня есть приложение Rails, которое я переношу из Rails 1.2 в 2.3. Я также перехожу от Ruby MRI к последней версии JRuby.Как использовать тип данных bigint для первичных ключей в Rails 2.3 с помощью activerecord-jdbc

В существующем (Rails 1.2) приложении я использую плагин mysql_bigint, чтобы обеспечить поддержку 64-битных ints в качестве первичных ключей.

Мне нужно то же самое для нового приложения, работающего на сервере базы данных MS SQL 2005.

Я не уверен, если фрагмент кода здесь поможет: using UUID as primary key in rails and polymorph relationships

Любые идеи, где начать?

ТИА

Dave

+0

возможно дубликат [Как я могу определить первичный ключ BigInt с Rails 2.1 и MySQL] (HTTP : //stackoverflow.com/questions/313136/how-can-i-define-a-bigint-primary-key-with-rails-2-1-and-mysql) – Samuel

+0

Нет. Я уже использовал плагин, упомянутый в другом вопросе. Различия заключаются в следующем: (1) MySQL vs MSSQL, (2) Rails 1.x и 2.x и (3) адаптер mysql activerecord vs jdbc. Благодаря! –

ответ

0

Добавьте к конфигурации/environment.rb:

module JdbcSpec 
    module MsSQL 
    def modify_types(tp) 
     super(tp) 
     tp[:primary_key] = "bigint NOT NULL IDENTITY(1, 1) PRIMARY KEY" 
     tp 
    end 
    end 
end