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

จะเปลี่ยนชนิดข้อมูลของคอลัมน์ของตาราง MySQL ได้อย่างไร?


คุณสามารถใช้คำสั่งแก้ไขสำหรับสิ่งนี้ เรามาสร้างตารางกันก่อน

mysql> สร้างตาราง DemoTable( StudentId varchar(200) ไม่ใช่ null, StudentName varchar(20), StudentAge int, StudentAddress varchar(20), StudentCountryName varchar(20)); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.73 วินาที)

ตอนนี้ตรวจสอบคำอธิบายของตาราง

mysql> อธิบาย DemoTable;

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

<ก่อนหน้า>+--------------------+--------------+------+--- ---+---------+-------+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+--------------------+-------------+------+---- -+---------+-------+| รหัสนักศึกษา | varchar(200) | ไม่ | | NULL | || ชื่อนักเรียน | varchar(20) | ใช่ | | NULL | || StudentAge | int(11) | ใช่ | | NULL | || ที่อยู่นักศึกษา | varchar(20) | ใช่ | | NULL | || นักเรียนชื่อประเทศ | varchar(20) | ใช่ | | NULL | |+--------------------+-------------+------+----- +---------+-------+5 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อเปลี่ยนประเภทข้อมูลจาก varchar เป็น BIGINT -

mysql> แก้ไขตาราง DemoTable แก้ไข StudentId BIGINT(10) ไม่ได้ลงชื่อไม่ใช่ค่าเริ่มต้น NULL 0 ตกลง ตกลง 0 แถวได้รับผลกระทบ (1.51 วินาที) บันทึก:0 รายการซ้ำ:0 คำเตือน:0

ด้านบน เราได้เปลี่ยนประเภทข้อมูลคอลัมน์ 'StudentId' จาก varchar(200) เป็น BIGINT(10) ให้เราตรวจสอบรายละเอียดของตารางอีกครั้ง

mysql> อธิบาย DemoTable;

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

<ก่อนหน้า>+--------------------+-----------------------+--- -----+---------+-------+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+--------------------+---------------------------+---- ---+----+---------+-------+| รหัสนักศึกษา | bigint(10) ไม่ได้ลงนาม | ไม่ | | 0 | || ชื่อนักเรียน | varchar(20) | ใช่ | | NULL | || StudentAge | int(11) | ใช่ | | NULL | || ที่อยู่นักศึกษา | varchar(20) | ใช่ | | NULL | | | นักเรียนชื่อประเทศ | varchar(20) | ใช่ | | NULL | |+--------------------+---------------------+----------- --+----+---------+------+5 แถวในชุด (0.00 วินาที)