Mysql
 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Правилен PDO синтаксис за параметризирана заявка, използваща LIKE със заместващи знаци (напр. %, _)

  2. Намерете дубликати в същата таблица в MySQL

  3. PDO::заявка срещу PDOStatement::execute (PHP и MySQL)

  4. премахване на дублиращи се редове въз основа на стойност на една колона

  5. Как да обединя цели набори от резултати в MySQL?