TStringField 소스를 보면
참 또는 거짓이 'T', 'F'로 되어있습니다.
Query1.FieldByName('필드').AsBoolean := True;
이렇게 코딩하면 내부적으로는 'T'로 값이 바뀌어 저장됩니다.
푸른솔 님이 쓰신 글 :
: 감사합니다.
: 그렇다면 궁금한 것이 있습니다.
:
: if Query1.FieldByName('필드').AsBoolean then
: 이 문장은 되는데
:
: Query1.FieldByName('필드').AsBoolean := True;
: 이 문장은 안 됩니다.
:
: 그렇다면 이렇게 만들면 둘(위의 두 문장) 다 된다는 얘기인지요?
: CREATE DOMAIN BOOLSTR AS CHAR
: CHECK (value in ('T', 'F')
:
: 다시 한 번 만 조언을 부탁드립니다.
:
:
:
:
: civilian,안영제 님이 쓰신 글 :
: : 지난번에도 답해드렸던 기억이 나는데...
: :
http://firebird.borlandforum.com/impboard/impboard.dll?action=read&db=fb_qna&no=1634
: :
: : 푸른솔 님이 쓰신 글 :
: : : 다음과 같이 BoolStr 도메인을 만들었습니다.
: : : CREATE DOMAIN BOOLSTR AS VARCHAR
: : : CHECK (value in ('True', 'False')
: : :
: : : 위와 같은 BoolStr 도메인을 쓰는 필드에 값을 저장하면 에러가 발생됩니다.
: : : Query1.FieldByName('필드').AsBoolean := True;
: : :
: : : 그러나 이것은 됩니다.
: : : Query1.FieldByName('필드').AsString := 'True';
: : :
: : : 왜 이것은 에러가 발생되는지요? 되야 되는 것이 정상인 것 같은데...
: : : Query1.FieldByName('필드').AsBoolean := True;
: : :
: : : 도메인을 잘 못 만들었읍니까?
: : :
: : : Database를 처음 만들 때 Charset을 KSC_5601로 줬는데 이게 좀 걸립니다.
: : : Charset을 KSC_5601로 주는게 당연한 것 같은데 이것이 맞는지요?
: : : Font Character Set은 DEFAULT_CHARSET으로 했구요.... 이것도 한글로 할려다가 그냥 DEFAULT로
: : : 했습니다.
: : :
: : : 조언을 부탁드립니다.
: : :
: : : 델7 + FB 2.0입니다.