Вставка строк в таблицу с предопределенным тождеством - PullRequest
0 голосов
/ 17 сентября 2009

Я переношу данные из старой базы данных в новую, и мне нужно сохранить идентификатор из старой базы данных при вставке их в новую базу данных. Однако это не работает.

Это мой запрос:

SET IDENTITY_INSERT RentalEase.dbo.tblTenant ON
INSERT INTO RentalEase.dbo.tblTenant SELECT [ID]
    ,1
      ,[PropertyID]
    ,0
      ,[UnitID]
      ,[TenantName]
      ,[Sex]
      ,[BirthDate]
      ,[SSNO]
      ,[CoTenant1]
      ,[CoTenant1Sex]
      ,[CoTenant1BirthDate]
      ,[CoTenant1SSNO]
      ,[CoTenant2]
      ,[CoTenant2Sex]
      ,[CoTenant2BirthDate]
      ,[CoTenant2SSNO]
      ,[CoTenant3]
      ,[CoTenant3Sex]
      ,[CoTenant3BirthDate]
      ,[CoTenant3SSNO]
      ,[CarColor]
      ,[CarModel]
      ,[CarYear]
      ,[CarState]
      ,[CarPlateNumber]
      ,[Memo]
      ,[Address1]
      ,[Address2]
      ,[Address3]
      ,[Address4]
      ,[Phone]
      ,[ReferBy]
      ,[BeginDate]
      ,[NoticeGiven]
      ,[LeaseMonth2Month]
      ,[LeaseEnds]
      ,[DepositPaid]
      ,[DepositRefundable]
      ,[RefundMemo]
      ,[RentDueDay]
      ,[Charge1]
      ,[Charge1Amount]
      ,[Charge2]
      ,[Charge2Amount]
      ,[Charge3]
      ,[Charge3Amount]
      ,[Charge4]
      ,[Charge4Amount]
      ,[ContractText]
      ,[BalanceDue]
  FROM [oldTables].[dbo].[tblCurrentTenant]

  SET IDENTITY_INSERT RentalEase.dbo.tblTenant OFF

SQL Server жалуется, что «Явное значение для столбца идентификаторов в таблице RentalEase.dbo.tblTenant 'может быть указано только в том случае, если используется список столбцов и IDENTITY_INSERT включен.»

Что мне нужно сделать, чтобы заставить его работать?

1 Ответ

6 голосов
/ 17 сентября 2009

"Явное значение для столбца идентификации в таблице RentalEase.dbo.tblTenant ' можно указывать только в том случае, если используется список столбцов и IDENTITY_INSERT включен."

Так что используйте список столбцов, так как сообщение гласит:

SET IDENTITY_INSERT RentalEase.dbo.tblTenant ON
INSERT INTO RentalEase.dbo.tblTenant ([ID], [fieldname], [fieldname], ...)
SELECT [ID], ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...