Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Truy vấn tìm nạp python mysql

Điều này gây nhầm lẫn cho tất cả những người làm việc với MySQLDB. Bạn đang truyền các đối số cho hàm thực thi, không thực hiện thay thế chuỗi python. % S trong chuỗi truy vấn được sử dụng giống như một câu lệnh chuẩn bị hơn là một thay thế chuỗi python. Điều này cũng ngăn chặn việc đưa vào SQL vì MySQLDB sẽ thực hiện việc thoát cho bạn. Như bạn đã sử dụng trước đây (sử dụng% và thay thế chuỗi), bạn rất dễ bị tiêm.

  1. Không sử dụng dấu ngoặc kép. MySQLDB sẽ đặt chúng ở đó (nếu cần).
  2. Sử dụng a, thay vì%. Một lần nữa, bạn đang truyền một tuple làm đối số cho hàm thực thi.

    self.dbc.execute ("select * from car where reg =% s", (reg,))



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql tham gia 3 bảng

  2. Cách xuất dữ liệu từ SQL Server 2005 sang MySQL

  3. Cách quản lý các quy trình phía máy chủ bằng MySQL

  4. câu lệnh chuẩn bị java mysql

  5. Bắt org.hibernate.exception.JDBCConnectionException:không thể thực hiện truy vấn ngay cả thông qua JNDI