Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure数据工厂地理或几何数据类型_Azure_Spatial_Sqlgeography_Cross Database_Azure Data Factory - Fatal编程技术网

Azure数据工厂地理或几何数据类型

Azure数据工厂地理或几何数据类型,azure,spatial,sqlgeography,cross-database,azure-data-factory,Azure,Spatial,Sqlgeography,Cross Database,Azure Data Factory,我一直在尝试建立Azure数据工厂(到目前为止未成功)。我有两个Azure SQL数据库,它们都在同一台服务器上(在同一订阅中) 在这两个数据库中,我都有一个具有以下模式的表 CREATE TABLE [dbo].[Country_Boundaries] ( [Id] [nvarchar](255) NOT NULL, [Boundary] [geography] NULL, [Name] [nvarchar](255) NULL, [Centroid] [geo

我一直在尝试建立Azure数据工厂(到目前为止未成功)。我有两个Azure SQL数据库,它们都在同一台服务器上(在同一订阅中)

在这两个数据库中,我都有一个具有以下模式的表

CREATE TABLE [dbo].[Country_Boundaries]
(
    [Id] [nvarchar](255) NOT NULL,
    [Boundary] [geography] NULL,
    [Name] [nvarchar](255) NULL,
    [Centroid] [geography] NULL
)
我想使用数据工厂将数据从一个数据库表传输到第二个数据库中的同一个结构化表

数据工厂是否支持地理/几何数据类型

我还研究了使用Azure数据同步来实现这一点——不幸的是,表中的每一行对于单个数据同步事务来说都太大了(该表包含使用地理数据类型的复杂国家边界)

范例

No of Bytes
Scotland -   55,340,796
NorthernI -  2,149,616
England -    2,126,804
Wales -      705,266
另一种方法是使用引用表,但不幸的是,引用表也不支持地理/几何数据类型

数据工厂是否支持地理/几何数据类型

不,Azure数据工厂目前不支持空间类型。通过复制向导选择要同步的表时,如果该表有任何空间列,您将收到一个错误:

处理请求时出错:列:位置,不支持该数据类型。活动ID:[…]

或者,如果选择多个表,其中一个表具有空间列,则会出现错误:

某些表包含不支持的数据类型或对象类型:[dbo].[Table]。请使用自定义查询排除它们

数据工厂是否支持地理/几何数据类型

不,Azure数据工厂目前不支持空间类型。通过复制向导选择要同步的表时,如果该表有任何空间列,您将收到一个错误:

处理请求时出错:列:位置,不支持该数据类型。活动ID:[…]

或者,如果选择多个表,其中一个表具有空间列,则会出现错误:

某些表包含不支持的数据类型或对象类型:[dbo].[Table]。请使用自定义查询排除它们


我将考虑将数据转换为已知二进制或已知文本,然后将其传递到adf,然后使用存储过程和表类型批量加载数据。这使您能够重新转换数据。别忘了包括srid。我将考虑将数据转换为已知二进制或已知文本,然后将其传递到adf中,然后使用存储过程和表类型成批加载数据这使您能够重新转换数据。不要忘记包含srid。SQL地理/几何图形的支持方式有限,它们只能在SQL数据库之间传输。 由于源和接收SQL表具有相同的架构

CREATE TABLE [dbo].[Country_Boundaries]
(
    [Id] [nvarchar](255) NOT NULL,
    [Boundary] [geography] NULL,
    [Name] [nvarchar](255) NULL,
    [Centroid] [geography] NULL
)

您只需要创建源和接收器数据集并复制活动。“复制”活动将4列数据从源传输到接收器。

SQL Geography/Geometry受支持的方式有限,它们只能在SQL数据库之间传输。 由于源和接收SQL表具有相同的架构

CREATE TABLE [dbo].[Country_Boundaries]
(
    [Id] [nvarchar](255) NOT NULL,
    [Boundary] [geography] NULL,
    [Name] [nvarchar](255) NULL,
    [Centroid] [geography] NULL
)

您只需要创建源和接收器数据集并复制活动。复制活动将4列数据从源传输到接收器。

投票支持这一点,让Microsoft处理它!投票支持这一点,让微软来处理它!