dbgrid에 combobox의 text값 조건으로 뿌려줄려고 하는데요..
procedure TForm1.Button1Click(Sender: TObject);
begin
datamodule1.query1.Close;
datamodule1.query1.SQL.clear;
datamodule1.query1.sql.add('select * from test');
if combobox6.text <> '' then
datamodule1.query1.sql.add('where 과목=' +QuotedStr(combobox6.text));
// ShowMessage(datamodule1.query1.SQL.Text);
datamodule1.query1.open;
end;
datasource1의 dataset은 table1입니다. query1의 datasource는 datasource1으로 했구요.. 아무 반응이 없네요..에러메세지도 없고..-.-;
아래처럼 하면 원하는 값을 얻을 수 있는데요..
procedure TForm1.Button1Click(Sender: TObject);
begin
datamodule1.query2.Close;
datamodule1.query2.SQL.clear;
datamodule1.query2.sql.add('select * from test');
if combobox6.text <> '' then
datamodule1.query2.sql.add('where 과목=' +QuotedStr(combobox6.text));
// ShowMessage(datamodule1.query2.SQL.Text);
datamodule1.query2.open;
end;
datasource2의 dataset을 query2로 두고 query2의 datasource는 아무것도 안줬습니다.
앞의 경우로는 안되는 건가요? 답변 좀 부탁드릴께요...
Database <- Table.Database <- DataDource.Dataset
<- DBGrid.Datasource
이런식으로 연결 되야 겠지요..
데이타 소스는 연결 역활을 합니다.
전에 한번 내부를 뒤져 본적이 있는데 지금 잘 기억이 안나네요..
지금 기억으로는 DBControl에서 어떤 작업을 하면 Table에 반영시키는 기능
을 하던데요..(컥 전혀 기억이 안나는군요.)
데이타셋의 데이타소스를 다른 데이타셋과 연결할때 썼는데요..
헬프를 보시면 어떤식으로 쓸수 있다고 나오네요..
저는 전에 마스터 디테일 관계(Select Query)의 구조를 만들때 썼는데요.
update, insert도 되는군요..