sql >> Database teknologi >  >> RDS >> Mysql

indsæt i mysql-problemet

Den erklæring, du har skrevet, er kun korrekt, hvis du også ønsker, at det tilknyttede 'navn'-felt skal være NULL.

Hvis du rent faktisk ønsker, at begge felter skal udfyldes, skal du gøre:

INSERT INTO opt (name, confirmed) VALUES (?, ?)

og brug derefter mysqli eller PDO familie af funktioner til at binde ? parametre til de brugerleverede værdier. Dette er nødvendigt for at beskytte din database mod SQL-injektionsangreb.

Jeg ville også overveje at tilføje endnu et par felter:

  • Et unikt id felt (MySQL's auto_increment er god til dette), så du kan slette og/eller ændre specifikke poster
  • Et timestamp felt, så du har en registrering (ikke tænkt ordspil) over, hvornår disse data blev tilføjet


  1. Opslagstavle - Databaseoptimering

  2. mysql automatisk inkrement fejl

  3. SQL WHERE-sætning, der matcher værdier med efterfølgende mellemrum

  4. Sådan får du en enkelt sidste post med et bestemt id i codeigniter