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

วิธีส่งออกข้อมูลไปไฟล์ CSV ที่ชื่อไฟล์มี timestamp

ใช้ Prepared Statement สร้างชื่อไฟล์พร้อม timestamp

บางครั้งต้องการส่งออกข้อมูลไป CSV ที่ชื่อไฟล์มี timestamp ของเวลาที่สร้าง สามารถทำได้ด้วย Prepared Statement ของ MySQL

ตัวอย่าง

ส่งออกข้อมูลจาก student_info ไป CSV ที่มี timestamp ในชื่อ:

mysql> SET @time_stamp = DATE_FORMAT(NOW(),'_%Y_%m_%d_%H_%i_%s');
Query OK, 0 rows affected (0.00 sec)
mysql> SET @FOLDER = 'C:/mysql/bin/mysql-files';
Query OK, 0 rows affected (0.00 sec)
mysql> SET @FOLDER = 'C:/mysql/bin/mysql-files/';
Query OK, 0 rows affected (0.00 sec)
mysql> SET @PREFIX = 'Student15';
Query OK, 0 rows affected (0.00 sec)
mysql> SET @EXT = '.CSV';
Query OK, 0 rows affected (0.00 sec)
mysql> SET @Command = CONCAT("SELECT * FROM Student_info INTO OUTFILE '",@FOLDER, @PREFIX, @time_stamp, @EXT,"' FIELDS ENCLOSED BY '\"' TERMINATED BY ';' ESCAPED BY '\"'"," LINES TERMINATED BY '\r\n';");
Query OK, 0 rows affected (0.00 sec)
mysql> PREPARE stmt FROM @command;
Query OK, 0 rows affected (0.00 sec)
Statement prepared
mysql> execute stmt;
Query OK, 6 rows affected (0.07 sec)

ไฟล์ที่สร้างขึ้น: student_2017_12_10_18_52_46.CSV (ชื่อไฟล์มี timestamp)

เนื้อหาไฟล์:

101;"YashPal";"Amritsar";"History"
105;"Gaurav";"Chandigarh";"Literature"
125;"Raman";"Shimla";"Computers"
130;"Ram";"Jhansi";"Computers"
132;"Shyam";"Chandigarh";"Economics"
133;"Mohan";"Delhi";"Computers"