2012-12-01 3 views
-1

데이터베이스 테이블에 기본 Unix 날짜 시간을 삽입하고 싶습니다. 그러나 나는 이것을 삽입 할 수 없다. 기본 유닉스 날짜 시간을 설정할 수 있도록 도와주세요. 오라클의 새로운 기능입니다.oracle에 기본 unix datetime 설정

+0

왜 적절한 데이터베이스'DATE' 또는'TIMESTAMP' 데이터 타입 대신 Unix 데이터를 저장하고 싶습니까? – eaolson

+0

데이터를 빨리 검색하는 것이 매우 유용합니다. 그래서 내가 필요한 이유입니다. 제 테이블에 crore 데이터 이상이 있기 때문에 – user1804985

+0

@ user1804985 - 필드를 'NUMBER'로 선언하고 유닉스 타임 스탬프를 삽입해도 데이터를 빨리 검색 할 수는 없지만 적어도 적절한 DATE 열에 저장된 데이터를 검색하는 것은 쉽다. 그것이 Oracles의 모든 날짜/시간 함수입니다. 다룰수있다. –

답변

0

SYSDATE은 현재 날짜와 시간을 DATE (Oracle DATE은 항상 두 번째 날짜와 시간 구성 요소를 모두 포함)로 반환합니다.

SYSTIMESTAMP은 초와 초를 포함한 Oracle TIMESTAMP WITH TIME ZONE으로 현재 날짜와 시간을 반환합니다. 당신은 당신이 "유닉스 날짜 시간 형식"을 의미하는 것입니다 있으리라 믿고있어는 1970 년 1 월 1 일 (이후 초 수를 나타내는 NUMBER을 삽입 할 경우

, 그 (SYSDATE - date '1970-01-01') * 60 * 60 * 24 될 것입니다.

+0

네, 맞습니다. 데이터를 삽입 할 때이 유닉스 값을 자동으로 날짜 필드에 삽입하고 싶습니다. – user1804985

+0

@ user1804985 - 열이 'DATE'로 정의 된 경우 숫자 값을 삽입 할 수 없습니다. 숫자 값을 저장하려면 열을 NUMBER로 선언해야합니다. –

+0

해당 열 이름의 데이터 형식을 number로 선언합니다. – user1804985

0

SYSTIMESTAMP 예를 들어 찾고 계십니까? 이하?

INSERT INT TABLE(A, B, DATETIMECOL) 
    VALUES ('a', 'b', SYSTIMESTAMP); 

이렇게하면 서버의 현재 시간 스탬프가 데이터베이스에 삽입됩니다.

+0

SQL에서 getdate() 함수와 같은 기능이 필요합니다. – user1804985

+0

무슨 소리 야? 'SELECT SYSTIMESTAMP FROM DUAL'처럼 질의로 함수를 생성하면, 현재 시간 스탬프를 반환 할 것입니다. –

+0

행을 삽입하려면 유닉스 날짜 형식으로 자동으로 삽입 된 날짜 필드를 의미한다고 가정합니다. – user1804985

관련 문제