gpt4 book ai didi

MySQL:可选地包含在 '"' 中断 INTO OUTFILE 变量名

转载 作者:行者123 更新时间:2023-11-29 11:33:27 25 4
gpt4 key购买 nike

我一直在尝试使用可变文件名将 csv 导出正确到我的测试文件夹中 - 我已经很接近了,但我认为在它工作之前我已经解决了一个问题。这是到目前为止的代码:

SET @q1 := CONCAT(
"SELECT *
FROM table
INTO OUTFILE '/SQLOut/test"
, DATE_FORMAT(NOW(),'%Y%m%d')
,".csv'"
, "FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'");

PREPARE s1 FROM @q1;
EXECUTE s1;
DROP PREPARE s1;

如您所见,我必须使用准备好的语句才能使文件名包含今天的日期。该部分有效 - 但如果我想将其设为 csv,我需要在之后包含“字段终止”内容,这就是我认为破坏它的原因。

我相信,如果 OPTIONALLY ENCLOSED BY '"' 不包含 " -- 关闭我原来的 后的双引号,这将按预期运行>"CONCAT( 和最后一行 'LINES TERMINATED BY '\n'"); 被切断,MySQL 变得困惑。

还有其他方法可以做到这一点吗?

最佳答案

尝试:

SET @`qry` := CONCAT('
SELECT *
FROM `table`
INTO OUTFILE \'/SQLOut/test', DATE_FORMAT(NOW(), '%Y%m%d'), '.csv\'
FIELDS TERMINATED BY \',\' OPTIONALLY ENCLOSED BY \'"\'
LINES TERMINATED BY \'\\n\'
');

PREPARE `stmt` FROM @`qry`;
EXECUTE `stmt`;
DROP PREPARE `stmt`;

关于MySQL:可选地包含在 '"' 中断 INTO OUTFILE 变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37010945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com