질문 Q #21351
[Oracle DB] date 타입에 해당하는 날짜를 입력하는 방법에 대해서..
packesign 2019-06-03 12:04:40

PHP7 환경에 코드이그나이터 설치해서 DB 는 오라클 연결해서

개발 시작했습니다. 그런데 DATE 타입의 데이터를 어떻게 입력해야할지

감이 잘 안옵니다..

추후 유지보수를 위해 Active Record 방식을 사용하고 싶습니다ㅠㅠ

php 의 date 함수를 사용하면 리터럴 에러가 출력되고..

구글링해도 마땅한 방법을 찾기가 어렵네요..

고수 여러분들의 답변 부탁드립니다!!ㅠㅠ

답변 2
#1 변종원(웅파) 2019-06-03 12:11:14
#2 kaido 2019-06-03 13:18:44

oracle의 sysdate, systimestamp, to_date 사용 하셔야 할 것입니다

oracle은 데이트 타입 사용이 엄격해서 타입에 맞추어서 넣어줘야만 합니다.

당연하게도 시분초 밀리세컨드까지 말이죠.

CI의 액티브레코드를 넣으신다면 

$this->db->select(' to_char(sysdate, "yyyy-nn-dd") ', false);
$this->db->where(' time =  systimestamp(6) ' , false, false );

time이 date 형태이거나 하면 to_char으로 감싸서 비교해야합니다.

 

mysql에 비해서 날짜 컨트롤이 굉장히 까다로운 편입니다.