Er. Anil Kumar Ответов: 2

Как использовать два столбца identity или auto increment в одной таблице в sql server?


How to use two identity or auto increment column in one table in sql server??
 
i am creating a table for Hospital  patientOpd 
              
      CREATE TABLE [dbo].[PatientOpd](
      [Id] [int] NOT NULL,
      [OpdNo] [int] IDENTITY(1,1) NOT NULL,
      [CreatedOn] [datetime] NOT NULL,
      [Name] [nvarchar](50) NULL,
)
 
i want to that id and OpdNo  should be auto increment  value 
  as Opd no will be reset daily and  
Id will be increment continuously...

2 Ответов

Рейтинг:
1

Jörgen Andersson

В SqlServer не может быть более одного столбца идентификаторов.

Если у вас есть SqlServer2012 или более поздняя версия, Вы можете использовать последовательность для одного из столбцов.
В противном случае вам придется поиграть с триггером вставки, который увеличивает один из столбцов, но это рецепт катастрофы IMHO.


Рейтинг:
1

Kumarsamy

CREATE TABLE dbo.Demo(ID INT IDENTITY PRIMARY KEY,
                      IDwithChar AS 'C' + RIGHT('000000' + CAST(ID AS VARCHAR(10)), 6) PERSISTED
                     )




insert into Demo default values