database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 27524 게시물 읽기
No. 27524
datetime 필드에 default value 로 now() 값을 집어넣을 수 없나요?
작성자
김종화(zepinos)
작성일
2008-04-17 14:43
조회수
8,536

다른 DBMS 만 쓰다가 오랫만에 mysql 을 쓰는데


Table 생성시 datetime 형태의 필드에 default value 로 now 나 now() 를 집어넣으니 에러가 발생하네요.




조언 부탁드립니다.

이 글에 대한 댓글이 총 2건 있습니다.

MySQL 은 다른 DBMS 와는 달리 default value 로 now(), curdate() 등의 함수를 지정할 수 없습니다.

앞으로 수정되어야 할 부분인데...


그 대신 해결할 수 있는 대안을 마련해 두었습니다.


정의된 테이블에 처음으로 등장하는 timestamp 라는 자료형의 column 에 대해서는 default 로 현재의 시간이 자동으로 insert 됩니다.

약간 불편한 면은 있지만, 일반적으로 하는 웹프로그래밍상에서는 이 정도 대안만으로도 90% 는 해결이 됩니다.


참조하시기 바랍니다.


=====================================

아래 구문을 테스트해 보지는 않았고, 그냥 예시로 적어 둡니다.


CREATE TABLE t (a int, b timestamp);


INSERT INTO TABLE t(a) VALUES (1);


SELECT * FROM t;


해 보시면 결과를 알수 있을 것입니다.

정재익(neople)님이 2008-04-17 19:10에 작성한 댓글입니다.

default value로 함수는 쓸 수 없는 것이 현재 MySQL의 특징(?) 이랄까요...

대신 CURRENT_TIMESTAMP를 쓰시길 바랍니다.

박현우(lqez)님이 2008-04-20 00:19에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
27527안녕하세요 [1]
정재민
2008-04-18
3146
27526mysql cluster를 설치해서 테스트중입니다. [1]
조원국
2008-04-18
4144
27525MySQL strict Mode 해제방법이 궁금합니다. [3]
김전일
2008-04-18
3882
27524datetime 필드에 default value 로 now() 값을 집어넣을 수 없나요? [2]
김종화
2008-04-17
8536
27523mysql5 에서 view 테이블 속도 관련해서 문의드립니다. [1]
유영재
2008-04-17
11337
27522MS-SQL과 연결된 서버 설정 후 데이터 누락문제
이기성
2008-04-17
3663
27518apmsetup5와 자바가 연동이 안됩니다....;;
유재훈
2008-04-16
3139
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다