Q&A

  • 초보적 sql이요..
라디오그룹에 세개의 아이템(Cust_No,Name,Phone)을 넣구요

Edit1.Text를 넘겨받아서 쿼리를 실행시키려고 하니

에러가 생깁니다..



에러내용인즉



General sql error

Token unknown -line 2, char - 1

'+sql+''

이라는데요..



아래는 검색버튼의 내용입니다.

procedure TForm2.Button1Click(Sender: TObject);

var

Sql : TStringList;

begin

initialize(SQL);

try

SQL := TStringList.Create;

with DM.Query1 do

begin

Close;

SQL.Clear;

SQL.Add('Select * From SJCust');

SQL.Add('''+Sql+''');



Case RadioGroup1.ItemIndex of

0 : Sql.Add('where Cust_No = "'+Edit1.Text+'"');

1 : Sql.Add('where Name like "%'+Edit1.Text+'%"');

2 : Sql.Add('where Phone like "%'+Edit1.Text+'%"');

end;

open;

end;

Finally

SQL.Free;

end;

Finalize(SQL);

end;



2  COMMENTS
  • Profile
    박홍석 1999.04.21 09:20
    강지영 wrote:

    > 라디오그룹에 세개의 아이템(Cust_No,Name,Phone)을 넣구요

    > Edit1.Text를 넘겨받아서 쿼리를 실행시키려고 하니

    > 에러가 생깁니다..

    >

    > 에러내용인즉

    >

    > General sql error

    > Token unknown -line 2, char - 1

    > '+sql+''

    > 이라는데요..

    >

    > 아래는 검색버튼의 내용입니다.

    > procedure TForm2.Button1Click(Sender: TObject);

    > var

    > Sql : TStringList;

    > begin

    > initialize(SQL);

    > try

    > SQL := TStringList.Create;

    > with DM.Query1 do

    > begin

    > Close;

    > SQL.Clear;

    > SQL.Add('Select * From SJCust');

    > SQL.Add('''+Sql+''');

    >

    > Case RadioGroup1.ItemIndex of

    > 0 : Sql.Add('where Cust_No = "'+Edit1.Text+'"');

    > 1 : Sql.Add('where Name like "%'+Edit1.Text+'%"');

    > 2 : Sql.Add('where Phone like "%'+Edit1.Text+'%"');

    > end;

    > open;

    > end;

    > Finally

    > SQL.Free;

    > end;

    > Finalize(SQL);

    > end;

    >



    안녕하세요. 박홍석입니다.

    소스를 아래처럼 해보시죠.



    var

    str : string;



    SQL.Add('Select * From SJCust');

    SQL.Add(str);

    Case RadioGroup1.ItemIndex of

    0 : str := 'where Cust_No = "'+Edit1.Text+'"';

    1 : str := 'where Name like "%'+Edit1.Text+'%"';

    2 : str := 'where Phone like "%'+Edit1.Text+'%"';

    end;



  • Profile
    강지영 1999.04.22 20:47
    박홍석 wrote:

    > 강지영 wrote:

    > > 라디오그룹에 세개의 아이템(Cust_No,Name,Phone)을 넣구요

    > > Edit1.Text를 넘겨받아서 쿼리를 실행시키려고 하니

    > > 에러가 생깁니다..

    > >

    > > 에러내용인즉

    > >

    > > General sql error

    > > Token unknown -line 2, char - 1

    > > '+sql+''

    > > 이라는데요..

    > >

    > > 아래는 검색버튼의 내용입니다.

    > > procedure TForm2.Button1Click(Sender: TObject);

    > > var

    > > Sql : TStringList;

    > > begin

    > > initialize(SQL);

    > > try

    > > SQL := TStringList.Create;

    > > with DM.Query1 do

    > > begin

    > > Close;

    > > SQL.Clear;

    > > SQL.Add('Select * From SJCust');

    > > SQL.Add('''+Sql+''');

    > >

    > > Case RadioGroup1.ItemIndex of

    > > 0 : Sql.Add('where Cust_No = "'+Edit1.Text+'"');

    > > 1 : Sql.Add('where Name like "%'+Edit1.Text+'%"');

    > > 2 : Sql.Add('where Phone like "%'+Edit1.Text+'%"');

    > > end;

    > > open;

    > > end;

    > > Finally

    > > SQL.Free;

    > > end;

    > > Finalize(SQL);

    > > end;

    > >

    >

    > 안녕하세요. 박홍석입니다.

    > 소스를 아래처럼 해보시죠.

    >

    > var

    > str : string;

    >

    > SQL.Add('Select * From SJCust');

    > SQL.Add(str);

    > Case RadioGroup1.ItemIndex of

    > 0 : str := 'where Cust_No = "'+Edit1.Text+'"';

    > 1 : str := 'where Name like "%'+Edit1.Text+'%"';

    > 2 : str := 'where Phone like "%'+Edit1.Text+'%"';

    > end;

    >



    음.. 처음엔 형석님처럼 코딩을 했는데

    에러가 나서 TStringList로 고친것이었거든요..

    그래서 또 다시 고쳐봤지요. 파라메터로 넘겨주도록이요.. 그랬더니 실행이 잘 되었습니다.



    0 : str := 'where Cust_No = "'+Edit1.Text+'"';

    1 : str := 'where Name like "%'+Edit1.Text+'%"';



    => 0 : begin

    SQL.Add('Where Cust_No =:N1');

    ParamByName('N1').AsInteger := StrToInt(Edit1.Text);

    end;

    1 : begin

    SQL.Add('Where Name =:N2');

    ParamByName('N2').AsString := '%'+Edit1.Text+'%';

    end;



    그런데 아직도 한가지 궁금한 점은 if문에서

    실행을 할때는 파라메터로 넘겨주지 않고

    if RadioBox1.itemIndex = 0 then

    SQL.Add('where Cust_No = "'+Edit1.Text+'"')라고 해도 실행이 잘 되었거든요.

    차이점이 무엇일까요..





    • 김성희
    • 1999.04.21 09:07
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이채원
      1999.04.21 09:54
      김성희 wrote: > 제가 현재 메인폼을 만들고 있는데요... > 2개의 폼을 썼거든요..!! > 1개의 폼은 메뉴...
    • 김성희
      1999.04.22 21:11
      빠른 답변 고맙습니다. 급한거였느데... 그럼, 행복하세요.
    • 강지영
    • 1999.04.21 05:31
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 박홍석
      1999.04.21 09:20
      강지영 wrote: > 라디오그룹에 세개의 아이템(Cust_No,Name,Phone)을 넣구요 > Edit1.Text를 넘겨받아서 ...
    • 강지영
      1999.04.22 20:47
      박홍석 wrote: > 강지영 wrote: > > 라디오그룹에 세개의 아이템(Cust_No,Name,Phone)을 넣구요 > > Edi...
    • 강태호
    • 1999.04.21 05:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.04.21 10:17
      강태호 wrote: > RM-COBOL DATA 화일을 DB로 바꿀수 있는 컴포넌트 혹은 소스가 있는가요? 음냐....ISA...
    • MM
    • 1999.04.21 03:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.21 03:59
      MM wrote: > TCP/IP 강좌 정말 잘 보았습니다 > 헌데 SEVER TIME 을 가지고 올려면 어떠한 방법으로 가져...
    • 권만섭
    • 1999.04.21 02:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이채원
      1999.04.21 09:35
      권만섭 wrote: > 프로그램이 처음실행될때 메인메뉴을 이용하여 폼을 그렸습니다. > 그런데 size가 너무 ...
    • 이영호
    • 1999.04.21 02:13
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이채원
      1999.04.21 09:39
      이영호 wrote: > 왕초보입니다. > MDI폼을 하나만들고 메뉴를 누르면 MDICHILD폼이 열리게 해놨거든요. ...
    • kobari
    • 1999.04.21 01:59
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.21 06:19
      OCX는 그냥 복사만 해서 되는것이 아닙니다. regsrv32를 이용해서 OCX를 시스템에 등록을 시켜주셔야 합니...
    • 이호선
    • 1999.04.20 23:54
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.21 00:11
      이호선 wrote: > 안녕하세요. > 따사로운 봄날이군요 > form의 일부분을 밑에 깔린화면이 나오도록 투명...
    • 강동욱
    • 1999.04.20 23:42
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 강동욱
      1999.04.20 23:43
      강동욱 wrote: > 안녕하세요....??? > > 제가요 요즘에 Query 컴포넌트를 이용해서 데이터를 삽입/수정...
    • 권용만
    • 1999.04.20 22:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신호성
      1999.04.21 01:57
      권용만 wrote: > 1) QuickRep를 RunTime시 생성하여 용지의 인쇄방향을 > 가로방향,세로방향으로 바...
    • 구창민
      1999.04.20 20:47
      권만섭 wrote: > > 파라독스 DB 를 사용하느데요 > SQL로 Table 조회 후 화면에 표시하여 수정하여 저...
    • 한승현
    • 1999.04.20 18:31
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김영해
      1999.04.21 06:20
      한승현 wrote: > > 회사에서 다른 사람의 CD-ROM을 공유해서 > 델파이를 설치를 하려고 하는데 > 맨처...
    • 한승현
      1999.04.21 19:19
      김영해 wrote: > 한승현 wrote: > > > > 회사에서 다른 사람의 CD-ROM을 공유해서 > > 델파이를 설치...
    • 이호선
    • 1999.04.20 18:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.20 20:41
      이호선 wrote: > 안녕하세요. > 다름이 아니라 화면에 버튼이 많아서 딱딱한 느낌이 들어서 > 모나지 않...
    • 전은주
    • 1999.04.20 18:19
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 공대규
      1999.04.21 02:06
      안녕하세요, 은주님... 소스를 보여주실래요? 제가 지금 그런 일을 하는데 한번 볼께요. 그럼... ...
    • 김경수
    • 1999.04.20 14:37
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김경수
      1999.04.21 07:04
      안녕하세요... query문에 조건에 맞는 데이타를 불러드리구요, 변수i를 선언하고 인쇄하기전에 하나씩 ...
    • 엠마
    • 1999.04.20 07:46
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이채원
      1999.04.20 08:00
      엠마 wrote: > 안녕하세요.. > 쿼리한후에 DBgrid 쿼리한 데이타를 뿌려주고는 tab이나 화살표-> 어떻...