Created the following Ruby Migration program 001_create_aropenitems.rb class CreateAropenitems < ActiveRecord::Migration def self.up create_table :aropenitem do |t| t.int :cust_no t.date :doc_date t.integer :doc_no t.string :doc_type, :limit => 1 t.integer :apply_to_no t.date :doc_due_date t.decimal :amt1, :precision => 9, :scale => 2 t.decimal :amt2, :precision => 9, :scale => 2 t.string :ref, :limit => 30 t.int :slsmn1 t.int :slsmn2 t.int :slsmn3 t.decimal :amt3, :precision => 7, :scale => 2 t.int :city_county_tax end add_index(:aropenitem, [:cust_no, :doc_date, :doc_no, :doc_type], :unique => true, :name => ''cust_doc'') add_index(:aropenitem, [:apply_to_no, :cust_no], :name => ''apply_to'') add_index(:aropenitem, :city_county_tax, :name => ''texas_tax'') end def self.down drop_table :aropenitems end When I run rake I get the following trace: lenyel@lenyel-laptop:~/bruskerb$ rake --trace (in /home/lenyel/bruskerb) ** Invoke default (first_time) ** Invoke migrate (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute migrate == CreateAropenitems: migrating =============================================-- create_table(:aropenitem) -> 0.1718s -- add_index(:aropenitem, [:cust_no, :doc_date, :doc_no, :doc_type], {:unique=>true, :name=>"cust_doc"}) rake aborted! An error has occurred, all later migrations canceled: Mysql::Error: Key column ''cust_no'' doesn''t exist in table: CREATE UNIQUE INDEX `cust_doc` ON `aropenitem` (`cust_no`, `doc_date`, `doc_no`, `doc_type`) /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract_adapter.rb:219:in `log'' Don''t understand why I would be getting thie error. MySQL version 5.1.37 activerecord 2.3.5 mysql 2.8.1 Thanks Len -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Are u sure the table created with the field ''cust_no'' ? If it exists? Execute the query which is in the log for creating index inside your mysql account and check the reason for the error. Revert back me if u find any solution for it. Thank you. -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Hello, Here''s my version of your migration file: http://gist.github.com/313327 Changed t.int to t.integer as i dont think rails understand int as in integer (maybe i''m wrong here). Although changed table name to aropenitems so it''s in plural all over migration file. At least now this migration completes sucessfully... On Feb 24, 6:37 am, Len Sumnler <li...-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote:> Created the following Ruby Migration program 001_create_aropenitems.rb > > class CreateAropenitems < ActiveRecord::Migration > def self.up > create_table :aropenitem do |t| > t.int :cust_no > t.date :doc_date > t.integer :doc_no > t.string :doc_type, :limit => 1 > t.integer :apply_to_no > t.date :doc_due_date > t.decimal :amt1, :precision => 9, :scale => 2 > t.decimal :amt2, :precision => 9, :scale => 2 > t.string :ref, :limit => 30 > t.int :slsmn1 > t.int :slsmn2 > t.int :slsmn3 > t.decimal :amt3, :precision => 7, :scale => 2 > t.int :city_county_tax > end > add_index(:aropenitem, [:cust_no, :doc_date, :doc_no, :doc_type], > :unique => true, :name => ''cust_doc'') > add_index(:aropenitem, [:apply_to_no, :cust_no], :name => > ''apply_to'') > add_index(:aropenitem, :city_county_tax, :name => ''texas_tax'') > end > > def self.down > drop_table :aropenitems > > end > When I run rake I get the following trace: > > lenyel@lenyel-laptop:~/bruskerb$ rake --trace > (in /home/lenyel/bruskerb) > ** Invoke default (first_time) > ** Invoke migrate (first_time) > ** Invoke environment (first_time) > ** Execute environment > ** Execute migrate > == CreateAropenitems: migrating > =============================================> -- create_table(:aropenitem) > -> 0.1718s > -- add_index(:aropenitem, [:cust_no, :doc_date, :doc_no, :doc_type], > {:unique=>true, :name=>"cust_doc"}) > rake aborted! > An error has occurred, all later migrations canceled: > > Mysql::Error: Key column ''cust_no'' doesn''t exist in table: CREATE UNIQUE > INDEX `cust_doc` ON `aropenitem` (`cust_no`, `doc_date`, `doc_no`, > `doc_type`) > /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract_adapter.rb:219:in > `log'' > > Don''t understand why I would be getting thie error. > > MySQL version 5.1.37 > activerecord 2.3.5 > mysql 2.8.1 > > Thanks > Len > -- > Posted viahttp://www.ruby-forum.com/.-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Ugis Ozols wrote:> Hello, > > Here''s my version of your migration file: http://gist.github.com/313327 > > Changed t.int to t.integer as i dont think rails understand int as in > integer (maybe i''m wrong here). Although changed table name to > aropenitems so it''s in plural all over migration file. > > At least now this migration completes sucessfully...Hello, That was exactly the problem. I just had looked at it so long. Your are the man. Thanks you for your time and effort. Len -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.