Guest User

Untitled

a guest
Jun 18th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. STORED_PROCEDURE = 'find_the_id'
  2. class AddStoredProcedure < ActiveRecord::Migration
  3. def self.up
  4.  
  5. sql_statement <<-STORED_PROC
  6. DELIMITER $$
  7. CREATE PROCEDURE find_the_id(IN the_id INT)
  8. BEGIN
  9. SELECT name FROM items WHERE id = the_id;
  10. END $$
  11. DELIMITER ;
  12. STORED PROC
  13. conf = Rails::Configuration.new.database_configuration[RAILS_ENV]
  14. host = conf['host'] ? conf['host'] : 'localhost'
  15. database = conf['database']
  16. username = conf['username'] ? conf['username'] : 'root'
  17. password = conf['password'] ? conf['password'] : ''
  18. cmd_line = 'mysql5 -h ' + host + ' -D ' + database + ' -u ' + username
  19. cmd_line += ' -p ' + password if password.nil?
  20. cmd_line += ' < ' + sql_file
  21.  
  22. unless system(cmd_line)
  23. raise Exception, 'Error creating stored procedure ' + STORED_PROCEDURE
  24. end
  25. end
  26.  
  27. def self.down
  28. execute 'DROP PROCEDURE ' + STORED_PROCEDURE
  29. end
  30. end
Add Comment
Please, Sign In to add comment