Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.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
C# 与在我的.Net代码中处理跨数据库查询相比,使用Azure SQL弹性查询有什么好处?_C#_Sql_Sql Server_Database_Azure - Fatal编程技术网

C# 与在我的.Net代码中处理跨数据库查询相比,使用Azure SQL弹性查询有什么好处?

C# 与在我的.Net代码中处理跨数据库查询相比,使用Azure SQL弹性查询有什么好处?,c#,sql,sql-server,database,azure,C#,Sql,Sql Server,Database,Azure,我在服务器Server1.database.windows.net中有Azure SQL数据库database1 我需要从这个数据库中检索一些记录,并将它们插入不同Azure服务器上不同数据库的表中。 您认为在这种情况下,使用.Net还是使用弹性查询更好? 另外,弹性查询是否有任何限制 我在服务器Server1.database.windows.net中有Azure SQL数据库database1。我需要从此数据库中检索一些记录,并将它们插入不同Azure服务器上不同数据库的表中。您认为在这种情

我在服务器Server1.database.windows.net中有Azure SQL数据库database1 我需要从这个数据库中检索一些记录,并将它们插入不同Azure服务器上不同数据库的表中。 您认为在这种情况下,使用.Net还是使用弹性查询更好? 另外,弹性查询是否有任何限制

我在服务器Server1.database.windows.net中有Azure SQL数据库database1。我需要从此数据库中检索一些记录,并将它们插入不同Azure服务器上不同数据库的表中。您认为在这种情况下,使用.Net还是使用弹性查询更好

您的需求是从一个数据库中查询数据,然后将返回的数据插入另一个(不同)数据库。我认为,通过程序中的代码进行这些操作将完全满足您的需求,您的场景不需要弹性查询。通常情况下,使用弹性查询的目的是简化查询场景,其中多个数据库将行贡献到单个总体结果中。您可以在中找到弹性查询功能的详细信息

此外,可以帮助我们执行远程存储过程调用或远程函数,这可能是您的场景的另一种方法

弹性查询有什么限制吗

在中的“预览限制”部分下,您可以看到:

  • 在标准性能层上运行第一个弹性查询可能需要几分钟的时间。这一次需要加载弹性查询功能;加载性能随着性能级别的提高而提高

  • 尚不支持从SSMS或SSDT编写外部数据源或外部表的脚本

  • SQL DB的导入/导出尚不支持外部数据源和外部表。如果需要使用导入/导出,请在导出前删除这些对象,然后在导入后重新创建它们

  • 弹性查询目前只支持对外部表的只读访问。但是,您可以在定义外部表的数据库上使用完整的T-SQL功能。这有助于(例如)使用(例如)SELECT INTO持久化临时结果,或在弹性查询数据库上定义引用外部表的存储过程

  • 除nvarchar(max)外,外部表定义中不支持LOB类型。作为一种解决方法,您可以在远程数据库上创建一个视图,将LOB类型强制转换为nvarchar(max),在视图上定义外部表而不是基表,然后在查询中将其强制转换回原始LOB类型

  • 当前不支持外部表上的列统计信息。支持表统计信息,但需要手动创建

理论上(我从未使用过),您可以将弹性查询作为存储过程存储在数据库中。所以你没有一个单独的代码库。此外,数据还将执行从远程数据库到本地数据库的一次行程。如果在另一台服务器上运行编译后的.net代码,则数据将进行两次传输。