Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zapomniałem dodać kolumnę klucza podstawowego jako tożsamość

Możesz upuścić [rownumber] a następnie dodaj z tożsamością

Alter Table [dbo].[sydShopOrder] Drop Column rownumber
Go
Alter Table [dbo].[sydShopOrder]
Add rownumber Int Identity(1, 1)
Go

Jeśli chcesz wypełnić pole tożsamości dla istniejących danych, lepiej utworzyć kolejną tabelę tymczasową i zachować wszystkie rekordy [dbo].[sydShopOrder] w tym. Następnie truncate [dbo].[sydShopOrder] a następnie wstaw wartości z tej tabeli tymczasowej do [dbo].[sydShopOrder]

CREATE TABLE #temp  ([firstName] [varchar](50) NULL,
    [lastName] [varchar](50) NULL,
    [employeeNumber] [varchar](50) NULL,
    [productID] [varchar](50) NULL,
    [shopID] [varchar](50) NULL,
    [location] [varchar](50) NULL,
    [address] [varchar](50) NULL,
    [department] [varchar](50) NULL,
    [datestamp] [date] NULL)

INSERT INTO #temp 
SELECT [firstName],[lastName],[employeeNumber],
       [productID], [shopID],[location],
       [address],[department],[datestamp]
FROM [dbo].[sydShopOrder]

TRUNCATE TABLE [dbo].[sydShopOrder]

INSERT INTO [dbo].[sydShopOrder]
SELECT * FROM #temp

Oto przykład SQLFIDDLE




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak sprawdzić stan replikacji SQL za pomocą T-SQL?

  2. Spłaszczanie przecinających się przedziałów czasowych

  3. Tworzenie WIDOKU z wielu tabel, z których każda ma inną liczbę kolumn

  4. Sql Server 2008 pomoc dotycząca składni sp_executesql - myślę, że moje cytaty nie są poprawne

  5. Jak uniemożliwić jednoczesne uruchamianie zadań serwera SQL?