htaccess404回答ポイント 200ptウォッチ 1

MySQL 5.5について。


NOT NULLやUNIQUEなどの制約の中にCHECKがあると思いますが、MySQL 5.5では反映されない(使用できない)のでしょうか?
前にデータベースのバージョンによっては使えないものもあるとは聞いたことはありますが…。

mySQLのサイトをみたのですが英文でよくわかりません。

例えば、INTやBIGINTなどを設定したカラムに文字を入れた場合、
エラーを返したいと思っています。
今のところ、エラーは返さず、0が入力されてしまいます。
UPDATE文の場合、前のデータが0で上書きされてしまいました...。


PHPなどでSQL文を発行する際にチェックすればいいのかもしれませんが、
2重にチェックしたいと考えています。

MySQL 5.5でcheck制約が使えないのであれば、SQL文を発行する際にチェックする
しかないのでしょうか?
もしPHP側の不正入力のチェックもすり抜けてしまった場合、SQL側でエラーを出せればと思っているのですが。(保険的な対策として)

check制約が使えない理由などもあるのでしょうか

できれば詳しい説明をよろしくお願いします。

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2012-03-23 15:55:02
終了日時
2012-03-23 21:04:32
回答条件
1人5回まで

この質問のカテゴリ

この質問に含まれるキーワード

MySQL2612SQL1319PHP7798データベース1894

人気の質問

メニュー

PC版