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

Oracle JDBC PreparedStatement bỏ qua khoảng trống theo dõi

Có thể, tùy theo hoàn cảnh và nếu phiên bản Oracle của bạn đủ mới, bạn có thể cân nhắc thêm cột ảo vào bảng của bạn có chứa đúng giá trị?

ALTER TABLE yfs_organization ADD (
  ORGANIZATION_KEY_FIXED VARCHAR(80)
    GENERATED ALWAYS AS (TRIM(ORGANIZATION_KEY)) VIRTUAL
  );

Sau đó, trong mã của bạn, thay đổi duy nhất sẽ là sử dụng ORGANIZATION_KEY_FIXED để truy vấn DB:

SELECT ID,ORGANIZATION_KEY_FIXED
  FROM yfs_organization
  WHERE ORGANIZATION_KEY_FIXED='testFTP_receipt521'

(hãy thử trên http://sqlfiddle.com/#!4/8251d/1 )

Điều này có thể tránh để phân tán xung quanh ứng dụng của bạn mã cần thiết để khắc phục lỗi đó. Và có thể dễ dàng chuyển đổi sau khi nó được khắc phục.

Như một lợi ích bổ sung, bạn có thể thêm chỉ mục trên các cột ảo nếu cần.



  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ú pháp câu lệnh Oracle select đơn giản

  2. Sự cố về trình kích hoạt PL / SQL

  3. Hàm NLS_CHARSET_NAME () trong Oracle

  4. Tạo trình kích hoạt trên Oracle từ một người dùng lắng nghe các sự kiện cho một người dùng khác

  5. Cài đặt SQLPlus để tạo tệp dữ liệu được phân tách bằng tab