0

table1 のテーブル スキーマを考えてみましょう。

id: 整数
country_id: 整数
説明: varchar(50)

そしてクエリ:

INSERT INTO table1(id, country_id, description) VALUES (1, '20', 'Test Desc'); 

これは MySQL 4x では機能しますが、MySQL 5x では失敗します (エラー 1067 (42000): Invalid default value for .. ")。

これが発生する理由はわかっています。country_idintであるため、引用しないでください。クエリが失敗しないように、4x のように動作させる 5x 以下の mysql スイッチはありますか?

このようなクエリを使用するアプリケーションを継承しました。すべてのクエリを修正する時間が見つかるまで、簡単な修正を探しています。

ありがとうございました

4

1 に答える 1

1

「20」で問題ありません。MySql (5.x) も '20' を 20 にキャストし、=> これは有効な挿入です

于 2009-10-16T10:30:23.317 に答える