Hmmm, I don't know anything about isql, but two possibilities stand
out.
If this is a once-in-a-while administrative task, you could create a
rake task (I really like this tutorial for that:
Using the Rake Build Language)
On the other hand, you could create a script in lib and bootstrap
rails to it. The template code I've been using to get the rails
environment ready is:
#!/usr/bin/env ruby
# Ensure the environment was specified
if ARGV.length != 1
puts "usage: ruby file_name.rb <rails_env>"
exit 1
end
def connect(environment)
conf = YAML::load(File.open(File.dirname(__FILE__) + '/../config/
database.yml'))
ActiveRecord::Base.establish_connection(conf[environment])
end
# Open ActiveRecord connection
connect(ARGV.first)
At this point, you've got Rails running. You'll want to have included
any libraries necessary to use isql. Then, you're just writing ruby
code between isql and rails.
Oh, btw, I forgot to mention. If you take the second approach--a lib/
file_name.rb approach to this, you'd just dump that in your crontab
and call it regularly.
If you needed to just access your information at runtime through
rails, you'd put something in environment.rb to tell rails how to
access isql, but then you'd be on your own for actually doing
something with that connection.