Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

การขยายขนาดของฟิลด์ varchar ใน MySQL จะส่งผลต่อข้อมูลภายในหรือไม่


หากคุณจะขยายขนาดของฟิลด์ varchar ใน MySQL จะไม่ส่งผลต่อข้อมูลภายในนั้น

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable( Name varchar(8));เคียวรีตกลง 0 แถวได้รับผลกระทบ (1.11 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable ('John'); Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงในค่า DemoTable ('Robert'); Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรก ลงในค่า DemoTable ('Mike'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable ('Sam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+---------+| ชื่อ |+-------+| จอห์น || โรเบิร์ต || ไมค์ || แซม |+--------+4 แถวในชุด (0.00 วินาที)

ให้เราตรวจสอบคำอธิบายของตาราง -

mysql> อธิบาย DemoTable;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-------+-----------+------+----+---------+-- -----+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+-------+------------+------+----+---------+--- ----+| ชื่อ | varchar(8) | ใช่ | | NULL | |+-------+------------+------+----+---------+---- ---+1 แถวในชุด (0.04 วินาที)

ให้เราขยายขนาด VARCHAR จาก VARCHAR(8) เป็น VARCHAR(100) −

mysql> แก้ไขตาราง DemoTable เปลี่ยนชื่อ Name varchar(100) แบบสอบถามตกลง 4 แถวได้รับผลกระทบ (1.96 วินาที) บันทึก:4 รายการซ้ำ:0 คำเตือน:0

ให้เราตรวจสอบคำอธิบายของตารางอีกครั้ง -

mysql> อธิบาย DemoTable;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-------+--------------+------+----+---------+ --------+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+-------+--------------+------+ -----+---------+- ------+| ชื่อ | varchar(100) | ใช่ | | NULL | |+-------+--------------+------+----+---------+-- -----+1 แถวในชุด (0.01 วินาที)

หลังจากขยายขนาดของวาร์ชาร์แล้ว ข้อมูลภายในจะไม่ได้รับผลกระทบ แต่หากขนาดลดลงก็อาจทำให้เกิดปัญหาได้