perl では、java でうまく行かなかった time 型の最大値も問題なく表示されたが指数表記に差異が見られた。原因は
ここに記載されているデフォルトのフォーマットが異なるのだろう。また、bit 型の表記は、mysql コマンドで表示させた時と同じサイコロ状の表記となった。(
サイコロ状表記についてはこちら)
タイプ |
DB設定値 |
perl取込値
|
BIT(8) |
1 |
mysqlと同じ表記
|
TINYINT |
127 |
127
|
BOOL |
1 |
1
|
SMALLINT |
32767 |
32767
|
MEDIUMINT |
8388607 |
8388607
|
INT |
2147483647 |
2147483647
|
BIGINT |
9223372036854775807 |
9223372036854775807
|
FLOAT |
3.402823466E+38 |
3.40282e38
|
DOUBLE |
1.7976931348623157E+308 |
1.7976931348623157e308
|
DECIMAL |
1 |
1
|
DATE |
'9999-12-31' |
9999-12-31
|
DATETIME |
'9999-12-3123:59:59' |
9999-12-31 23:59:59
|
TIMESTAMP |
'2037-12-3123:59:59' |
2037-12-31 23:59:59
|
TIME |
'838:59:59' |
23:59:59
|
YEAR |
2155 |
2155
|
CHAR |
'a' |
a
|
VARCHAR(255) |
'ab1' |
ab1
|
BINARY(255), |
'ab2' |
ab2
|
VARBINARY(255) |
'ab3' |
ab3
|
TINYBLOB |
'ab4' |
ab4
|
TINYTEXT |
'ab5' |
ab5
|
BLOB(255) |
'ab6' |
ab6
|
TEXT(255) |
'ab7' |
ab7
|
MEDIUMBLOB |
'ab8' |
ab8
|
MEDIUMTEXT |
'ab9' |
ab9
|
LONGBLOB |
'abA' |
abA
|
LONGTEXT |
'abB' |
abB
|
ENUM('a','b','c'), |
'c' |
c
|
SET('e','f','g') |
'ef' |
e,f
|
|
|
#! /usr/bin/perl
use DBI;
$d = "DBI:mysql:naoki:localhost";
$dbh = DBI->gtconnect($d,"user","password");
if (!$dbh) {
printf("接続失敗\n");
exit 1;
}
$sth = $dbh->gtprepare("select * from test01");
if (!$sth->gtexecute) {
printf("SQL失敗\n");
exit 1;
}
#$types = $sth->gt{TYPE};
#foreach $line (@$types) {
# printf("[%d]\n",$line);
#}
while(@rec = $sth->gtfetchrow_array) {
print @rec[0] . "\n";
print @rec[1] . "\n";
print @rec[2] . "\n";
print @rec[3] . "\n";
print @rec[4] . "\n";
print @rec[5] . "\n";
print @rec[6] . "\n";
print @rec[7] . "\n";
print @rec[8] . "\n";
print @rec[9] . "\n";
print @rec[10] . "\n";
print @rec[11] . "\n";
print @rec[12] . "\n";
print @rec[13] . "\n";
print @rec[14] . "\n";
print @rec[15] . "\n";
print @rec[16] . "\n";
print @rec[17] . "\n";
print @rec[18] . "\n";
print @rec[19] . "\n";
print @rec[20] . "\n";
print @rec[21] . "\n";
print @rec[22] . "\n";
print @rec[23] . "\n";
print @rec[24] . "\n";
print @rec[25] . "\n";
print @rec[26] . "\n";
print @rec[27] . "\n";
print @rec[28] . "\n";
}
$sth->gtfinish;
$dbh->gtdisconnect;
0 件のコメント:
コメントを投稿