Mysql 默认以 mysql 表格格式打印表格结果
+----+----------+-------------+
| id | name | is_override |
+----+----------+-------------+
| 1 | Combined | 0 |
| 2 | Standard | 0 |
+----+----------+-------------+
从 unix shell 调用 mysql 时,不会保留此表格式,但通过 -t 选项很容易请求它
mysql -t my_schema < my_query_file.sql
使用 Ruby 时,我使用 mysql gem 来返回结果。由于 gem 以散列形式返回数据,因此没有保留表格格式的选项。但是,有什么方法可以轻松打印具有该格式的哈希/数据?无需计算间距等?
db = Mysql.new(my_database, my_username, my_password, my_schema)
result = db.query("select * from my_table")
result.each_hash { |h|
# Print row. Any way to print it with formatting here?
puts h
}