Q&A

  • inputbox 에 관한 질문입니다.






procedure TForm1.Button4Click(Sender: TObject);

var

input_str : string;

begin

input_str := Inputbox('이름 입력','찾을 이름을 입력하세요','');



if Trim(input_str)<>''then

begin

adoquery1.close;

adoquery1.sql.clear;

adoquery1.sql.add('select * from 주소');

adoquery1.sql.Add('where 이름 like :name1');

adoquery1.Parameters.parambyname('name1').value := '%'+input_str+'%';

adoquery1.open;

end;

end;



아래를 보아 주세요.

-> adoquery1.Parameters.parambyname('name1').value := '%'+input_str+'%';

여기에서 '%' <- 요거는 왜 쓰나요? 궁굼합니다. 아시는 고수분들께서는 답을

해 주세요.





1  COMMENTS
  • Profile
    김영대 2000.10.20 23:47
    안녕하세염....



    %에대한 문의 맞죠....



    Sql에대하여..조금 공부를 하시면 자동으로 알게 되겠지만....



    아래의 쿼리를 보면.

    select * from 주소 where 이름 like :name1

    where절에 Like문이 보이는군여..



    이Like 는 같은 문자가 있으면 무조건 찾아오는것이죠?

    맞나?

    이 Like를 쓰려면 %이%를 쓰면 이 라는글자 가 있는 모든 문자열을 검색 한다는뜻

    이% 는 이로 시작하는 모든 문자열을 검색

    %이 는 이로 끝나는 모든 문자열 검색 ...

    대충 이런 의미이죠..





    delpo wrote:

    >

    >

    >

    > procedure TForm1.Button4Click(Sender: TObject);

    > var

    > input_str : string;

    > begin

    > input_str := Inputbox('이름 입력','찾을 이름을 입력하세요','');

    >

    > if Trim(input_str)<>''then

    > begin

    > adoquery1.close;

    > adoquery1.sql.clear;

    > adoquery1.sql.add('select * from 주소');

    > adoquery1.sql.Add('where 이름 like :name1');

    > adoquery1.Parameters.parambyname('name1').value := '%'+input_str+'%';

    > adoquery1.open;

    > end;

    > end;

    >

    > 아래를 보아 주세요.

    > -> adoquery1.Parameters.parambyname('name1').value := '%'+input_str+'%';

    > 여기에서 '%' <- 요거는 왜 쓰나요? 궁굼합니다. 아시는 고수분들께서는 답을

    > 해 주세요.

    >

    >