Guest User

Untitled

a guest
Apr 17th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. require 'rubygems'
  2. require 'fastercsv'
  3. require 'active_record'
  4.  
  5. # connect to the database (sqlite in this case)
  6. ActiveRecord::Base.establish_connection({
  7. :adapter => "oracle",
  8. :username => "my_uname",
  9. :password => "my_pass",
  10. :database => "10.0.0.1"
  11. })
  12.  
  13. class PcoPhonebook < ActiveRecord::Base
  14. set_table_name "PCO_PHONEBOOK"
  15. set_primary_key "serviceid"
  16. end
  17.  
  18. cnt = 0
  19. increment_cnt = 0
  20. FasterCSV.foreach("phonebook.csv") do |row|
  21. phonebook_entry = PcoPhonebook.find(:first, :conditions => [ "serviceid = ? AND phone = ?", row[0], row[1] ])
  22. if phonebook_entry != nil
  23. phonebook_entry.description = row[3]
  24. phonebook_entry.save
  25. else
  26. new_phonebook_entry = PcoPhonebook.new
  27. new_phonebook_entry.phone = row[1]
  28. new_phonebook_entry.type = row[2]
  29. new_phonebook_entry.description = row[3]
  30. new_phonebook_entry.save
  31. end
  32.  
  33. cnt += 1
  34. increment_cnt += 1
  35. if increment_cnt == 100
  36. puts 'Records processed: ' + cnt.to_s
  37. increment_cnt = 0
  38. end
  39. end
Add Comment
Please, Sign In to add comment