TECH

Cross databaseのエラー??【SQL serverからAzure SQL Databaseへ】

投稿日:

 

会社のサーバーがオンプレミスからクラウドへ移行するとのことで、

SQL未経験の私が現場に駆り出されました。

 

その際に出た「Cross database~」(エラーの名前覚えだせない笑)

の解決方法を共有します。お願いいたします。

 

環境

 

・SQL server(オンプレミス)

・Azure SQL database

・Data Migration Assistant(移行検証ツール)

 

エラー内容

 

SQL serverからAzure SQL databaseに移行するということで、

安全に移行できるかData Migration Assistantを使って事前に確認をしようとのことでした。

 

しかし、、、

 

3つもエラーが出て、その原因を探ってみてもチンプンカンプン

でもとある方法で全部解消しました。やってみてね。

 

【エラー内容】(全文覚えてない、すんません)

・Cross database~(弾性クエリを使用してください)

・Object found~(オブジェクトが参照できない)

・Unsolved~(オブジェクトが参照できない)

 

解決方法

 

結論から先に申し上げますと、

FROM句のテーブル名(そのほかもろもろ)がエラーの原因になっています。

 

どういうことかというと、

 

FROM [DB名].[dbo].[テーブル名]

 

みたいになっているところがあると思います。

これを、、

 

FROM テーブル名

 

にするだけです。

(DB右クリックして、「変更」押していじりました)

 

ええ!!そんだけ!!

って思いますよね。

 

私も思いました。

けどこれで全部解消して、なんなくData Migration Assistantさんは

「問題なし」の判定です。

 

始めは、

「ANSI NULLS」って文がAzureで使えないからじゃね!

とかいってたんですが、結果これで解消です。

 

私もまだ腑に落ちていませんが

もしお困りならこれでやってみましょう。

 

 

以上です。

-TECH
-

Copyright© 紳士は変態がお好き , 2020 All Rights Reserved.