我在将数据从 MySQL 导出到 CSV 时遇到日期格式转换问题。我正在使用 scriptelaa.1.1,我猜是最新的。
这是我的etl.properties文件:
driver=mysql
url=jdbc:mysql://localhost:3306/<my_DB_name>
user=<user_name>
password=<password>
classpath=/path/to/mysql-connector-java-5.1.19.jar;
这是我的etl.xml文件:
<!DOCTYPE etl SYSTEM "http://scriptella.javaforge.com/dtd/etl.dtd">
<etl>
<description>Scriptella ETL File Template.</description>
<properties>
<include href="/path/to/etl.properties"/> <!--Load from external properties file-->
</properties>
<!-- Connection declarations -->
<connection id="in" driver="${driver}" url="${url}" user="${user}" password="${password}" classpath="$classpath">
</connection>
<connection id="out" driver="csv" url="report.csv">
#Use empty quote to turn off quoting
quote=
null_string=\\N
format.dob.type=date
format.dob.pattern=yyyy-MM-dd HH:mm:ss
</connection>
<query connection-id="in">
SELECT * FROM test;
<script connection-id="out">
$1,$2,$3,$4
</script>
</query>
</etl>
dob是我在 MySQL 表中的列名,它是datetime类型的列。现在,当我从 MySQL 导出数据时,时间格式为yyyy-MM-dd HH:mm:ss.S 但我想要yyyy-MM-dd HH:mm:ss,所以我使用了
format.dob.type=date
format.dob.pattern=yyyy-MM-dd HH:mm:ss
正如建议 scriptella.1.1 具有该功能并使用它,在以下链接中: http ://scriptella.javaforge.com/reference/index.html
但它不起作用。谁能帮我吗。
谢谢。:)