Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment exécuter un script spécifique après s'être connecté à oracle à l'aide de rails ?

J'ai trouvé la solution :
Créez le fichier /config/initializers/oracle.rb et mettez-y ce code :

ActiveRecord::ConnectionAdapters::ConnectionPool.class_eval do
  def new_connection_with_initialization
    result = new_connection_without_initialization
    result.execute('begin Base_Pck.ConfigSession; end;')
    result
  end
  alias_method_chain :new_connection, :initialization
end

La alias_method_chain vous permet de changer une méthode (new_connection) sans la surcharger, mais en l'étendant. Ensuite, nous n'avons qu'à changer le script en result.execute appeler.