Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rename outfile with date in mysql

How can i rename the filename with a concat function ? i want my filename with a date,, can anyone help me on this.

SET @OUTFILE = CONCAT( CONCAT('/xampp/htdocs/mysite/reports-', NOW()), '.csv');


SELECT * FROM `tbl_user` INTO OUTFILE  @OUTFILE FIELDS TERMINATED BY ','ENCLOSED BY '"' LINES TERMINATED BY '\n'
like image 852
avien Avatar asked Jul 05 '12 05:07

avien


2 Answers

you can do something like:

SET @sql_text = 
   CONCAT (
       "SELECT * FROM `tbl_user` into outfile '/xampp/htdocs/mysite/reports-"
       , DATE_FORMAT( NOW(), '%Y%m%d')
       , ".csv'"
    );

PREPARE s1 FROM @sql_text;
EXECUTE s1;
DROP PREPARE s1;
like image 133
Haim Evgi Avatar answered Nov 02 '22 03:11

Haim Evgi


You should use prepared statements. Build a query string, then execute it.

like image 21
Devart Avatar answered Nov 02 '22 05:11

Devart