sql >> Databasteknik >  >> RDS >> Mysql

Rails och MySQL-syntaxfel med flera SQL-satser i ett exekveringsblock

Problemet här är att Rails Mysql2-databasadaptern choker när det finns flera SQL-kommandon inom samma exekveringsblock. Följande kommer att fungera bra:

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

Detta beteende kan förvirra dig om du kommer från att använda PostgreSQL med Rails eftersom Postgres-adaptern inte har samma begränsning.




  1. Visa "Inga matchningar hittades" eller dölj DIV-resultat (AJAX &MySQL)

  2. Hur man döljer SQL-databaser som en användare inte har tillgång till

  3. mySQL-partitionering av multi-fil kontra en-fil prestanda?

  4. Kan en INNER JOIN erbjuda bättre prestanda än FINNS