localhost 上のデータベースへの単純な Web インターフェイスを設計しました。localhost で、レコードを作成するために SQL コマンドを送信しようとして、フィールドの 1 つで無効な FK を使用しようとすると、PHPmysql_query
は false を返し、PHP スクリプトmysql_error()
はもちろん FK に関する情報を持っている を返します。違反しようとした。
プロジェクト全体を HostGator アカウントに移動し、まったく同じ SQL セットアップ スクリプトを使用して DB テーブルを作成しました。ただし、ここで FK に違反しようとすると、mysql_query
true が返されるため、PHP スクリプトはリクエストが成功したかのように動作しますが、もちろん成功しませんでした。
どちらの場合も DB には何も挿入されませんが、何らかの理由で後者の場合mysql_query
は true が返されます。また、後者の場合mysql_error()
、明らかにエラーを犯したにもかかわらず、空に見えます。
これを制御するサーバー設定はどこかにありますか?
ありがとう!
編集:
同様の問題、リモート サーバーで、FK 依存関係を持つレコードを削除できます。ホストゲーターのバージョンでは、参照整合性がまったく強制されていないようです。:-(