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

MySQL Ubah Collation dari Semua Tabel

Kumpulan Database yang berbeda memungkinkan Anda untuk menyimpan berbagai jenis karakter dalam database. Secara default, MySQL memiliki set karakter latin1 dengan susunan latin1_swedish_ci. Namun, Anda dapat dengan mudah mengubah susunan MySQL dari tabel tertentu, semua tabel atau bahkan seluruh database. Berikut cara mengubah susunan di MySQL.


Cara Mengubah Susunan Semua Tabel di MySQL

Kita akan melihat langkah-langkah untuk mengubah susunan di MySQL.


Berikut query SQL untuk mengubah susunan dari satu tabel MySQL

ALTER TABLE tbl_name 
[[DEFAULT] CHARACTER SET charset_name] 
[COLLATE collation_name]

Dalam kueri di atas, Anda perlu menentukan nama tabel tbl_name . Anda juga dapat secara opsional menentukan kumpulan karakter charset_name dan collation collation_name .

Bonus Baca :Blog Database Teratas untuk diikuti

Berikut adalah contoh untuk mengubah susunan semua tabel database menjadi utf8_general_ci. Ganti nama_database dan nama_tabel di bawah ini dengan database dan nama bidang masing-masing.

alter table database_name.table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Jika Anda ingin mengubah susunan semua tabel di database, Anda perlu menjalankan kueri di atas untuk setiap tabel secara terpisah.

Karena ini bisa sangat membosankan, kami membuat kueri SELECT yang menghasilkan pernyataan tabel ALTER untuk setiap tabel di database kami. Pertama, inilah kueri SELECT yang mengembalikan semua detail terkait tabel di database Anda.

SELECT * FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_SCHEMA="database_name" 
AND TABLE_TYPE="BASE TABLE";

Bonus Baca :Alternatif Meja Kerja MySQL Teratas

Kami memodifikasi kueri SELECT di atas untuk membuat pernyataan ALTER TABLE untuk setiap tabel di database Anda.

Inilah kueri pemilihan yang akan menghasilkan kueri SQL untuk semua tabel di database Anda. Ganti nama_database dan collation_name di bawah ini dengan database dan nama susunan Anda dan jalankan untuk menghasilkan kueri SQL untuk mengubah susunan semua tabel di basis data Anda.

SELECT CONCAT("ALTER TABLE ", TABLE_SCHEMA, '.', TABLE_NAME," COLLATE collation_name;") AS ExecuteTheString FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA="database_name" AND TABLE_TYPE="BASE TABLE";

Bonus Baca :Cara Mengaktifkan Slow Query Log di MySQL

Berikut kueri SQL lain untuk mengubah susunan semua tabel menjadi utf8.

SELECT CONCAT('ALTER TABLE ', tbl.TABLE_SCHEMA, '.', tbl.TABLE_NAME, ' CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;') FROM information_schema.TABLES
 tbl WHERE tbl.TABLE_SCHEMA = 'database_name'

Setelah Anda memiliki daftar kueri ALTER TABLE untuk setiap tabel, Anda dapat menyalin-menempel dan menjalankannya untuk mengubah susunan semua tabel.

Semoga artikel di atas dapat membantu Anda mengubah susunan semua tabel dalam database di MySQL.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Melindungi Database MySQL dari Kampanye Ransomware

  2. Cara Meningkatkan MySQL 5.5 ke 5.6 di Ubuntu 14.04

  3. Bagaimana saya bisa menggunakan executemany untuk memasukkan ke MySQL daftar kamus dengan Python

  4. MySQL Daftar Semua Prosedur

  5. Node.js tidak dapat mengautentikasi ke MySQL 8.0