プロが教えるわが家の防犯対策術!

MySQLのTimestamp(14)型のフィールドに
YYYY/MM/DD hh:mm形式のデータをインサートするには
どのようにしたらよいのでしょうか?

MySQL の
Timestamp(14)型(YYYY-MM-DD hh:mm:ss)のフィールドに
YYYY/MM/DD hh:mm 形式のデータ(ssに該当するデータがない)を
インサートするには、
PHPでどのようにしたらよいのでしょうか?
できれば、インサートの際にssに自動的に00をつけたいです。

現在、PHPでinsert文を実行すると、データの桁数が足りないため、
フィールドの値は、0000-00-00 00:00:00になってしまいます。

同じ形式(YYYY/MM/DD hh:mm)のデータをphpMyAdminで
インポートすると、自動的にssに00がつき、
YYYY-MM-DD hh:mm:ss(例 2009-10-20 12:10:00)
となってくれます。

PHPでもphpMyAdminと同じ処理をしたいのですが、
インターネットで検索してもやり方が見つからず、
どのようにしたらよいのか、わかりません。。。

インサートするデータサイズが83MBと大きいので、
PHPで処理したいと思っています。
(phpMyAdminは8MBまでなので)

ご存知の方がいましたら、教えていただけると、
助かります。m(_ _)m

レンタルサーバー:さくら
インサートするファイル:CSVファイル
PHP 5.2.x
MySQL 5.1
phpMyAdmin 3.1.3.1

A 回答 (1件)

>データの桁数が足りないため、


>フィールドの値は、0000-00-00 00:00:00になってしまいます。

そんなことないと思いますが・・・

>phpMyAdminで

自動的には00は付かないはずですが・・・

なにか勘違いがあるとは思いますがとりあえずPHPで整形するなら
date("Y-m-d H:i:s",strtotime($str))で処理してみては?
    • good
    • 0
この回答へのお礼

こんにちは。

早速、回答いただき、ありがとうございました。

インサートする「ss」が足りないデータに
:00を手入力で追加してテストしたところ、
ちゃんとMySQLのフィールドの値が
2009-10-20 12:10:00(例)YYYY-MM-DD hh:mm:ss
になったので、
すっかりデータの桁数が足りないためだと
思っていました。。。(^_^;)

教えていただいた方法で早速、挑戦します!
ありがとうございました。m(_ _)m

お礼日時:2009/10/21 21:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す