SQL Server テーブルには 2 つの ID 列を含めることはできますか?
多くのデータベース設計者は、テーブル内に複数の列を自動で作成する必要性に直面しています。主キーまたはその他の目的で増分します。ただし、SQL Server では、これは直接的には可能ではありません。 Transact-SQL リファレンス ドキュメントによると、
テーブルごとに作成できる ID 列は 1 つだけです。
例:
次の SQL ステートメントを考えてみましょう。 、2 つの ID 列を持つテーブルを作成しようとします:
CREATE TABLE [dbo].[Foo]( [FooId] [int] IDENTITY(1,1) NOT NULL, [BarId] [int] IDENTITY(1,1) NOT NULL )
このステートメントは次のように失敗します。エラー:
Msg 2744, Level 16, State 2, Line 1 Multiple identity columns specified for table 'Foo'. Only one identity column per table is allowed.
代替ソリューション:
テーブル内に複数の自動インクリメント値が必要な場合は、次の代替ソリューションを検討してください:
SQL Server は複数の ID 列をネイティブにサポートしていませんが、これらの代替ソリューションは必要な機能を提供できます。
以上がSQL Server テーブルに複数の ID 列を含めることはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。