当我将数据从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>道布是我在MySQL表中的列名,它是datetime类型的列。现在,当我从MySQL导出数据时,时间是以yyyy:mm:ss.s格式出现的,但是我想要yyyy: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
但这是行不通的。有人能帮帮我吗。
谢谢。:)
发布于 2013-08-24 17:14:43
格式化规则应用于变量名,因此格式描述和展开占位符都应该使用完全相同的变量名。在您的原因中,尝试使用$dob而不是列号。
https://stackoverflow.com/questions/18404996
复制相似问题