Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Kesalahan #1064 dengan INSERT INTO

PERBARUI Alasan OP mendapatkan kesalahan sintaks adalah karena koma ditinggalkan setelah deklarasi kolom kata sandi:

CREATE TABLE IF NOT EXISTS `terrier`.`admin` (
  `adminId` int(11) NOT NULL auto_increment,
  `userName` varchar(50) NOT NULL,
  `password` varchar(50) NOT NULL <-- should be a comma here
  PRIMARY KEY (`adminId`))

CATATAN MENYISIPKAN KE KOLOM PENINGKATAN OTOMATIS

Anda mencoba memasukkan ke dalam bidang peningkatan otomatis adminId . Jangan tentukan nilai untuk itu, MySQL secara otomatis menanganinya.

INSERT INTO admin (`userName`, `password`) VALUES ('wardens', 'Bega&1120');

Jika Anda ingin secara eksplisit menempatkan nilai di INSERT . Anda kueri untuk bidang kenaikan otomatis Anda memiliki tiga pilihan berdasarkan menentukan bidang menjadi NOT NULL - '' , 0 , atau NULL . Ini referensinya. .

INSERT INTO admin (`adminId`, `userName`, `password`) VALUES ('', 'wardens', 'Bega&1120');
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES (0, 'wardens', 'Bega&1120');
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES (NULL, 'wardens', 'Bega&1120');

PERBARUI Pengujian lebih lanjut (seperti yang disarankan oleh @eggyal) mengungkapkan bahwa apa saja nilai dapat dimasukkan ke dalam bidang peningkatan otomatis terlepas dari mesin basis data yang ditentukan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pilih catatan non-duplikat di kolom tabel MySQL

  2. Bagaimana cara mendapatkan waktu eksekusi kueri MySQL dari PHP?

  3. Cara memberi nilai dalam beberapa kategori

  4. MySQL memberikan semua hak istimewa ke database kecuali satu tabel

  5. MySQL - Cara menormalkan kolom yang berisi ID yang dipisahkan pembatas