ソリューションに、ターゲット プラットフォーム 'Microsoft Azure SQL Database V12' を使用する SQL プロジェクト (.sqlproj) があります。
最近、このデータ ソースを対象とするもの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]
)
初回公開はOK。
ここで、再度公開すると (外部テーブルまたはデータ ソースのいずれにも変更を加えていない場合)、次のエラーが表示されます。
[ExternalCSVLists] を削除しています... (415,1): SQL72014: .Net SqlClient データ プロバイダー: メッセージ 33165、レベル 16、状態 1、行 1 外部テーブルで使用されているため、外部データ ソース 'ExternalCSVLists' を削除できません。
パブリッシュ スクリプトを調べたところ、外部データ ソースを削除して作成しようとしていることがわかりました。外部テーブルはスキップされます (変更していないので、おそらく問題ありません)。
そう、
drop external data source
1)そのようなすべてのデータ ソースが既に公開されているものと同一であるのに、なぜステートメントが生成されるのか
2) 従属を無視するのはなぜexternal tables
ですか?
私のパブリッシュ設定はほとんどデフォルトです (「ドロップ」タブのオプションはどれもチェックされていません)。ありがとう!