phpMyAdmin
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> phpMyAdmin

PHP Chèn vào lỗi cú pháp MySQL

TableNames là các Định danh vì vậy chúng không nên được trích dẫn bằng dấu ngoặc kép. Vì tableName bạn đã sử dụng không phải là một từ khóa dành riêng, bạn có thể chỉ cần xóa những dấu ngoặc kép xung quanh đó,

INSERT INTO student (FirstName, LastName....

Khi bạn bọc một thứ gì đó bằng một dấu ngoặc kép, nó buộc đối tượng đó trở thành một chuỗi ký tự. Vì vậy, khi số nhận dạng được bao bọc bằng dấu ngoặc kép, điều đó có nghĩa là chúng không phải là số nhận dạng nữa.

Máy chủ ném ra một ngoại lệ vì INSERT INTO mong đợi một số nhận dạng không phải là chuỗi ký tự.

Khi bạn vô tình sử dụng tên bảng là MySQL dành riêng Từ khóa , không sử dụng một dấu ngoặc kép để phân tách số nhận dạng nhưng với backticks .

Là một phụ chú, truy vấn dễ bị tấn công với SQL Injection nếu giá trị ( s ) của các biến đến từ bên ngoài. Mời các bạn cùng xem bài viết dưới đây để biết cách phòng tránh nhé. Bằng cách sử dụng PreparedStatements bạn có thể loại bỏ việc sử dụng các dấu ngoặc kép xung quanh các giá trị.



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. CREATE ALGORITHM =UNDEFINED DEFINER

  2. Tôi có thể đặt lịch sự kiện MySQL bằng phpMyAdmin không?

  3. Không thể truy cập cơ sở dữ liệu MySQL sau khi nâng cấp lên Mountain Lion (sử dụng MAMP)

  4. Phpmyadmin Xuất / Nhập vấn đề với ngắt dòng

  5. Môi trường LAMP tốt nhất cho Mac