Vấn đề ở đây là bộ điều hợp cơ sở dữ liệu Rails Mysql2 bị nghẹt khi có nhiều lệnh SQL trong cùng một khối thực thi. Những điều sau sẽ chạy tốt:
execute <<-SQL
ALTER TABLE properties
ADD name VARCHAR(255) NOT NULL;
SQL
execute <<-SQL
ALTER TABLE properties
ADD CONSTRAINT fk_properties_name
FOREIGN KEY (name)
REFERENCES valid_property_names (property_name);
SQL
Hành vi này có thể khiến bạn bối rối nếu bạn đang sử dụng PostgreSQL với Rails vì bộ điều hợp Postgres không có cùng giới hạn.