Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Einfügen in mysql problem

Die von Ihnen geschriebene Anweisung ist nur dann korrekt, wenn Sie auch möchten, dass das zugehörige 'Name'-Feld NULL ist.

Wenn Sie tatsächlich möchten, dass beide Felder ausgefüllt werden, sollten Sie Folgendes tun:

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

und verwenden Sie dann das mysqli oder PDO Familie von Funktionen zum Binden von ? Parameter auf die vom Benutzer bereitgestellten Werte. Dies ist erforderlich, um Ihre Datenbank vor SQL-Injection-Angriffen zu schützen.

Ich würde auch erwägen, ein paar weitere Felder hinzuzufügen:

  • Eine eindeutige id Feld (MySQL's auto_increment ist gut dafür), damit Sie bestimmte Datensätze löschen und/oder ändern können
  • Ein timestamp Feld, damit Sie eine Aufzeichnung (Wortspiel nicht beabsichtigt) darüber haben, wann diese Daten hinzugefügt wurden