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

psycopg2 cách đối phó với TypeError:không phải tất cả các đối số được chuyển đổi trong quá trình định dạng chuỗi

Các đối số sql bạn chuyển cho execute phải ở trong một bộ hoặc danh sách, ngay cả khi chỉ có một trong số chúng. Điều này được ghi chú trong tài liệu:

Đối với ràng buộc các biến vị trí, đối số thứ hai phải luôn là thứ tự, ngay cả khi nó chứa một biến duy nhất. Và hãy nhớ rằngPython yêu cầu dấu phẩy để tạo một bộ phần tử duy nhất:

Vì vậy, bạn cần làm như sau:

ip ="127.0.0.1" 
sql="select count(*) from radacct where nasipaddress=%s"
cur.execute(sql, (ip,))



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cơ sở dữ liệu ngủ đông và nhiều người thuê sử dụng các lược đồ trong PostgreSQL

  2. Câu lệnh INSERT INTO có điều kiện trong postgres

  3. Chọn các cột có tên cột cụ thể trong PostgreSQL

  4. PostgreSQL:giữa với datetime

  5. Sự cố khi truy xuất bản ghi có mảng trống