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

Cara Memperbaiki Nilai String yang Salah di MySQL

Terkadang Anda mungkin mendapatkan kesalahan "Nilai String Salah" saat mencoba memasukkan data ke tabel MySQL, atau mengimpor data eksternal ke database MySQL. Pada artikel ini, kita akan melihat cara memperbaiki nilai string yang salah di MySQL.


Cara Memperbaiki Nilai String yang Salah di MySQL

Ini adalah kesalahan umum saat Anda mencoba memasukkan nilai ke dalam tabel MySQL yang tidak memiliki pengkodean UTF8 atau kumpulan karakter.


1. Periksa Set Karakter Default

Masuk ke MySQL dan jalankan perintah berikut untuk memeriksa nama set karakter default database Anda. Ganti database_name dengan nama database Anda.

mysql> SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name = "database_name";

Jika database Anda tidak memiliki encoding UTF8, maka Anda perlu mengubahnya ke UTF8. Sebelum itu, kita perlu membuat cadangan database kita.


2. Cadangkan basis data MySQL

Keluar dari MySQL dan jalankan perintah berikut untuk mengambil cadangan database MySQL Anda. Ganti nama_pengguna , kata_sandi dan nama_database dengan nama pengguna, kata sandi, dan nama basis data Anda masing-masing.

$ sudo mysql -u user_name -p pass_word database_name > backup.sql


3. Ubah Kumpulan Karakter Tabel

Jalankan perintah berikut untuk mengubah set karakter semua tabel di database Anda ke UTF8. Ganti database_name dengan nama database Anda

$ sudo mysql --database=database_name -B -N -e "SHOW TABLES" | awk '{print "SET foreign_key_checks = 0; ALTER TABLE", $1, "CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; SET foreign_key_checks = 1; "}' | mysql --database=database_name

MySQL memungkinkan Anda untuk mengubah set karakter hanya dari satu tabel pada satu waktu. Mungkin membosankan untuk menjalankan perintah terpisah untuk mengubah set karakter dari setiap tabel. Perintah di atas mencantumkan semua tabel dalam database dan mengonversi set karakternya ke UTF8 satu per satu, secara otomatis.


4. Ubah kumpulan karakter basis data

Masuk ke MySQL dan jalankan perintah berikut untuk mengubah set karakter database ke UTF8. Ganti database_name dengan nama database.

mysql> ALTER DATABASE database_name CHARACTER SET utf8 COLLATE utf8_general_ci;

Sekarang jika Anda memasukkan data ke database MySQL, seharusnya tidak memberikan kesalahan. Ubiq memudahkan untuk memvisualisasikan data, dan memantaunya di dasbor waktu nyata. Coba Ubiq gratis.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menjalankan file MySQL *.sql di PHP

  2. Manajemen akun pengguna, peran, izin, otentikasi PHP dan MySQL - Bagian 3

  3. Cara Mendapatkan Total Pengguna Kumulatif Per Hari di MySQL

  4. Apakah transaksi bersarang diperbolehkan di MySQL?

  5. Operand Harus Berisi 1 Kolom - MySQL TIDAK DI