FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[3017] Re:특정 필드에 저장이 안되는 경우가 있으셨던분??
까막.윤창희 [ggamagui] 2227 읽음    2009-02-24 13:08
초보 님이 쓰신 글 :
: 기초코드 저장하는 테이블을 만들었습니다.
:
: N개의 기초 테이블 중에 유독 한군데서 이런 문제가 있습니다.
:
: 제가 SQL.Text := ' Insert (....) Values (....)'
:
: 그리고 ParamByName(...).AsString := xxx;
:
: 이런 식으로 작성해서 저장하구요.
:
: 저장이 잘 될때는 잘 됩니다.
:
: 그런데 어쩔때는 필드값에 Null이 들어갑니다. 이건 ibexpert에서 확인한 결과입니다.
:
: 제가 분명히 코딩할때 '0'아니면 '1'값을 넣어주거든요.
:
: CheckBox.Checked 를 체크해서요.
:
: 또 문자열도 하나 넣는데... ibexpert에서 말하는 empty string 이라도 들어가야 하는데 가끔 Null로 되어 있습니다.
:
: 문제가 되는 이 테이블에서도 6~7개의 필드중에 유독 2개의 필드만이 이런 경우가 나타납니다.
:
: 그것도 가끔이요.
:
: 개발 및 사용 환경은: windows xp, firebird 2.1.x tcp/ip, delphi 2007, ibdac 2.50.x 이렇게 되어 있습니다.
:
: 혹시 저와같이 특정 필드에 데이터가 안들어간 경우가 있으셨던분은 말씀해 주세요.
:
: 감사합니다.

안녕하세요. 까막입니다.

다른 입력 루틴이 존재하는지 체크를 해보시지요.

그리고, 보다 근본적인 문제.
NULL 이 존재해선 안된다면, Field 속성에 NOT NULL 을 주셔야지요.

사람이 아무리 똑똑해도 실수 할 가능성은 항상 존재하는 법입니다.
그 실수를 막기위해서는 제약 조건을 검토하여 적절하게 처리하는 수 밖에 없죠.

DB 구조를 보면 PK, FK, CK 등을 무시하고 그냥 구성한 시스템을 많이 보게 되는데요.
그런 구조의 DB 에서 문제가 생기지 않은 곳은 본 적이 없습니다.

일단 NOT NULL 을 걸어 주시고.
그 후에 어떤 경우에 어떤 부분에서 오류가 발생하는지 점검해 보시길...



                                                                            위대한 단군혼이 살아있는 나라.... 대한민국.

+ -

관련 글 리스트
3014 특정 필드에 저장이 안되는 경우가 있으셨던분?? 초보 2266 2009/02/17
3017     Re:특정 필드에 저장이 안되는 경우가 있으셨던분?? 까막.윤창희 2227 2009/02/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.