Столбец типа данных RowVersion превращается в столбец типа данных Timestamp. - PullRequest
0 голосов
/ 14 октября 2019

SQL Server превращает столбец типа данных RowVersion в столбец отметки времени типа данных.

т.е. я пишу таблицу create как:

USE [AllanFordKeyTestDB]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[AJF2_Accounts3](
    [ID123]  [RowVersion] NOT NULL)
GO

, затем я использую опции меню Script table как create toновое окно запроса, и я получаю следующее:

USE [AllanFordKeyTestDB]
GO

/****** Object:  Table [dbo].[AJF2_Accounts3]    Script Date: 14/10/2019 4:13:50 PM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[AJF2_Accounts3](
    [ID123] [timestamp] NOT NULL
) ON [PRIMARY]
GO

Это нормально?

select @@version gives me 

Microsoft SQL Server 2017 (RTM-CU14) (KB4484710) - 14.0.3076.1 (X64)12 марта 2019 19:29:19 Copyright (C) 2017 Microsoft Corporation Enterprise Edition: лицензирование на основе ядра (64-разрядная версия) в Windows Server 2016 Standard 10.0 (сборка 14393:) (гипервизор)

1 Ответ

2 голосов
/ 14 октября 2019

rowversion - это новое имя для более старого типа данных временной метки. В основном это один и тот же тип данных, поэтому нельзя превращать одно в другое.

Некоторые драйверы все еще используют старое имя. Многие из нас уже давно жаловались на это Microsoft. Из-за желания не нарушать обратную совместимость, я не вижу, чтобы она изменилась слишком рано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...