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
운영게시판
최근게시물
PostgreSQL Q&A 10524 게시물 읽기
No. 10524
9.x에서 17버전으로 바꾸니 프로그램에서 처리가 안되는 부분이 있네요 ㅜ.ㅜ
작성자
이기자(k3i2)
작성일
2025-05-13 14:21
조회수
238

예를 들어 회원기입시, 저장일시 컴럼이 기본값을 now()로 지정하여,

9.x버전였을때는 그컬럼에 값을 안넣으면(null), 자동으로 현재일시가 저장이 됐었는데, 17버전으로 백업한걸 복원시킨후 프로그램을 실행시키니 값이 없다고 오류가 나네요.

db쿼리로 해도 마찬가지입니다.

뭘 해줘야 기존처럼 될까요..

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

default 관련해서 바뀐 것이 없으니, 

일단 

psql 로 접속해서 

해당 테이블의 \d 결과를 살펴보세요. 

\d 해당테이블


여기 default가 빠졌으면 업그레이드 과정에서 문제가 있었던거고,

그렇지 않다면, insert 구문에 문제가 있었던것일겝니다. 

 

김상기(ioseph)님이 2025-05-13 15:09에 작성한 댓글입니다.

디폴트는 now() 그대로 복원됐습니다.

전 버전에서는 저장일시 컬럼에 null을 넣으면 자동으로 현재일시가 저장됐었는데,

17버전으로 업한후에는 null은 안된다는 에러를 띄우네요.

자동증가값도 마찬가지입니다. ㅜ.ㅜ

이기자(k3i2)님이 2025-05-14 09:14에 작성한 댓글입니다.

아, 표준이, default가 있을 때, null 이 입력되면, default로 처리하는 것이 아니라, null 처리하는거라서 바뀐 것일거에요.

default를 입력하고 싶다면, 키워드가 null 이 아니라, default 입니다.

ioseph=> insert into t values (1, default);

INSERT 0 1

ioseph=> select * from t;

+---+----------------------------+

| a |             b              |

+---+----------------------------+

| 1 | 2025-05-14 16:48:25.155773 |

+---+----------------------------+


 

김상기(ioseph)님이 2025-05-14 16:49에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
10526한 서버의 여러 인스턴스 구성 [2]
태산
2025-06-12
74
10525대량 insert 작업 시 속도이슈 문의 [1]
마이그
2025-05-20
225
105249.x에서 17버전으로 바꾸니 프로그램에서 처리가 안되는 부분이 있네요 ㅜ.ㅜ [3]
이기자
2025-05-13
238
10522버전을 업시키니 odbc 연결이 안됩니다. [2]
이기자
2025-05-09
227
10520HA 쿼리 취소 에러 [1]
coco
2025-04-22
270
10519auto vacuum 로그 질문 드려요 [1]
궁금해요
2025-04-04
317
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2025 DSN, All rights reserved.
작업시간: 0.009초, 이곳 서비스는
	PostgreSQL v17.5로 자료를 관리합니다