Bagaimana untuk Menguruskan Pemangkasan Data dan Tetapan Ralat dalam MySQL: Mod Ketat lwn Pemangkasan Automatik?

Linda Hamilton
Lepaskan: 2024-11-04 11:03:02
asal
809 orang telah melayarinya

How to Manage Data Truncation and Error Settings in MySQL: Strict Mode vs. Automatic Truncation?

Menguruskan Pemangkasan Data MySQL dan Tetapan Ralat

Pangkalan data MySQL mempunyai gelagat berbeza apabila mengendalikan rentetan yang terlalu panjang semasa sisipan. Satu contoh mungkin memotong data, manakala satu lagi menimbulkan ralat. Jurang ini boleh diurus melalui tetapan MySQL tertentu.

Gelagat MySQL Lalai

Secara lalai, MySQL beroperasi dalam mod "ketat". Ini bermakna bahawa sebarang input ke dalam jadual mesti sepadan dengan spesifikasi lajur, termasuk sekatan panjang. Jika rentetan melebihi panjang yang ditentukan, MySQL akan membuang ralat berikut:

ERROR 1406 (22001): Data too long for column 'xxx' at row 1
Salin selepas log masuk

Melumpuhkan Mod Ketat

Untuk menukar tingkah laku ini dan membenarkan pemangkasan automatik terlalu panjang rentetan, anda boleh melumpuhkan tetapan mod ketat. MySQL menawarkan dua tetapan berkaitan:

  • STRICT_TRANS_TABLES: Mengawal mod ketat untuk jadual transaksi
  • STRICT_ALL_TABLES: Mengawal mod ketat untuk semua jadual

Langkah untuk Lumpuhkan Mod Ketat:

  1. Sambung ke pangkalan data MySQL anda menggunakan alat seperti MySQL Workbench atau baris arahan.
  2. Keluarkan arahan berikut untuk melumpuhkan STRICT_TRANS_TABLES dan STRICT_ALL_TABLES:
SET GLOBAL sql_mode = 'TRADITIONAL';
SET SESSION sql_mode = 'TRADITIONAL';
Salin selepas log masuk
  1. Sahkan tetapan baharu dengan menjalankan SELECT @@sql_mode;.

Kesan Melumpuhkan Mod Tegas

Melumpuhkan mod ketat melegakan pengesahan data MySQL, membenarkan pemotongan automatik rentetan panjang. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa ini berpotensi membawa kepada kehilangan data dan isu integriti. Adalah disyorkan untuk mempertimbangkan dengan teliti kemungkinan akibat sebelum melumpuhkan mod ketat.

Atas ialah kandungan terperinci Bagaimana untuk Menguruskan Pemangkasan Data dan Tetapan Ralat dalam MySQL: Mod Ketat lwn Pemangkasan Automatik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!