PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Menangani urutan Unicode di postgresql

\u0000 adalah satu titik kode Unicode yang tidak valid dalam sebuah string. Saya tidak melihat cara lain selain membersihkan string.

Sejak json hanya string dalam format tertentu, Anda dapat menggunakan fungsi string standar, tanpa khawatir tentang struktur JSON. Pembersih satu baris untuk menghapus titik kode adalah:

SELECT (regexp_replace(the_string::text, '\\u0000', '', 'g'))::json;

Tetapi Anda juga dapat menyisipkan karakter apa pun yang Anda suka, yang akan berguna jika titik kode nol digunakan sebagai beberapa bentuk pembatas.

Perhatikan juga perbedaan halus antara apa yang disimpan dalam database dan bagaimana hal itu disajikan kepada pengguna. Anda dapat menyimpan titik kode dalam string JSON, tetapi Anda harus memprosesnya terlebih dahulu ke beberapa karakter lain sebelum memproses nilainya sebagai json tipe data.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nama kolom dengan jeda baris

  2. Postgres adalah database paling keren – Alasan #2:Lisensi

  3. dblink tidak menggunakan file .pgpass

  4. Pilih sel non-null pertama dari dua kolom di PostgreSQL

  5. PostgreSQL Tidak Ada fungsi Peningkatan Otomatis?