|
김시환 님이 쓰신 글 :
: MySQL 에 접속하기 위한 컴포넌트는
:
: TQuery, TSQLConnection, TSQLDataSet 3가지를 사용했습니다. 빌더 버젼은 6.0입니다.
: 저장은 아래와 같이 코딩을 했습니다.
:
: AnsiString command ;
:
: command.sprintf("insert into %s.liv_25c(BOSA_ID,LOT_NUM,M_DATE,TEC_Pass_Fail,Human) value('%s','%s','%s','Fail','%s')",
: g_stMachine_Data.Database.Data_Database.c_str(),
: g_stSampleInform.Sample_Serial[m_iSampleGroup][Channel].c_str(),
: g_stSampleInform.LOT_Number.c_str(),
: TDateTime::CurrentDateTime().FormatString("YYYY-MM-DD hh:mm:ss"),
: m_asOperator.c_str()) ;
:
: SQLDataSet1->CommandText = command ;
: SQLDataSet1->ExecSQL(true) ;
:
: 문제는 m_asOperator 가 영어는 잘 저장이 되는데 한글하면 저장이 안돼는 문제가 생깁니다.
: 디버깅으로 command 를 보면 정상적으로 한글이 들어가 있습니다.
:
: 다른 프로그램에서는 정상적으로 한글입력이 됩니다.
:
: 제가 Database 쪽은 잘 해보지 못해서 원인을 찾기가 어렵네요..
:
: 도움을 부탁드립니다.
:
빌더6이면 유니코드를 지원하지 않아서 MySQL Table을 euckr_korean_ci 로 생성하고
DB 연결할 때 charset = euckr 으로 해야될거에요
|