Hi

Ik voer volgende query uit
insert into 
    trn_partijen (
        id_toernooi,
        speler1,
        speler2,
        ip,
        methode,
        changedate,
        datum,
        uitslag)
    values 
        (
            48,
            608,
            610,
            "127.0.0.1",
            "playerslist",
            "2022-04-20  11:25:44",
            CURRENT_DATE ,
            1
        )
        ,(
            48,
            596,
            608,
            "127.0.0.1",
            "playerslist",
            CURRENT_TIME,
            CURRENT_TIME ,
            3
        )
        ,(
            48,
            589,
            608,
            "127.0.0.1",
            "playerslist",
            CURRENT_TIME,
            CURRENT_TIME ,
            3
        )
    ON DUPLICATE KEY
        UPDATE
            uitslag     = values(uitslag),
            gebruiker   = values(gebruiker),
            methode     = values(methode),
            changedate  = values(changedate),
            datum       = values(datum)

Ik krijg volgende info terug vanuit mysqli_affected_rows($con) en mysqli_info($con)
{"status":"succes","count":4,"message":"4 partijen bijgewerkt.
Records: 3  Duplicates: 1  Warnings: 2"}


Hoe kan ik nu 4 records bijwerken als er maar 3 value groepen zijn En hoe kan ik juiste info terug krijgen?

Er staat ook "warnings 2". Hoe weet ik welke warnings?

Jan
Ik krijg dus niet 1 of 2 maar 4 waar ik 3 verwacht.
Ok de som per record dus.

Maar wat houdt de warnings in?
Was effe zoeken.

To find the detail of the warning, you can use the SHOW WARNINGS command as shown below:

SHOW WARNINGS;


https://www.mysqltutorial.org/mysql-insert-ignore/

[size=xsmall]Toevoeging op 21/04/2022 21:28:50:[/size]

Ik heb zo'n idee dat deze regel onjuist is ;

gebruiker   = values(gebruiker),


Wellicht dat column gebruiker bestaat, maar dan moet je één van deze gebruiken.

gebruiker   = values(speler1),

gebruiker   = values(speler2),
Inderdaad. Had dat ook gevonden na mijn laatste post maar had nog geen tijd om te testen.
resultaat
(
    [0] => Array
        (
            [Level] => Note
            [Code] => 1265
            [Message] => Data truncated for column 'datum' at row 1
        )
)


Ik werk zelden met een date veld maar meestal met datetime. De tijd stond er dus te veel bij.
Probleem opgelost en bedankt voor de hulp.

Ter info "gebruiker = values(gebruiker)" is wel degelijk juist hoor. Ik had dat veld gewoon gewist omdat het hier niets ter zake deed maar heb het vergeten bij het update deel. Gebruiker is de persooon welke de gegevens ingevoerd heeft. Speler 1 en speler 2 zijn de effecteve spelers hun id.

Jan

Reageren