db에 insert를 하려고 하는데 다음과 같은 에러가 납니다
문자 처리는 싱클 쿼테이션 마크로 제대로 처리를 한 것 같은데
왜 에러가 나는지 모르겠네요
소스가요
생략...
query1.close;
query1.sql.clear;
query1.sql.add('insert into mob.itm_mob_dlv_cpl (wbl_no,dlv_end_dt,dlv_end_hms,insuer_r,insuer_nm,gb) values (''' + wbl_no + ''',''' + dlv_end_dt + ''',''' + dlv_end_hms + ''',''' + insuer_r + ''',''' +insuer_nm + ''',''' + gb + ''')');
query1.ExecSQL ;
생락....
예를들어 파라미터로 넘어온 변수에 저장된 값이...sting이므로
쿼리를 던질 때 '' 변수명 '' (싱클 쿼테이션 두개)으로 처리를 했는데
다른 처리가 필요한가요??
부탁드립니다..급해서요
우선 왜 Dynamic SQL을 사용하시지 않는 건지 모르겠네욤..
Query.SQL.Text:= 'Insert into TableName (Field1, Field2) Values :Value1, :Value2)';
Query.ParamByName('Value1').AsString:= 'Test';
Query.ParamByName('Value2').AsInteger:= 0;
Query.ExecSQL;
와 같은 형식입니다.
보기에도 깔끔하고..
따옴표 갯수세다가 지쳐서 다른 방법을 알려드립니다..
그리고 델파이 책 한권쯤은 분명 가지고 계시겠지요??
Dynamic SQL에 대해서 좀 봐두심이 좋을 듯 합니다..
From 류..
초보 wrote:
> db에 insert를 하려고 하는데 다음과 같은 에러가 납니다
> 문자 처리는 싱클 쿼테이션 마크로 제대로 처리를 한 것 같은데
> 왜 에러가 나는지 모르겠네요
> 소스가요
>
> 생략...
> query1.close;
> query1.sql.clear;
> query1.sql.add('insert into mob.itm_mob_dlv_cpl (wbl_no,dlv_end_dt,dlv_end_hms,insuer_r,insuer_nm,gb) values (''' + wbl_no + ''',''' + dlv_end_dt + ''',''' + dlv_end_hms + ''',''' + insuer_r + ''',''' +insuer_nm + ''',''' + gb + ''')');
> query1.ExecSQL ;
> 생락....
> 예를들어 파라미터로 넘어온 변수에 저장된 값이...sting이므로
> 쿼리를 던질 때 '' 변수명 '' (싱클 쿼테이션 두개)으로 처리를 했는데
> 다른 처리가 필요한가요??
> 부탁드립니다..급해서요