Query를 한다음 그 결과값에 대한것을 순서대로 콤보박스로 add시키는 방법...
그리고, Query는 dbgrid.. 등 아무곳에도 연결이 안되어 있습니다.
with Query3 do
begin
close;
sql.clear;
sql.add('SELECT prj_mng.emp_code, permaster.per_name ');
sql.add(' FROM prj_mng,permaster ');
sql.add(' WHERE prj_code = :p1 ');
parambyname('p1').AsInteger := StrToInt(ed_prj_code.text);
:
:
Query 결과
사번 이름
================
123456 김말자
001246 이미숙
452632 최진실
여기서 이름만 순서대로 콤보박스에 넣으려고 하는데...
좀 도와주세요...
> Query를 한다음 그 결과값에 대한것을 순서대로 콤보박스로 add시키는 방법...
> 그리고, Query는 dbgrid.. 등 아무곳에도 연결이 안되어 있습니다.
> with Query3 do
> begin
> close;
> sql.clear;
> sql.add('SELECT prj_mng.emp_code, permaster.per_name ');
> sql.add(' FROM prj_mng,permaster ');
> sql.add(' WHERE prj_code = :p1 ');
> parambyname('p1').AsInteger := StrToInt(ed_prj_code.text);
> :
> :
> Query 결과
>
> 사번 이름
> ================
> 123456 김말자
> 001246 이미숙
> 452632 최진실
>
> 여기서 이름만 순서대로 콤보박스에 넣으려고 하는데...
> 좀 도와주세요...
요 프로시져를 만들어서 전체 프로젝트에 공통으로 쓰세요
procedure ApplyToCombo(v_combobox : TCombobox; v_table,
v_code, v_name : string);
begin
v_combobox.Clear;
with Query do
begin
close;
sql.clear;
sql.Add('SELECT ' + v_code + ' A ');//'A':필드ALIAS 띄어쓰기 주의
if v_name <> '' then
sql.Add(', '+ v_name + ' B '); //'B':필드명ALIAS 띄어쓰기 주의
sql.Add(' FROM '+ v_table);
open;
while not(eof) do
begin
if v_name <> '' then
v_combobox.Items.Add(FieldByName('A').AsString + ' '
+ FieldByName('B').AsString)
else
v_combobox.Items.Add(FieldByName('A').AsString );
next;
end;
end;
end;
위에서 띄어쓰기 주의라는건 필드명과 ALIAS 가 붙어버리면 SYNTAX에러가
나니까 하는 얘기입니다..
SELECT 사번A, 이름B FROM TABLE (x)
SELECT 사번 A, 이름 B FROM TABLE (o)