2011-08-09 2 views
16

나는 무언가가 삽입되었을 때 현재 날짜 & 시간을 얻고 이것을 데이터베이스에 삽입하기를 원하는 필드가있다. 날짜가 & 인 시간을 얻고 기본값으로 설정하는 방법이 있습니까?SQL Server 기본 날짜 시간 스탬프?

현재 기본값은 다음과 같습니다. (getdate()) 날짜 만 설정합니다. 어떻게 시간을 정합니까?

+0

사용하는 SQL의 구현을 지정해야합니다. – JNK

+1

@JNK : 매크로도 만들었습니까? – VoodooChild

+1

@voodoo 아직 아니지만 닫기가 – JNK

답변

26

GETDATE()은 SQL Server의 날짜와 시간입니다.

이것을 확인하려면 SELECT GETDATE()을 실행하십시오.

필드의 데이터 유형은 무엇입니까? 그것이 DATE이면 시간 값도 포함하지 않습니다.

+1

+1 : GetDate는 타임 스탬프도 가져옵니다! – VoodooChild

+0

현재 시간을 사용하지 않으려면 어떻게해야합니까? – Amicable

+0

질문은 현재 날짜와 시간을 반환하는 것입니다. 뭐가 정확히 원하는거야/ – JNK

2

SYSDATETIME()에는 현재 날짜와 시간이 표시됩니다.

열의 데이터 형식이 datetime이고 date이 아닌지 확인하십시오. 그렇지 않으면 datetime을 보유 할 수 없습니다.

0

대부분의 SQL 구현 (엔진)에는 CURRENT_TIMESTAMP 기능이 있습니다.

create table YourTable 
    (
    ... other columns ... 
    CreateDt datetime default getdate(), 
    ... other columns ... 
    ) 

이 방법의 단점은 당신이 insert 절을 지정하여 값을 덮어 쓸 수 있다는 것입니다 :

4

쉬운 방법 중 하나는 필드를 기본 제약 조건을 제공하는 것입니다.

3

개인적으로 혼란을 피하기 위해 GETUTCDATE() 대신 GETDATE()를 사용하고 싶습니다.

+2

그 중 하나를 권 해드립니다. 사용하는 경우 현지 시간을 없애기가 매우 어렵습니다. –