我的解决方案中有一个 SQL 项目 (.sqlproj),目标平台为“Microsoft Azure SQL 数据库 V12”。
最近我添加了一个external data source
和几个external tables
针对这个数据源的。
ExternalCSVLists.sql文件:
CREATE EXTERNAL DATA SOURCE [ExternalCSVLists] WITH
(
TYPE = RDBMS,
LOCATION = 'location.windows.net',
DATABASE_NAME = '$(CSVLists)',
CREDENTIAL = RemoteConnectionCredential
)
外部表示例(IntegerListContent.sql文件)
CREATE EXTERNAL TABLE [WebApp].[IntegerListContent]
(
[ListId] INT,
[Value] int
)
WITH
(
DATA_SOURCE = [ExternalCSVLists]
)
第一次发布顺利。
现在,当我再次发布时(没有对外部表或数据源进行任何更改),我收到以下错误:
删除 [ExternalCSVLists]... (415,1):SQL72014:.Net SqlClient 数据提供者:消息 33165,级别 16,状态 1,第 1 行无法删除外部数据源“ExternalCSVLists”,因为它被外部表使用。
我检查了发布脚本并注意到它试图删除并创建外部数据源。外部表被跳过(这可能没问题,因为我没有更改它们)。
所以,
1)为什么drop external data source
当所有这些数据源都与已经发布的数据源相同时它会产生一个声明
2)为什么它忽略依赖external tables
呢?
我的发布设置几乎是默认设置(“删除”选项卡中的任何选项都未选中)。谢谢!