sql >> Database teknologi >  >> RDS >> Mysql

Skinner og MySQL-syntaksfejl med flere SQL-sætninger i en eksekveringsblok

Problemet her er, at Rails Mysql2-databaseadapteren kvæler, når der er flere SQL-kommandoer inden for den samme udførelsesblok. Følgende vil køre fint:

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

Denne adfærd kan forvirre dig, hvis du kommer fra at bruge PostgreSQL med Rails, da Postgres-adapteren ikke har den samme begrænsning.




  1. Forbedrer Foreign Key forespørgselsydeevne?

  2. Høj pladsforbrug Fra crfclust.bdb

  3. Mysql skiftebordsmotor MyISAM til InnoDB

  4. mysql erstatte til alternativ