2016-07-19 2 views
1

T-SQL 데이터베이스 우리는 타임 스탬프 열을 가지고 있습니다. 우리는 레코드를 삽입하거나 업데이트 할 때마다 레코드에서 삽입하거나 업데이트 한 것과 동일한 키를 타임 스탬프로 선택합니다. 우리는 이중 검색을 피하고자삽입 된 타임 스탬프

: 업데이트 선택을 위해, 우리는이 같은 시도 : 난, 이탈리아어로 '타임 스탬프 열 같은 것을 오류가

declare @table table(id int, val timestamp not null) 
declare @table2 table(val timestamp) 

insert @table(id) 
output inserted.val into @table2 
values (1) 

를하지만 컴파일되지 않습니다 수 명시 적으로 설정되지 않음 '

모든 힌트를 원하십니까?

답변

1

TIMESTAMP는 자동으로 생성되고 읽기 전용으로 만 노출되는 데이터 형식입니다. 그것은 시스템 내에서 증가하는 숫자를 기반으로합니다.

SQL Server: Cannot insert an explicit value into a timestamp column

이 시도 :

DECLARE @table TABLE(id INT, val TIMESTAMP NOT NULL) 
DECLARE @table2 TABLE(val DATETIME) 

INSERT @table (id) 
OUTPUT inserted.val INTO @table2(val) 
VALUES (1) 

SELECT 
    t.id, 
    t.val, 
    CONVERT(TIMESTAMP, t2.val) AS table2_timestamp 
FROM 
    @table AS t, 
    @table2 AS t2