Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

파일 이름에 파일이 생성된 타임스탬프가 포함된 CSV 파일로 데이터를 내보내려면 어떻게 해야 합니까?


때로는 파일이 생성된 타임스탬프가 이름에 포함된 CSV 파일로 데이터를 내보내야 합니다. MySQL 준비 명령문을 사용하여 수행할 수 있습니다. 그것을 설명하기 위해 우리는 다음 예를 사용하고 있습니다 -

다음 예의 쿼리는 'student_info' 테이블의 데이터를 이름에 타임스탬프가 있는 CSV 파일로 내보냅니다.

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)

위 쿼리는 CSV 파일 이름 'student_2017_12_10_18_52_46.CSV'를 생성합니다. 즉, 다음 데이터를 포함하는 타임스탬프 값이 있는 CSV 파일 −

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