require “mysql”
dbh = Mysql.real_connect(“localhost”, “root”, “******”, “valuation”)
res = dbh.query(“show tables”)
puts res
res.free
the output is:
#Mysql::Result:0x997c014
in mysql console:
mysql> show tables;
±--------------------+
| Tables_in_valuation |
±--------------------+
| balance_sheet |
| test |
±--------------------+
2 rows in set (0.00 sec)
how can i get it with ruby?
Il 26/04/10 04.33, Pen T. ha scritto:
Is more simple than you think… i just rewrite your code with a little
“add”:
require “mysql”
dbh = Mysql.real_connect(“localhost”, “root”, “******”, “valuation”)
res = dbh.query(“show tables”)
- puts “Tables_in_valutation”
- res.each {|x| p x.to_s}
res.free
Or…
require “mysql”
dbh = Mysql.real_connect(“localhost”, “root”, “******”, “valuation”)
res = dbh.query(“show tables”)
- rows = []
- puts “Tables_in_valutation”
- res.each {|x| p x.to_s; rows<<x}
res.free
require “mysql”
dbh = Mysql.real_connect(“localhost”, “root”, “******”, “valuation”)
res = dbh.query(“show tables”)
- rows = []
- puts “Tables_in_valutation”
- res.each {|x| p x.to_s; rows<<x}
res.free
You can take this one step further to actually print a table with
hirb, http://github.com/cldwalker/hirb:
require “mysql”
dbh = Mysql.real_connect(“localhost”, “root”, “******”, “valuation”)
res = dbh.query(“show tables”)
rows = []
res.each {|e| rows << e }
puts Hirb::Helpers::AutoTable.render(rows, :headers=>[“Tables in
valuation”])
With my own database this produces:
±--------------------+
| Tables in valuation |
±--------------------+
| nodes |
| schema_migrations |
| taggings |
| tags |
| trees |
| urls |
±--------------------+
6 rows in set
If you’re interested in having irb act as a database shell, try hirb
with one of
the database gems listed in
Gabriel