kawama.jp

MySQL : Error #1364 : Field ‘%s’ doesn’t have a default value

カテゴリ: MySQL — 2005年12月22日 20:18 — Comments (2)hatebu count

ローカルで開発しようと思い、Windowsにapache、php、mysql5.0を入れた。で、アプリを動かしてみたら、エラーが出る。調べてみたらSQLエラーらしい。
Error #1364 : Field ‘%s’ doesn’t have a default value
というエラーメッセージが。
insert into TABLE (aaa, bbb) values (‘AAA’, ”);
という具合に、”で空白を挿入しようとするのがダメらしい。普段Linux上でMySQLを使ってるときはこんなエラー出たこと無いのに。。。
ググってみても、それらしきソースは見つからない。そこでmy.iniを見てみると、なんだか見慣れないオプションが設定されている。
sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”
http://www.limy.org/program/db/mysql/mysql_option.html
↑このサイトによると、「他ベンダーのデータベースやバージョンの違うMySQLとの互換性の為に使用します。詳細は不明です。」とのこと。
とりあえずコメントアウトしてMySQL再起動してみたら、見事解決。。。
一体なんだったんだろう。よくわからないが、とりあえず良かった。

2 Comments »

  1. 同じエラーで、同じように修正したら治りました。
    助かりました。ありがとうございました。

    コメント by 一見通りすがり — 2008年9月16日 @ 19:17

  2. 似たメッセージが出ていたので、同じように修正したらなおりました。
    ありがとうございました。

    コメント by 通りすがりの見物客 — 2010年4月7日 @ 11:02

RSS feed for comments on this post. TrackBack URL

Leave a comment

Copyright (C) 2002 - 2017 kawama All Rights Reserved. — Powered by WordPress