L'errore completo èActiveRecord errore: SAVEPOINT active_record_1 non esiste
ActiveRecord::StatementInvalid: Mysql2::Error: SAVEPOINT active_record_1 does not exist: ROLLBACK TO SAVEPOINT active_record_1
Sto scrivendo una prova di unità e di ottenere questo errore ogni volta che provo a creare un nuovo oggetto ActiveRecord - ma solo dopo un certo punto. Ciò si verifica dopo queste righe:
ActiveRecord::Base.connection.execute "DROP TABLE IF EXISTS foo"
ActiveRecord::Base.connection.execute "CREATE TABLE foo (id INTEGER PRIMARY KEY)"
(La tabella 'foo' verrà popolato con i dati se il mio test ha esito positivo)
Prima le righe precedenti, posso scrivere qualcosa di simile
User.create(email => '[email protected]')
e tutto funziona bene. Tuttavia, se provo a scrivere la riga precedente dopo la mia chiamata ad ActiveRecord :: Base.connection.execute, ottengo questo errore SAVEPOINT descritto sopra. Ho anche provato a inserire le mie istruzioni execute all'interno di una transazione, ma ciò non ha aiutato. Sono perplesso.
CRONACA - sto usando Rails 3.2.8
Come si fa? –