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

คำสั่ง MySQL เพื่อคัดลอกตาราง?


คุณสามารถทำสิ่งนี้ได้ด้วยความช่วยเหลือของคำสั่ง INSERT INTO SELECT ไวยากรณ์มีดังนี้ −

แทรกลงใน yourDatabaseName.yourTableName(SELECT *FROM yourDatabaseName.yourTableName);

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตารางในฐานข้อมูลและตารางที่สองในฐานข้อมูลอื่น

ชื่อฐานข้อมูลคือ “bothinnodbandmyisam” ให้เราสร้างตารางในฐานข้อมูลเดียวกัน แบบสอบถามมีดังนี้ −

mysql> สร้างตาราง Student_Information -> ( -> Id int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(10), -> Age int -> );Query OK, 0 แถวได้รับผลกระทบ (0.67 วินาที)

ตอนนี้คุณสามารถแทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −

mysql> แทรกลงใน Student_Information(Name,Age) values('Larry',30);Query OK, 1 แถวได้รับผลกระทบ (0.20 sec)mysql> แทรกลงใน Student_Information(Name,Age) values('Mike',26);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.19 วินาที)mysql> แทรกลงใน Student_Information(ชื่อ,อายุ) ค่า ('Bob',26);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงใน Student_Information(ชื่อ,อายุ) values('Carol',24);Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)

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

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

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+----+---------+------+| รหัส | ชื่อ | อายุ |+----+-------+------+| 1 | แลร์รี่ | 30 || 2 | ไมค์ | 26 || 3 | บ๊อบ | 26 || 4 | แครอล | 24 |+----+-------+------+4 แถวในชุด (0.00 วินาที)

นี่คือฐานข้อมูลที่สอง -

mysql> ใช้ตัวอย่าง;ฐานข้อมูลมีการเปลี่ยนแปลง

ตอนนี้สร้างตารางเดียวในฐานข้อมูลนี้ แบบสอบถามมีดังนี้ −

mysql> สร้างตาราง Student_Table_sample -> ( -> StudentId int ไม่ใช่ NULL AUTO_INCREMENT, -> StudentName varchar(20), -> StudentAge int , -> PRIMARY KEY(StudentId) -> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ ( 0.57 วินาที)

นี่คือคำสั่งให้คัดลอกตาราง แบบสอบถามมีดังนี้ −

mysql> แทรกลงใน sample.Student_Table_sample(select *from bothinnodbandmyisam.Student_Information);แบบสอบถาม ตกลง ได้รับผลกระทบ 4 แถว (0.23 วินาที) บันทึก:4 รายการซ้ำ:0 คำเตือน:0

สี่ระเบียนได้รับผลกระทบ ซึ่งหมายความว่าคัดลอกตารางได้สำเร็จ แบบสอบถามมีดังต่อไปนี้เพื่อแสดงระเบียนทั้งหมดจากตารางที่สอง 'Student_Table_sample'

แบบสอบถามมีดังนี้ −

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

ต่อไปนี้เป็นผลลัพธ์ที่แสดงบันทึกจากตารางในฐานข้อมูลอื่น -

<ก่อนหน้า>+-----------+-------------+-----------+| รหัสนักศึกษา | ชื่อนักเรียน | StudentAge |+-----------+-------------+-----------+| 1 | แลร์รี่ | 30 || 2 | ไมค์ | 26 || 3 | บ๊อบ | 26 || 4 | แครอล | 24 |+-----------+-------------+-----------+4 แถวในชุด (0.00 วินาที)