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

pg_query_params return error:bind message cung cấp 2 tham số, nhưng câu lệnh chuẩn bị sẵn yêu cầu 1 tham số

Dấu ngoặc kép được sử dụng trong SQL cho các ký tự chuỗi. Điều đó có nghĩa là điều này:

'$2'

chỉ là một chuỗi chứa các ký tự $2 chứ không phải là một trình giữ chỗ. Nếu bạn muốn có một trình giữ chỗ, bạn cần bỏ dấu ngoặc kép:

$Query = pg_query_params($db, '...password=(crypt($2,password))...', array(33,'thepassword'));

Điều đó cung cấp cho bạn trình giữ chỗ thay vì chuỗi ký tự.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tortoise ORM cho Python không có quan hệ trả về của các thực thể (Pyndantic, FastAPI)

  2. Truy vấn SQL để chọn các cặp giá trị trong cột 1 khớp với một trong hai mẫu trong cột 2

  3. Chọn nhiều id từ một chuỗi PostgreSQL

  4. Tương lai của Postgres-XL

  5. Đẩy dữ liệu từ Chủ đề Kafka sang PostgreSQL trong JSON