Q&A

  • [error]sql에서 type mismatch in expression
안녕하세요 케슬로드입니다.



## 디비 구조

필드이름 타입 크기

aa a 10

bb n



##소스코드

with query1 do

begin

close;

sql.clear;

sql.add('insert into "a.db"');

sql.add('(aa,bb)');

sql.add('values (:tmp1, :tmp2)');

params.items[0].asstring := 'test';

params.items[1].asinteger:= -100;

execsql;

end;



여기서 :tmp2에서 에러가 발생을 하는데 왜 그렇죠?

(어떻게 알았냐면 :tmp2를 없애고 하면 에러가 없으니까요^^;)

2  COMMENTS
  • Profile
    parkisu 2000.12.16 08:35
    castle road wrote:

    > 안녕하세요 케슬로드입니다.

    >

    > ## 디비 구조

    > 필드이름 타입 크기

    > aa a 10

    > bb n

    >

    > ##소스코드

    > with query1 do

    > begin

    > close;

    > sql.clear;

    > sql.add('insert into "a.db"');

    > sql.add('(aa,bb)');

    > sql.add('values (:tmp1, :tmp2)');

    > params.items[0].asstring := 'test';

    > params.items[1].asinteger:= -100;

    > execsql;

    > end;

    >

    > 여기서 :tmp2에서 에러가 발생을 하는데 왜 그렇죠?

    > (어떻게 알았냐면 :tmp2를 없애고 하면 에러가 없으니까요^^;)



    tmp1의 테이터타입을 점검해 보세요. 문자열이 아닌 것 같은데요...

  • Profile
    castle road 2000.12.16 17:30
    확실히 number 타입니다.

    저두 그 점을 중점적으로 보았는데 number 타입이 학실합니다.



    sql explorer로 하면 되는데, 직접 코딩하니 안되는 군요... 쩝



    i believe i can fly~~



    parkisu wrote:

    > castle road wrote:

    > > 안녕하세요 케슬로드입니다.

    > >

    > > ## 디비 구조

    > > 필드이름 타입 크기

    > > aa a 10

    > > bb n

    > >

    > > ##소스코드

    > > with query1 do

    > > begin

    > > close;

    > > sql.clear;

    > > sql.add('insert into "a.db"');

    > > sql.add('(aa,bb)');

    > > sql.add('values (:tmp1, :tmp2)');

    > > params.items[0].asstring := 'test';

    > > params.items[1].asinteger:= -100;

    > > execsql;

    > > end;

    > >

    > > 여기서 :tmp2에서 에러가 발생을 하는데 왜 그렇죠?

    > > (어떻게 알았냐면 :tmp2를 없애고 하면 에러가 없으니까요^^;)

    >

    > tmp1의 테이터타입을 점검해 보세요. 문자열이 아닌 것 같은데요...