sql >> Databasteknik >  >> RDS >> Mysql

Syntaxfel för MySQL PÅ DUBLIKATNYCKELUPPDATERING

INSERT INTO ExtraStats (
    DATE
    , supportStaff
    , startEmails
    , endEmails
    , emailsAnswered
    )
VALUES (
    '$startDate'
    , '$supportStaff'
    , '$startEmail'
    , '$endEmail'
    , '$emailAnswered'
    )
    ON DUPLICATE KEY

UPDATE 
        supportStaff = '$supportStaff'
        , startEmails = '$startEmail'
        , endEmails = '$endEmail'
        , emailsAnswered =  '$emailAnswered'

Du kan också använda VALUES() funktion så att du inte skickar värdena två gånger:

    ...
    ON DUPLICATE KEY    
UPDATE 
          supportStaff = VALUES(supportStaff)
        , startEmails = VALUES(startEmails)
        , endEmails = VALUES(endEmails)
        , emailsAnswered = VALUES(emailsAnswered)


  1. Vad är skillnaden mellan USER() och SYS_CONTEXT('USERENV','CURRENT_USER')?

  2. Lagra IPv6 i databasen

  3. Multi-cloud-distribution för MariaDB-replikering med WireGuard

  4. Anslut med tidigare motsvarighet för MySQL