CẬP NHẬT Lý do OP gặp lỗi cú pháp là do dấu phẩy bị bỏ trống sau phần khai báo cột mật khẩu:
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`))
LƯU Ý KHI CHÈN VÀO LĨNH VỰC TĂNG TỰ ĐỘNG
Bạn đang cố gắng chèn vào một trường tăng dần tự động adminId
. Không chỉ định giá trị cho điều đó, MySQL tự động xử lý nó.
INSERT INTO admin (`userName`, `password`) VALUES ('wardens', 'Bega&1120');
Nếu bạn muốn đặt một giá trị rõ ràng trong INSERT
của mình truy vấn cho trường tăng tự động mà bạn có ba lựa chọn dựa trên việc chỉ định trường là NOT NULL
- ''
, 0
hoặc NULL
. Đây là tài liệu tham khảo.
.
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');
CẬP NHẬT Thử nghiệm thêm (theo đề xuất của @eggyal) cho thấy rằng bất kỳ giá trị có thể được chèn vào các trường tăng tự động bất kể công cụ cơ sở dữ liệu được chỉ định.