Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak zdekodować ciąg znaków Unicode base64 za pomocą T-SQL

Twoje dane zakodowane w base-64 zawierają ciąg znaków UTF-8. MS SQL nie obsługuje UTF-8, tylko UTF-16, więc zawodzi dla znaków spoza ASCII.

Rozwiązaniem jest wysłanie danych jako nvarchar od razu lub zakodować ciąg jako UTF-16 (i wysłać go jako varbinary lub base-64, w razie potrzeby).

Na podstawie dokumentacji Erlanga może to wymagać zewnętrznej biblioteki unicode :http://www.erlang.org/doc/apps/stdlib/ unicode_usage.html

Zasadniczo domyślny wydaje się być UTF-8, musisz ręcznie określić UTF-16. Obsługa UTF-16 wydaje się trochę niezgrabna, ale powinna być całkiem wykonalna.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SUBSTRING() i wartość szesnastkowa

  2. Usuń wszystkie dane z bazy danych SQL Server

  3. Musisz zadeklarować zmienną skalarną @Id?

  4. Node.js i Microsoft SQL Server

  5. Utwórz wyzwalacz DML w SQL Server