2016-04-16 8 views
0

Microsoft SQL Serverデータベースを使用し、ファイルのデータ型をuniqueidentifierとし、関数newid()またはnewsequentialid()を使用すると、 32値(16進値)を含みます。MS Accessデータベースのように、SQL Serverスタートフォーム1のシーケンシャルID番号を作成する方法

しかし、自動インクリメントの値を作成する方法は、MS Accessの自動インクリメントのフィールドと同様に、数字1から始まるようにする必要があります。

次に、SQL Serverが自動インクリメントフィールドをエラーなしで自動的に追加する間に、C#プログラムを使用して他の値を追加します。

:私はSQL Server 2014とVisual Studio 2015 perfを使用しています。

+1

IDENTITY(1,1) –

答えて

1

あなたは1で、列をインクリメントするSQL ServerのメソッドのIDENTITY(1,1)を使用し、IncrementIdはまた、あなたのテーブルを作成することができ、主キーにする場合1.

CREATE TABLE [dbo].[XXX](
[ID] [int] IDENTITY(1,1)) 
1

からスタートすることができます以下のような:

INSERT INTO dbo.SomeTable (OtherColumn) VALUES ('SomeValue') 

とTのようにテーブルに値を挿入することができるよりも

CREATE TABLE [dbo].[SomeTable](
    [IncrementId] [int] IDENTITY(1,1) NOT NULL, 
    [OtherColumn] [nvarchar](max) NOT NULL, 
CONSTRAINT [PK_SomeTable] PRIMARY KEY CLUSTERED 
(
    [IncrementId] ASC 
)) 

あなたを彼はそう

0
  • が列を作成し、ID列を作成するには、テーブル
  • にID列作る話すことが次の行にあるIDを持つあなたに新しい行を与える、あなたが使用することができますManagement Studioまたはuはクエリを作成できます。
  • 表にデータを挿入するときは、列にデータを指定しますが、ID列として作成した列にはデータを指定しないでください。
0

整数のIDを使用する場合は、プライマリキーにTINYINT、SMALLINT、INT、またはBIGINTのいずれかの列を使用する必要があります。 GUIDが必要な場合は、uniqueidentifier列型を使用する必要があります。ミックスして一致させることはできません。

手動で値を挿入する必要がある場合は、テーブルのIDENTITYオプションを無効にして、独自の値を挿入してから再度有効にする必要があります。これを行うことをお勧めしますかどうかはわかりませんが、これはどのように動作するのですか。

-- Allows you to insert a value into identity column. 
SET IDENTITY_INSERT [SchemaName].[TableName] ON; 

-- Do you insertion here... 

-- Deactivates the identity value insertion. 
SET IDENTITY_INSERT [SchemaName].[TableName] OFF; 
関連する問題