라디오 그룹의 버튼을 누를때 해당하는 값으로 정렬하려고 합니다.
정렬 방법 : 학번순, 이름순, 주소순
var
str : String;
begin
case RadioGroup1.ItemIndex of
0 : str := 'haknum';
1 : str := 'name';
2 : str := 'addr';
end;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from list_table ');
adoquery1.SQL.Add('order by :N1 asc');
adoquery1.Parameters.ParamValues['N1'] := str; --> 문제의 줄...
adoquery1.Open;
end;
이렇게 하면 될거 같은데.
원하는 대로 정렬이 안되고 어떤 버튼을 누르든 데이타를 입력한 순서대로만 나오네요.
adoquery1.Parameters.ParamByName('N1').Value := str;
이렇게 써봐도 안되구요.
캐릭터 형은 모두 문자입니다.
뭐가 잘못된건가요?
굳이 쿼리를 리오픈 할 필요 없을꺼 같은데..
새까만넘 wrote:
> 라디오 그룹의 버튼을 누를때 해당하는 값으로 정렬하려고 합니다.
>
> 정렬 방법 : 학번순, 이름순, 주소순
>
> var
> str : String;
> begin
> case RadioGroup1.ItemIndex of
> 0 : str := 'haknum';
> 1 : str := 'name';
> 2 : str := 'addr';
> end;
>
> adoquery1.Close;
> adoquery1.SQL.Clear;
> adoquery1.SQL.Add('select * from list_table ');
> adoquery1.SQL.Add('order by :N1 asc');
> adoquery1.Parameters.ParamValues['N1'] := str; --> 문제의 줄...
> adoquery1.Open;
> end;
>
> 이렇게 하면 될거 같은데.
> 원하는 대로 정렬이 안되고 어떤 버튼을 누르든 데이타를 입력한 순서대로만 나오네요.
> adoquery1.Parameters.ParamByName('N1').Value := str;
> 이렇게 써봐도 안되구요.
> 캐릭터 형은 모두 문자입니다.
> 뭐가 잘못된건가요?