0

Visual StudioのSQLサーバーデータベース用に、新しい主キーフィールドを作成する場合。フィールドのタイプがuniqueidentifierである可能性があることに気づきました。これは、nvarcharおよびintまたはbitに変更することもできます。また、フィールドの属性でisRowGUIDに「TRUE」を指定できることにも気づきました。

Visual Studiosがデータベース(この特定のインスタンスの.SDFファイル。別名SQLコンパクト)をインポートした後にXSD定義を自動的に作成する場合、タイプuniqueidentifierをCLRタイプGUIDに自動的にマップします。isRowGUIDをtrueに設定すると、どのような利点がありますか?

この主題に関する情報を収集するためのこれまでのすべての努力はほとんど、あるいはまったく成果を上げていないため、この質問の情報や方向性は高く評価されています。

4

1 に答える 1

1

基本的に、rowguidcol / isrowguidcolは、IDがint列に対して行うのと同じように列が一意の行識別子であることをSQL Serverに通知します(一意性が適用されます)。また、identityがint列にシード値と増分値を設定するのと同じように、列にデフォルト値を強制します。テーブルに1つのID列しか存在できないのと同様に、テーブルごとに1つのrowguidcolしか存在できません。

Rowguidcolを使用すると、システムストアドプロシージャを使用して、この列を参照、アクセス、および/または識別できます。また、SQL Serverレプリケーションでは、rowguidcol / isrowguidcolとマークされたuniqueidentifier列を使用できます(使用できる場合)。そうでない場合、レプリケーションはuniqueidentifier/rowguidcolを既存のテーブルに追加します。SQL Serverレプリケーションの使用を計画している場合は、設計の一部として自分で列を追加することをお勧めします。そうすれば、最後に列に何か便利な名前を付けることができます。

詳細については、Microsoftのこのリンクを確認してください... http://msdn.microsoft.com/en-us/library/ms191131(v = sql.105 ).aspx

于 2013-04-07T08:31:03.840 に答える