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

Khoảng trắng không được phép sau tiền tố tham số ':'

Từ kinh nghiệm của tôi, tôi sẽ cho bạn biết. Có hai trường hợp
1) Bạn muốn chỉ định một tham số trong truy vấn có giá trị được đặt động.

eg: where user_id = :userId

Ở đây, bạn sẽ không gặp bất kỳ sự cố nào nếu bạn đang đặt tham số có cùng tên với "userId";
2) Bạn đang đánh máy giá trị

eg: select count(id) :: integer

khi bạn đang làm điều này, bạn phải sử dụng ký tự thoát nếu không chế độ ngủ đông sẽ nghĩ rằng đó là một tham số. Và nó sẽ báo lỗi "Tất cả các thông số chưa được đặt" bạn có thể khắc phục điều này bằng cách viết mã sử dụng ký tự thoát

eg:select count(id) \\:\\: integer

Vì vậy, điều này sẽ giải quyết vấn đề của bạn Và nếu bạn sử dụng sai dấu gạch chéo tiến thay vì dấu gạch chéo ngược, bạn sẽ gặp lỗi "không cho phép khoảng trắng sau tiền tố"

Wrong: select count(id)//://: integer
Right: select count(id)\\:\\: integer

Nhưng tôi thực sự khuyên bạn nên sử dụng hàm CAST thay vì sử dụng "::" operatorie này select CAST(count(id) as integer) Đây là cách truyền kiểu tốt hơn và nó sẽ dẫn đến lỗi tối thiểu



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01795:số biểu thức tối đa trong danh sách là 1000, cách tách chuỗi

  2. sql (oracle) để chọn 10 bản ghi đầu tiên, sau đó là 10 bản ghi tiếp theo, v.v.

  3. phân phối thanh toán sql

  4. Gọi Python từ Oracle

  5. ScaleGrid thêm Đám mây Oracle cho Lưu trữ Cơ sở dữ liệu Được Quản lý