2016-10-18 4 views
2

Azure SQLデータベースをエクスポートするときに奇妙なエラーが発生します。いくつかの最近のスキーマが変更されるまで、エクスポートは正常に機能していましたが、現在はSQL71501というエラーが表示されています。エラーAz71 SQLデータベースのエクスポート時のSQL71501

データベースは互換性レベル130のV12です(ただし、masterデータベースは互換性レベル120です)。

この問題は、STRING_SPLITの組み込み関数を使用する新しいテーブル値関数によって発生しているようです。 STRING_SPLITを使用して既にストアドプロシージャがあり、エクスポートには影響していないようですが、機能は正常にコンパイルされ、正常に動作しているため、エクスポートに問題があるようです。

以下の機能は、実際の機能を単純化したものですが、同じ問題が発生します。

CREATE FUNCTION [dbo].[TestFunction](
    @CommaSeparatedValues VARCHAR(MAX) 
) 
RETURNS TABLE 
AS 
    RETURN 

    SELECT  c.ClientId, 
       c.FullName 

    FROM  dbo.Client c 

    INNER JOIN STRING_SPLIT(@CommaSeparatedValues, ',') csv 
    ON   c.ClientId = csv.value 

次のようにインポート/エクスポート履歴ブレードに与えられた完全なエラーメッセージは次のとおりです。サービス操作中に発生した

エラー。

データパッケージの一部として使用されるスキーマに、サポートされていない要素が1つ以上見つかりました。

エラーSQL71501:要素[dbo]。[TestFunction]の検証でエラーが発生しました。機能:[dbo]。[TestFunction]にオブジェクト[dbo]。[STRING_SPLIT]に対する未解決の参照があります。

エラーSQL71501:要素[dbo]の検証でエラーが発生しました。[TestFunction]:機能:[dbo]。[TestFunction]には、オブジェクトへの未解決の参照が含まれています。 [dbo]。[クライアント]。[csv]、[dbo]。[STRING_SPLIT]。[csv]または[dbo]のいずれかのオブジェクトを参照する可能性があるため、オブジェクトが存在しないか参照が曖昧です。 [STRING_SPLIT]。[value]。

答えて

3

これは、Microsoft SQLチームからXiaochenです。私たちはすでにこの問題の修正に取り組んでいます。フィックスは今後数週間で輸出サービスに導入される予定です。同時に、この修正は、最新のDacFX 16.4(https://blogs.msdn.microsoft.com/ssdt/2016/09/20/sql-server-data-tools-16-4-release/)ですでに利用可能です。この問題をサービスで修正する前に、DacFX 16.4をダウンロードし、sqlpackageを使用して回避することができます。

1

参照のいずれかが、あなたの場合は1

以下のエラーSQL71501のように失敗した場合SQLAzureは、スキーマ、オブジェクトの参照を使用するエクスポート・データベースを検証します。エラーの検証要素[DBO] [TestFunction。 ]:機能:[dbo]。[TestFunction]にオブジェクト[dbo]。[STRING_SPLIT]への未解決の参照があります。

輸出がdocsから...

をエクスポートする前に、あなたはこれらのエラーを解決する必要がありますsucceed..Soません、あなたは130

に互換性レベルを設定する必要があります

STRING_SPLIT関数は互換性レベル130でのみ使用できます。データベースの互換性レベルが130より低い場合、SQL ServerはSTRING_SPLIT関数を見つけて実行できません。

更新:

私は同じ問題をREPROすることができただけで、現在の回避策は、エクスポートが完了すると、システムの機能とエクスポートDACPACを参照しているテーブル値関数を削除するには、テーブル値関数を再作成することです。 (

私はここで問題を提起しました:upvote ..

https://feedback.azure.com/forums/217321-sql-database/suggestions/16722646-azure-database-export-fails-when-split-string-is-i

+0

これは問題です。その機能に無効なものはありません。それはコンパイルされ、うまく動作します。 STRING_SPLITは組み込みのシステム関数なので、エクスポートプロセスがなぜそれについて不平を言っているのかわかりません。 –

+0

@JonathanSayce:更新済みを参照 – TheGameiswar

+0

互換性レベルは既に130です。STRING_SPLIT関数は、しばらくストアドプロシージャの束でうまく動作しています。 –

関連する問題