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

Memasukkan string teks dengan hex ke dalam PostgreSQL sebagai byte

Anda dapat mengonversi string hex ke byte menggunakan decode fungsi (di mana "pengkodean" berarti pengkodean nilai biner ke beberapa nilai tekstual). Misalnya:

select decode('DEADBEEF', 'hex');
      decode      
------------------
 \336\255\276\357

yang lebih dapat dimengerti dengan keluaran default 9.0:

   decode   
------------
 \xdeadbeef

Alasan Anda tidak bisa hanya mengatakan E'\xDE\xAD\xBE\xEF' adalah bahwa ini dimaksudkan untuk membuat nilai teks, bukan byte, jadi Postgresql akan mencoba mengubahnya dari pengkodean klien ke pengkodean basis data. Anda dapat menulis format pelarian byte seperti itu, tetapi Anda perlu menggandakan garis miring terbalik:E'\\336\\255\\276\\357'::bytea . Saya pikir Anda dapat melihat mengapa format byte diubah.... IMHO decode() function adalah cara yang wajar untuk menulis input, meskipun ada beberapa overhead yang terlibat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kueri Sub SQL dalam batasan centang

  2. Meneruskan id pengguna ke pemicu PostgreSQL

  3. ScaleGrid PostgreSQL di VMware Cloud Infrastructure

  4. Pertahankan UUID di PostgreSQL menggunakan JPA

  5. Postgres Kiri Gabung dengan kondisi dimana