1

DB にコメントを追加するこの PHP/MySQL スクリプトがあります。

$SQL = "INSERT INTO blog_comments (article_id, author_name, comment, path, posted, status) ";
$SQL .= "VALUES (:article_id, :name, :comment, :next_path, Now(), 'Live');";

$STH = $DBH->prepare($SQL);
$STH->bindParam(':article_id', $article_id);
$STH->bindParam(':name', $name);
$STH->bindParam(':comment', $comment);
$STH->bindParam(':next_path', $next_path);
$STH->execute();

[author_name]これを変更して、同じ,[article_id][comment]このテーブルに挿入しないようにする方法はありますか? テーブルにUNIQUE を追加することで 1 つの列が可能であることはわかっていますが、複数の列についてはわかりません。

4

5 に答える 5

5

UNIQUE複数の列に制約を追加できます

CREATE TABLE
(
.....
CONSTRAINT tab_uq UNIQUE (author_name, comment)
)

または既存のテーブルを変更することによって、

ALTER TABLE myTable ADD UNIQUE (author_name, comment);
于 2012-10-23T03:12:43.993 に答える
1

dev.mysql.comも確認できますINSERT ... ON DUPLICATE KEY UPDATE

于 2012-10-23T03:25:34.400 に答える
1

これらの列を複合主キーとして呼び出します。そのようにすると、一意のエントリが作成されます。

于 2012-10-23T03:13:53.300 に答える
1

複数フィールドのユニークキーが作れます

于 2012-10-23T03:14:12.760 に答える
1

データを挿入する前に、データベースで結果を確認できると思います

于 2012-10-23T03:18:51.823 に答える