Ich muss eine Datei analysieren, um einzelne SQL-Anweisungen abzurufen und sie vom Rails-Controller auszuführen.Getrennte Zeichenfolge ohne Entfernen des Trennzeichens
Ich habe den folgenden Code:
@sql_file = "#{RAILS_ROOT}/lib/evidence_interface_import.sql"
@sql_stmts_array = File.read(@sql_file).split(";")
@sql_stmts_array.each_with_index do |sql_stmt,s_index|
ActiveRecord::Base.connection.execute(sql_stmt)
end
Die Spaltung entfernt das ";" vom Ende der SQLs. Gibt es eine Möglichkeit, das ";" und spalte immer noch mit ";".
Die Syntax ist falsch für' lines (separator ='; ') '- das funktioniert, aber es ist schlecht geschrieben. Es sollte stattdessen 'lines (';')' sein. Verwenden Sie 'File.readlines (@sql_file, ';')' stattdessen, weil es kürzer ist und dasselbe erreicht. –