Ik heb het opgelost door de migratie met SQL-uitvoering als volgt te schrijven:
class CreateAcctTransactions < ActiveRecord::Migration
def self.up
# create ACCT_TRANSACTIONS table
create_table "acct_transactions", id: false, force: true do |t|
t.integer "id", limit: 8, null: false
t.timestamp "date", null: false
t.text "description", limit: 255
t.decimal "amount", precision: 10, scale: 2, null: false
t.integer "account_id", limit: 8, null: false
t.integer "transaction_type_id", null: false
end
execute "ALTER TABLE acct_transactions ADD PRIMARY KEY (id);"
add_index "acct_transactions", ["account_id"], name: "fk_acct_transactions_accounts1_idx", using: :btree
add_index "acct_transactions", ["date", "id"], name: "BY_DATE", using: :btree
add_index "acct_transactions", ["transaction_type_id"], name: "fk_acct_transactions_transaction_types1_idx", using: :btree
end
def self.down
drop_table :acct_transactions
end
end
Let op de uitvoeren statement @ line 12. Terwijl ik daar was, heb ik ook het veld "datum" gewijzigd in een tijdstempel, wat ik oorspronkelijk toch van plan was te doen. Het is niet mooi en schendt "conventie", maar het werkt perfect, dus ik kan verder gaan. Bedankt voor het kijken.