mysql2結果セットの型
ちょっと調べてみました。以下のようなテーブルとレコードを用意します。
mysql> CREATE TABLE t (i INT,f FLOAT,d DECIMAL,b BOOLEAN,v VARCHAR(8),da DATE,dt DATETIME,ts TIMESTAMP);
Query OK, 0 rows affected (0.09 sec)
mysql> INSERT INTO t VALUES (1,2.0,3.0,true,'v',now(),now(),now());
Query OK, 1 row affected, 1 warning (0.00 sec)
検証に使用したコードは以下のとおりです。
require 'mysql2'
client = Mysql2::Client.new(host:"localhost",username:"root",database:"t")
results = client.query("SELECT * FROM t")
results.each do |row|
row.keys.each do |f|
puts f+": "+row[f].to_s+" "+row[f].class.name
end
end
booleanの扱いに注意が必要ですが、あとはまあ直感的ですね。
i: 1 Fixnum
f: 2.0 Float
d: 3 Fixnum
b: 1 Fixnum
v: v String
da: 2015-09-26 Date
dt: 2015-09-26 23:58:30 +0900 Time
ts: 2015-09-26 23:58:30 +0900 Time
参考URL
この記事は役に立ちましたか?
- EnglishWorm.com
- SinglesFan.com
- LmLab.net
- サイトマップ
- 運営者について