如何在 DBMS 迁移时避免 MSSQL INTO PIVOTAL HAWQ 的日期类型列为空
How do I avoid date type column of MSSQL INTO PIVOTAL HAWQ null at DBMS migration
我们正在尝试将数据从外部源 (mssql) 提取到 postgres。但是,当我检查 invoicedate 列条目时,mssql 同时显示这些条目的 invoicedate 值。
即
我们尝试在两个 DBMS 上执行以下查询:
在 SQL 服务器中执行查询时:
select * from tablename where salesorder='168490'
获取 12 行,其中 invoicedate 列为 '2015-10-26 00:00:00.000'
但在 Postgres 上执行相同的查询
select "InvoceDt" from tablename where salesorder='168490'
获取 12 行发票日期列为空的行。
问题是为什么?
Postgres InvoiceDt
列即将变为空,而不是我们可以看到 SQL 服务器正在显示适当的数据值。
为什么 SQL 服务器和 Postgres 之间此特定列的数据不同?
Vicps,您没有使用 Postgres,这就是为什么 a_horse_with_no_name 很难理解您的问题。您正在使用 Pivotal HDB(正式名称为 HAWQ)。 HAWQ 现在与孵化器项目相关联,"Apache HAWQ",商业版本是 "Pivotal HDB"。
Pivotal HDB 是 Pivotal Greenplum 数据库的一个分支,它是 PostgreSQL 8.2 的一个分支。它与 Postgres 有很多相似之处,但绝对不是 Postgres。
您还使用 Spring-XD 将数据从 SQL 服务器移动到 HDFS,这对于理解真正的问题是什么至关重要。
您提供了这个示例:
CREATE TABLE tablename ( "InvoiceDt" timestamp )
LOCATION ('pxf://hostname/path/to/hdfs/?profile=HdfsTextSimple')
FORMAT 'csv' ( delimiter '^' null 'null' quote '~');
你的文件只有一栏?这怎么可能?在上面,您提到了 salesorder 列。其次,你有没有看过Spring-XD写的文件?
hdfs dfs -cat hdfs://hostname:8020/path/to/hdfs | grep 168490
我敢打赌您的数据中有额外的定界符、空字符或转义字符导致了问题。您可能还想用 spring-xd 标记您的问题。
我们正在尝试将数据从外部源 (mssql) 提取到 postgres。但是,当我检查 invoicedate 列条目时,mssql 同时显示这些条目的 invoicedate 值。
即 我们尝试在两个 DBMS 上执行以下查询:
在 SQL 服务器中执行查询时:
select * from tablename where salesorder='168490'
获取 12 行,其中 invoicedate 列为 '2015-10-26 00:00:00.000'
但在 Postgres 上执行相同的查询
select "InvoceDt" from tablename where salesorder='168490'
获取 12 行发票日期列为空的行。
问题是为什么?
Postgres InvoiceDt
列即将变为空,而不是我们可以看到 SQL 服务器正在显示适当的数据值。
为什么 SQL 服务器和 Postgres 之间此特定列的数据不同?
Vicps,您没有使用 Postgres,这就是为什么 a_horse_with_no_name 很难理解您的问题。您正在使用 Pivotal HDB(正式名称为 HAWQ)。 HAWQ 现在与孵化器项目相关联,"Apache HAWQ",商业版本是 "Pivotal HDB"。
Pivotal HDB 是 Pivotal Greenplum 数据库的一个分支,它是 PostgreSQL 8.2 的一个分支。它与 Postgres 有很多相似之处,但绝对不是 Postgres。
您还使用 Spring-XD 将数据从 SQL 服务器移动到 HDFS,这对于理解真正的问题是什么至关重要。
您提供了这个示例:
CREATE TABLE tablename ( "InvoiceDt" timestamp )
LOCATION ('pxf://hostname/path/to/hdfs/?profile=HdfsTextSimple')
FORMAT 'csv' ( delimiter '^' null 'null' quote '~');
你的文件只有一栏?这怎么可能?在上面,您提到了 salesorder 列。其次,你有没有看过Spring-XD写的文件?
hdfs dfs -cat hdfs://hostname:8020/path/to/hdfs | grep 168490
我敢打赌您的数据中有额外的定界符、空字符或转义字符导致了问题。您可能还想用 spring-xd 标记您的问题。