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

Cách giải mã chuỗi unicode base64 bằng T-SQL

Dữ liệu được mã hóa base-64 của bạn chứa một chuỗi UTF-8. MS SQL không hỗ trợ UTF-8, chỉ UTF-16, vì vậy nó không thành công đối với bất kỳ ký tự nào bên ngoài ASCII.

Giải pháp là gửi dữ liệu dưới dạng nvarchar ngay lập tức hoặc mã hóa chuỗi dưới dạng UTF-16 (và gửi dưới dạng varbinary hoặc base-64, nếu cần).

Dựa trên tài liệu Erlang, điều này có thể yêu cầu thư viện bên ngoài, unicode : http://www.erlang.org/doc/apps/stdlib/ unicode_usage.html

Về cơ bản, mặc định dường như là UTF-8, bạn cần chỉ định UTF-16 theo cách thủ công. Hỗ trợ UTF-16 có vẻ hơi rắc rối, nhưng nó sẽ khá khả thi.




  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ách sử dụng UPDATE từ SELECT trong SQL Server

  2. Khắc phục Msg 8116 “Ngày kiểu dữ liệu đối số không hợp lệ cho đối số 1 của hàm chuỗi con” trong SQL Server

  3. Truy vấn hết thời gian chờ khi được thực thi từ web, nhưng cực nhanh khi được thực thi từ SSMS

  4. Cách tốt nhất để triển khai Hiệp hội đa hình trong SQL Server là gì?

  5. Điều gì xảy ra với một giao dịch không được cam kết khi kết nối bị đóng?