2

ID 列を許可する Sql Server データベース環境から、ID 列を許可しない Sql Server データベース環境にいくつかのプロセスを移動しています。ID コンストラクトを使用せずに、代理主キーの一意の整数値を効率的に作成するにはどうすればよいでしょうか?

なぜ ID 列を使用できないのかというと、Microsoft の Parallel Data Warehouse は物理的に異なるサーバー間でテーブルを分割します。Microsoft は PDW から ID 機能を削除しました。これは、分散テーブルへの挿入ごとに新しい ID 値を見つけるためにすべてのサーバー間で通信する必要があり、並列処理のポイントがほぼ無効になるためです。

4

3 に答える 3

0

新しい環境で ID 列が許可されない理由を知りたいです (正当な理由がないと言っているわけではありませんが、これまでに遭遇したことはありません)。

そうは言っても、私が考えることができる最善の解決策は、疑似ID列の最大値を見つけて1を追加する挿入でトリガーを使用することです.

于 2013-06-14T15:41:12.847 に答える
0

これが私が使用した1つのテクニックです。いぼがないわけではありませんが、迷惑な競合状態なしで仕事を成し遂げます. それはSQLサーバーに対する私の答えです:カウンターと別の列の値に基づいて主キーを生成します

于 2013-06-14T17:28:54.293 に答える