2011-01-14 5 views
1

問合せがエラーなく正しく実行されるかどうかPHPで確認します。PHPで問合せがエラーなく正しく実行されるかどうかを確認してください。

私はテーブルに特定のレコードを挿入することが実際にそれを挿入せずに有効であることを確認したいと思います。

私は致命的なコンボPHP + MySQLの:)

+5

MySQLにのみ通知できるものをPHPに求めることはできません。 – BoltClock

+1

あなたの質問は何ですか? –

+0

私はちょうど私が感じるべきものを尋ねているIm :)ときには人々が答えたいものではない:D BTWはい私はそれを世話するでしょう – theReverseFlick

答えて

6

を開き、新しいトランザクションを使用し、テストクエリの実行後に、それをロールバックします。 mysql_error()を使用して、テストクエリが成功したかどうかを確認します。

+0

+1言い換えれば、MySQLにチェックしてください。 – BoltClock

+0

MyISAMはトランザクションをサポートしていません... –

+0

MyISAMの場合は、実際のテストの代わりにテスト(一時的かもしれません)を使用する方法が1つしかありません。しかし、この方法では、追加のSQLクエリの前処理が必要です。 –

3

1:その後、あなたは次の文をラップ、mysqliの接続$conn
$conn->autocommit(false);
$conn->query("INSERT x into y");
echo $conn->error;
$conn->rollback();
$conn->close(); //Without committing changes

+0

(Valera Leontyevの考え方の詳細な例は+1) –

+0

Meh、私は彼が投稿する前にこれを書いていました。コードサンプルをまとめていたので、もっと時間がかかりました。 –

1

のMySQL文の "トランザクションを開始" とクエリのあなたのセットを開始を開きますtry/catchブロックで "コミット"または "ロールバック"を送信する

mysqlのトランザクションでhereを参照してください

関連する問題