2013-03-25 42 views
8

tôi cần phải di chuyển một bảng mysql cũ như thế này:Làm thế nào để thay đổi khóa chính trong tệp di chuyển đường ray?

Products 
    name (string, primary_key) 

để schema này:

Products 
    id (integer, primary_key, auto_generated) 
    name (unique) 

tôi cần các giá trị Products.id dân cư trong bảng mới. Làm cách nào để tôi có thể ghi tệp di chuyển đường ray? Tôi đang sử dụng Rails 3.2.7

Tôi hiện có 2 sự cố: 1. Tôi không thể tìm thấy phương pháp xóa khóa chính trong ActiveRecord :: Di chuyển 2. Tôi không biết cách tạo giá trị cho mới thêm khóa chính.

+0

có thể trùng lặp [cách thêm khóa chính vào bảng trong đường ray] (http://stackoverflow.com/questions/9644509/how-to-add-a-primary-key-to-a -table-in-rails) – Lucio

Trả lời

4

Nếu bạn đang ở trên PostgreSQL, cú pháp là hơi khác nhau.

ALTER TABLE <table_name> DROP CONSTRAINT <table_name>_pkey;