1

現在、私は常に暗号化を使用して自分のDBをSQL Server 2016に移行しています。私は2つのデータベースを持って、ストアドプロシージャを介して他のテーブルから1つのDBからデータを選択します。 DB2でストアドプロシージャを使用してDB1から暗号化された列を選択または更新すると、Operand型のクラッシュ:エラーが発生しました。 同じ名前と同じ証明書を持つ2つのデータベースの列マスターキーと列を作成しました。常に2つのデータベースとの通信で、常に暗号化を使用して

use CustDb1 

Select @custSSN = customer 
     from CustDb2..customer a 
     where a.SSN = @psSSN 

両方のDB内の顧客でSSN列が暗号化されたが、私はこれを実行すると、私は以下のエラーを得ている:常に暗号化を使用して、データ移行のための

Msg 33277, Level 16, State 6, Procedure copy_customer, Line 891 [Batch Start Line 167] Encryption scheme mismatch for columns/variables '@psSSN'. The encryption scheme for the columns/variables is (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'TestCEK', column_encryption_key_database_name = 'CustDb2') and the expression near line '940' expects it to be (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'TestCEK', column_encryption_key_database_name = 'CustDb1').

答えて

0

ベスト・プラクティスは、hereを文書化されています。データの移行については、ブログに記載されている指示に従ってください。現在、暗号化されたデータのクロスデータベースの比較は常に暗号化さ

+0

によってサポートされていない

はお返事ニキルいただきありがとうございます。その実用的な製品と、この種のロジックを使用している250以上の手順があります。短時間ですべてのロジックを.netに移動することは非常に困難です。これをSQL Server自体で処理する代替方法はありますか? – Kiran

関連する問題