1

良い一日

2 人のユーザーが同じデータベースにデータを保存していて、主キーが競合している状況があります。

2 つの列を追加して一意の ID を生成するストアド プロシージャまたはトリガーを作成することは可能ですか。

例: 私は にtable2関連しtable1ていTable1IDます。Increment と Seed はどちらも 1 です。

行を追加する必要がある場合はtable2、自動生成された ID 番号をテキスト列に追加して一意にします。したがって、ID は のようなものになりますJoeSoap5

4

2 に答える 2

0

SQLServerのバージョンを指定しません。

SQL 2012では、シーケンスの概念(http://msdn.microsoft.com/en-us/library/ff878091.aspx )が導入されています。これにより、必要な処理を実行できます。

于 2012-11-16T08:55:46.200 に答える
0

何かユニークなものを生成したい場合は、組み込み関数 " NEWID() " を使用できます。次のコードを入力して実行します。

SELECT NEWID() 

最初のテーブルのレコードが挿入されたときに 2 番目のテーブルにレコードを挿入する必要がある場合は、TRIGGERSを使用してこれを実装できます。あなたの場合、「AFTER INSERT TRIGGER」または「BEFORE INSERT TRIGGER」を使用できます-通常、これは最初のテーブルの行が挿入される前/後に実行されるコードです。

于 2012-11-16T07:36:48.670 に答える