Pemotongan Nilai Berganda MYSQL Salah semasa KEMASKINI
Pertanyaan kemas kini SQL yang disediakan cuba mengubah suai nama dan lajur name_eng dalam jadual shop_category. Walau bagaimanapun, ralat ditemui dengan mesej "Nilai DOUBLE salah dipenggal: 'Secolul XVI - XVIII'". Ralat ini biasanya berlaku apabila cuba memasukkan atau mengemas kini data dalam lajur yang ditakrifkan sebagai jenis data berangka (mis., GANDA, TERAPUNG) dengan nilai yang tidak boleh diwakili dalam ketepatan atau skala yang dipratentukan lajur.
Untuk membetulkan isu ini, adalah penting untuk mengesahkan jenis data lajur nama dan name_eng. Mengikut struktur jadual yang disediakan, kedua-dua lajur ditakrifkan sebagai varchar(250), menunjukkan bahawa mereka mengharapkan nilai rentetan dan bukannya nilai angka. Oleh itu, ralat tidak mungkin disebabkan oleh jenis data yang salah.
Sebaliknya, ralat mungkin dikaitkan dengan sintaks yang salah dalam pernyataan KEMASKINI. Perhatikan kehadiran kata kunci DAN antara nama dan tugasan name_eng. Sintaks ini tidak betul; dalam penyata KEMASKINI, berbilang tugasan lajur hendaklah dipisahkan dengan koma tanpa menggunakan DAN.
Pernyataan Kemas Kini yang Dibetulkan:
Pernyataan yang diperbetulkan berikut akan berjaya mengemas kini lajur yang ditentukan:
<code class="sql">UPDATE shop_category SET name = 'Secolul XVI - XVIII', name_eng = '16th to 18th centuries' WHERE category_id = 4768</code>
Pernyataan ini akan menetapkan nilai rentetan 'Secolul XVI - XVIII' dan 'abad ke-16 hingga ke-18' masing-masing kepada lajur nama dan name_eng, tanpa menghadapi sebarang ralat.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'Nilai DOUBLE salah dipenggal' Semasa KEMASKINI MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!