sql >> データベース >  >> RDS >> Mysql

MySQLまたはPHPを使用して重複エントリを防ぐ適切な方法

    一時テーブルを使用できます。 phpアプリにすべてを一時テーブルに挿入してから、この種のロジックを使用してクエリを呼び出します。

    insert into mainTable 
    (field1, field2, etc)
    select field1, field2, etc
    from tempTable 
    where (subquery to check for existing records goes here)
    

    または、try/catchを使用することもできます。私はphpの構文を知りませんが、他の多くの言語がこの種のことを実行できるので、phpも同様に実行できると期待しています。

    try
    code to insert record
    catch
    if the error code is the one for duplicate records, do nothing.
    if it's something else, handle it accordingly.
    


    1. #1411-INSERT INTO...SELECTの関数str_to_dateの日時値が正しくありません

    2. Green-DAOで双方向1:mを処理する正しい方法

    3. SQLServerが一意でないクラスター化インデックスに4バイト整数を追加するのはなぜですか

    4. MySQL:INTをDATETIMEに変換します