Apakah kaedah pengisihan MySQL terbaik untuk kes yang mengandungi ruang?
P粉793532469
2023-09-02 10:38:35
<p>Jadi, saya mempunyai projek yang membolehkan pengguna mengemas kini medan dan fungsi ini berfungsi dengan baik. </p>
<p>Masalah berlaku apabila pengguna memasukkan ruang dalam medan <code>' '</code>. </p>
<p>Sebagai contoh, katakan medan pada asalnya ialah <code>test1</code> dan pengguna menukarnya kepada <code>test 1</code>. Perubahan akan berkuat kuasa dan juga akan mencetak seperti yang dijangkakan. </p>
<p>Walau bagaimanapun, jika pengguna terus menaip apa-apa daripada <code>test1</code> hingga <code> atau apa-apa lagi, perubahan ini tidak akan berlaku sama sekali. Tidak kira apa input pengguna. </p>
<p>Saya merasakan ini ada kaitan dengan pengumpulan yang saya gunakan dalam pangkalan data, tidak kira pengumpulan yang saya gunakan, masalah itu berterusan dan, terus terang, saya tidak tahu banyak tentang pengumpulan. </p>
<p>Kod untuk mengemas kini medan adalah sangat mudah: </p>
<pre class="brush:php;toolbar:false;">`$query = $pdo -> prepare("PILIH 1 DARI jadual DI MANA medan = ?");
$query -> bindValue(1, $new_name);
$query ->
$num = $query ->
if ($num == 0) {
$query = $pdo -> sediakan("KEMASKINI jadual SET jadual = ? DI MANA jadual = ?");
$query -> bindValue(1, $new_name);
$query -> bindValue(2, $old_name);
$query ->
}`</pre>
<p>Adakah sesiapa mempunyai sebarang input tentang masalah saya, sama ada mengenai punca masalah atau cara membetulkannya? </p>
<p>Terima kasih terlebih dahulu. </p>
Untuk melihat lajur yang disimpan dalam
col
中的确切内容,请执行SELECT HEX(col) ...
. Ruang akan muncul sebagai 20.hendaklah dibuang dalam fungsi
<form>
中输入的前导和尾随空格,请使用PHP的trim()
.Bergantung pada jenis data lajur, MySQL akan mengabaikan ruang belakang. Adakah anda menggunakan
CHAR
、VARCHAR
、TEXT
、BLOB
atau jenis lain?Jika tidak, ruang utama dan dalaman akan dipelihara oleh semua pihak yang terlibat.