Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mencari teks yang berisi emoji?

Saya mengalami situasi di mana migrasi db dari satu server ke server lain menyebabkan emoji menghilang. Jadi saya harus menemukan semua baris dalam tabel asli yang berisi karakter utf8 (emoji) tinggi.

Kueri ini berfungsi seperti yang diharapkan:

SELECT field FROM `table` WHERE HEX(field) RLIKE "^(..)*F.";

sebelum melakukan apa pun, periksa apakah Anda menggunakan utf8mb4 di db, tabel, DAN koneksi Anda:

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';

+--------------------------+--------------------+
| Variable_name            | Value              |
+--------------------------+--------------------+
| character_set_client     | utf8mb4            |
| character_set_connection | utf8mb4            |
| character_set_database   | utf8mb4            |
| character_set_filesystem | binary             |
| character_set_results    | utf8mb4            |
| character_set_server     | utf8mb4            |
| character_set_system     | utf8               |
| collation_connection     | utf8mb4_unicode_ci |
| collation_database       | utf8mb4_unicode_ci |
| collation_server         | utf8mb4_unicode_ci |
+--------------------------+--------------------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ketika mysql_query mengembalikan false

  2. Cara Setup Replikasi MySQL di RHEL, Rocky dan AlmaLinux

  3. Struktur kode Transaksi PHP PDO MySQL

  4. Pernyataan yang Disiapkan PHP PDO dan Pengikatan Nilai Memberikan Kesalahan Nomor Parameter Tidak Valid

  5. Komentar bersarang di PHP &MySQL