Mysql memasukkan aksara pinyin melalui INSERT IGNORE INTO Bagaimana untuk menyelesaikan masalah?

王林
Lepaskan: 2023-05-31 19:55:04
ke hadapan
947 orang telah melayarinya

1. Persediaan

Sediakan excel kata kunci import kelompok, yang mengandungi 2 kata kunci

1.pokemon

2.pokémon

Nota : Satu daripada dua kata kunci ini ialah e biasa, dan satu lagi ialah suku kata é

Sediakan skrip sql jadual pangkalan data

-- 导入关键词表
CREATE TABLE `keyword_lexicon` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `keyword` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '搜索关键词',
  PRIMARY KEY ("id"),
  UNIQUE KEY "idx_keyword" ("keyword") USING BTREE COMMENT '关键词'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='导入关键词表';
Salin selepas log masuk

2 Scene recurrence

Cukup tulis antara muka import, kod tidak dilampirkan Perlu diingat bahawa kaedah INSERT IGNORE INTO digunakan untuk mengimport sql Jika kata kunci sudah wujud dalam jadual, ia tidak akan ditulis pada jadual. (Medan kata kunci ditetapkan sebagai indeks unik)

Contoh pengimportan sql adalah seperti berikut

INSERT IGNORE INTO keyword_lexicon (`keyword`) VALUES ('pokemon'),('pokémon')
Salin selepas log masuk

Selepas melaraskan antara muka untuk melengkapkan import, semak jadual pangkalan data dan dapatkan bahawa terdapat hanya satu keping data Pokemon.

Mysql memasukkan aksara pinyin melalui INSERT IGNORE INTO Bagaimana untuk menyelesaikan masalah?

3 Selesaikan masalah

Melihat struktur jadual, kami mendapati bahawa peraturan pengisihan medan kata kunci ialah

    <.>
  • utf8mb4_general_ci

Mysql memasukkan aksara pinyin melalui INSERT IGNORE INTO Bagaimana untuk menyelesaikan masalah?

Peraturan penyortiran ini akan mengenali watak -watak dengan suku kata seperti & eacute; hanya akan menjadi satu rekod selepas mengimport melalui INSERT IGNORE INTO, cuma tukar peraturan pengisihan kepada

  • utf8mb4_bin

Mysql memasukkan aksara pinyin melalui INSERT IGNORE INTO Bagaimana untuk menyelesaikan masalah?

Kemudian import sekali lagi Periksa keputusan dan anda akan mendapati bahawa kedua-dua kepingan data telah dimasukkan ke dalam jadual, dan masalah telah diselesaikan.

Mysql memasukkan aksara pinyin melalui INSERT IGNORE INTO Bagaimana untuk menyelesaikan masalah?

Ringkasan

  • utf8mb4_bin adalah sensitif huruf besar-besaran dan juga membezakan aksara seperti e dan é

  • utf8_genera_ci tidak sensitif huruf besar-besaran dan tidak membezakan antara aksara seperti e dan é

Nota: utf8_general_cs sensitif huruf besar-besaran, tetapi tidak membezakan antara e dan é

Jika anda perlu membezakan aksara dengan suku kata dan tidak mahu menjadi sensitif huruf besar kecil, anda boleh menggunakan fungsi LOWER()

apabila menanyakan medan yang sepadan dalam SQL

Atas ialah kandungan terperinci Mysql memasukkan aksara pinyin melalui INSERT IGNORE INTO Bagaimana untuk menyelesaikan masalah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan