Q&A

  • 검색코딩한것인데...
if RADIOGROUP1.ITEMINDEX = 0 THEN

QUERY1.SQL.ADD(SSQL);

SSQL:='SELECT DBPGM.PGMID, DBPGM.PGMTITLE FROM DBPGM WHERE DBPGM.PGMID='+

FORMAT('''%S''',[TRIM(EDIT1.TEXT)]);

TRY

QUERY1.OPEN;



STRINGGRID1.Cells[0,0] := '프로그램아이디';

STRINGGRID1.Cells[1,0] := '프로그램제목';

STRINGGRID1.CELLS[0,1]:=QUERY1.FIELDS[0].ASSTRING;

STRINGGRID1.CELLS[1,1]:=QUERY1.FIELDS[1].ASSTRING;

QUERY1.SQL.CLEAR;



EXCEPT

Query1.Close;

APPLICATION.MESSAGEBOX('검색도중 에러발생', '에러', MB_OK+MB_ICONINFORMATION);

EXIT;

end;

Query1.CLOSE;



검색코딩을 한것인데...

무엇이 잘못되었는지

검색 결과는 스트링 그리드로 반환을 할 것이구여

검색한 내용이나오는 것이 아니라 테이블의 제일 첨에있는 데이타 명이 나옵니다.

라디오 그룹이 6개가 존재하구여,,하나하나 선택할때 마다

그것에 대한 SELECT문을 작성하는데...

무엇이잘못되었나여?







3  COMMENTS
  • Profile
    임형호 2001.02.05 19:07
    > if RADIOGROUP1.ITEMINDEX = 0 THEN

    > QUERY1.SQL.ADD(SSQL);

    > SSQL:='SELECT DBPGM.PGMID, DBPGM.PGMTITLE FROM DBPGM WHERE DBPGM.PGMID='+

    > FORMAT('''%S''',[TRIM(EDIT1.TEXT)]);

    > TRY

    > QUERY1.OPEN;





    맞는지 모르겠네요.

    위의 코딩을 보면....



    QUERY1.SQL.ADD(SSQL); <-- 이부분에서 SSQL변수에 들어간 내용은 뭐죠?



    만약 그 아래내용의 SSQL 변수 내용을 Query하는것이라면....

    순서가 바뀐게 아닐까하는 생각이드네요. 아님..무슨 다른 의미가 있어서 이렇게 코딩했느지도 모르겠고...



    위의 코딩의 내용은 라디오그룹의 첫번째 항목이 선택되어졌을때

    Query1의 SQL문에 어떤값이 들어간지도 모르는 SSQL문자열을 입력한 다음

    SSQL변수에 SQL문장을 입력하네요.

    그리고는 Open을 하면.... Query에서 실행되는 문장은 어떤값일 들어간지 모르는 값이되겠네요. 아님...이전 SSQL변수에 들어있던 다른 SQL문장일지도....

    순서를 바꿔보심이..... 그럼.

  • Profile
    궁금... 2001.02.05 19:16
    임형호 wrote:

    > > if RADIOGROUP1.ITEMINDEX = 0 THEN

    > > QUERY1.SQL.ADD(SSQL);

    > > SSQL:='SELECT DBPGM.PGMID, DBPGM.PGMTITLE FROM DBPGM WHERE DBPGM.PGMID='+

    > > FORMAT('''%S''',[TRIM(EDIT1.TEXT)]);

    > > TRY

    > > QUERY1.OPEN;

    >

    >

    > 맞는지 모르겠네요.

    > 위의 코딩을 보면....

    >

    > QUERY1.SQL.ADD(SSQL); <-- 이부분에서 SSQL변수에 들어간 내용은 뭐죠?

    >

    > 만약 그 아래내용의 SSQL 변수 내용을 Query하는것이라면....

    > 순서가 바뀐게 아닐까하는 생각이드네요. 아님..무슨 다른 의미가 있어서 이렇게 코딩했느지도 모르겠고...

    >

    > 위의 코딩의 내용은 라디오그룹의 첫번째 항목이 선택되어졌을때

    > Query1의 SQL문에 어떤값이 들어간지도 모르는 SSQL문자열을 입력한 다음

    > SSQL변수에 SQL문장을 입력하네요.

    > 그리고는 Open을 하면.... Query에서 실행되는 문장은 어떤값일 들어간지 모르는 값이되겠네요. 아님...이전 SSQL변수에 들어있던 다른 SQL문장일지도....

    > 순서를 바꿔보심이..... 그럼.









    invaild use of keyword라는 에러가 생기네여...이건 왜 그런것인지....



  • Profile
    임형호 2001.02.05 20:33
    invaild use of keyword라는 에러가 생기네여...이건 왜 그런것인지....



    위의 에러는 말 그대로 아마도...SQL문장중에 keyword가 사용되었다는 말입니다.

    예약어라고하죠...

    아까 답변한 내용은 순서에 대한 내용이었지... SQL문장까지는 못봤거든요.

    찬찬히 SQL문을 뜯어보세요. 분명 사용해서는 안되는 단어가 있을겁니다.

    연결하는 DB에 따라 조금씩 다르지만서도....

    그럼...즐프하세요. 이만.