이런식으루 간단히 insert 하는 부분인데
왜 Type Mismatch가 나오는지 전혀 모르겠어여.....
제발 가르쳐 주세여...
======================================================
with DM.qry_hosp do
begin
Close;
SQL.Clear;
SQL.Add('insert into "HOSP.db"');
SQL.Add('(병원구분, 병원번호, 병원명칭, 정액정률구분, 정률정액명칭, 병원규모코드, 총병상수,');
SQL.Add('총진료과수, 성명, 사업자등록번호, 주소, 전화번호, 은행, 계좌번호, 진찰료선납유무,');
SQL.Add('프린트1, 프린트2, 프린트3, 프린트4, 프린트5, 프린트6, 진찰료감액율, 약주사, 예약결산구분,');
SQL.Add('우편번호, FAX, EMAIL, 분업여부) values');
SQL.Add('(:HospGuBun, :HospNo, :HospName, :JGuBun, :JName, :HospSize, :ByungC,');
SQL.Add(':JinRyoC, :Name, :RegNo, :Addr, :Tel, :Bank, :AccountNo, :JinChal,');
SQL.Add(':Print1, :Print2, :Print3, :Print4, :Print5, :Print6, :JinChalDC, :YakJusa, :Reserve,');
SQL.Add(':Post, :FAX, :EMAIL, :Bunup)');
ParamByName('HospGuBun').AsInteger := HospGuBun;
ParamByName('HospNo').AsString := EdtHospNo.Text;
ParamByName('HospName').AsString := EdtHospName.Text;
ParamByName('JGuBun').AsString := EdtJGuBun.Text;
ParamByName('JName').AsString := EdtJName.Text;
ParamByName('HospSize').AsString := EdtHospSize.Text;
ParamByName('ByungC').AsInteger := ByungC;
ParamByName('JinRyoC').AsInteger := JinRyoC;
ParamByName('Name').AsString := EdtName.Text;
ParamByName('RegNo').AsString := EdtRegNo.Text;
ParamByName('Addr').AsString := EdtAddr.Text;
ParamByName('Tel').AsString := EdtTel.Text;
ParamByName('Bank').AsString := EdtBank.Text;
showmessage(EdtJinChal.Text);
ParamByName('AccountNo').AsString := EdtAccountNo.Text;
ParamByName('JinChal').AsString := EdtJinChal.Text;
ParamByName('Print1').AsString := Print1;
ParamByName('Print2').AsString := print2;
ParamByName('Print3').AsString := Print3;
ParamByName('Print4').AsString := Print4;
ParamByName('Print5').AsString := Print5;
ParamByName('Print6').AsString := Print6;
ParamByName('JinChalDC').AsInteger := JinChalDC;
ParamByName('YakJusa').AsString := Copy(cboYakJusa.Text, 1, 1);
ParamByName('Reserve').AsString := EdtReserve.Text;
ParamByName('Post').AsString := EdtPost.Text;
ParamByName('FAX').AsString := EdtFax.Text;
ParamByName('EMAIL').AsString := EdtEMail.Text;
ParamByName('Bunup').AsString := EdtBunup.Text;
try
ExecSQL;
except
MessageDlg('병원 DATA 저장 에러', mtError, [mbOK], 0);
exit;
end;
end;
> 이런식으루 간단히 insert 하는 부분인데
> 왜 Type Mismatch가 나오는지 전혀 모르겠어여.....
> 제발 가르쳐 주세여...
>
> ======================================================
> with DM.qry_hosp do
> begin
> Close;
> SQL.Clear;
> SQL.Add('insert into "HOSP.db"');
> SQL.Add('(병원구분, 병원번호, 병원명칭, 정액정률구분, 정률정액명칭, 병원규모코드, 총병상수,'); <=========여기 한글을 필드명으로 빠꾸어 주어야 하지 않나요 ???
> SQL.Add('총진료과수, 성명, 사업자등록번호, 주소, 전화번호, 은행, 계좌번호, 진찰료선납유무,');
> SQL.Add('프린트1, 프린트2, 프린트3, 프린트4, 프린트5, 프린트6, 진찰료감액율, 약주사, 예약결산구분,');
> SQL.Add('우편번호, FAX, EMAIL, 분업여부) values');
> SQL.Add('(:HospGuBun, :HospNo, :HospName, :JGuBun, :JName, :HospSize, :ByungC,');
> SQL.Add(':JinRyoC, :Name, :RegNo, :Addr, :Tel, :Bank, :AccountNo, :JinChal,');
> SQL.Add(':Print1, :Print2, :Print3, :Print4, :Print5, :Print6, :JinChalDC, :YakJusa, :Reserve,');
> SQL.Add(':Post, :FAX, :EMAIL, :Bunup)');
>
> ParamByName('HospGuBun').AsInteger := HospGuBun; <====요기에 .Text가 안 /빠졌나요?....
> ParamByName('HospNo').AsString := EdtHospNo.Text;
> ParamByName('HospName').AsString := EdtHospName.Text;
> ParamByName('JGuBun').AsString := EdtJGuBun.Text;
> ParamByName('JName').AsString := EdtJName.Text;
> ParamByName('HospSize').AsString := EdtHospSize.Text;
> ParamByName('ByungC').AsInteger := ByungC;
> ParamByName('JinRyoC').AsInteger := JinRyoC;
> ParamByName('Name').AsString := EdtName.Text;
> ParamByName('RegNo').AsString := EdtRegNo.Text;
> ParamByName('Addr').AsString := EdtAddr.Text;
> ParamByName('Tel').AsString := EdtTel.Text;
> ParamByName('Bank').AsString := EdtBank.Text;
> showmessage(EdtJinChal.Text);
> ParamByName('AccountNo').AsString := EdtAccountNo.Text;
> ParamByName('JinChal').AsString := EdtJinChal.Text;
> ParamByName('Print1').AsString := Print1;
> ParamByName('Print2').AsString := print2;
> ParamByName('Print3').AsString := Print3;
> ParamByName('Print4').AsString := Print4;
> ParamByName('Print5').AsString := Print5;
> ParamByName('Print6').AsString := Print6;
> ParamByName('JinChalDC').AsInteger := JinChalDC;
> ParamByName('YakJusa').AsString := Copy(cboYakJusa.Text, 1, 1);
> ParamByName('Reserve').AsString := EdtReserve.Text;
> ParamByName('Post').AsString := EdtPost.Text;
> ParamByName('FAX').AsString := EdtFax.Text;
> ParamByName('EMAIL').AsString := EdtEMail.Text;
> ParamByName('Bunup').AsString := EdtBunup.Text;
>
> try
> ExecSQL;
> except
> MessageDlg('병원 DATA 저장 에러', mtError, [mbOK], 0);
> exit;
> end;
>
> end;
필드 Type와 입력받는 타입이 같아야 하는건 아시죠.
Type Mismatch 이니까 어디부분에서 Type이 잘못 된거 같군요...