qryTemp.SQL.Add('select pmi_mesh, st_nd_id, ed_nd_id, tlinkidp1, tlinkidn1, ');
qryTemp.SQL.Add('st_dir, ed_dir, road_cate, link_cate, link_facil, road_no, ');
qryTemp.SQL.Add('width, oneway, lane, speedlh, road_name, regioncd, tollLink');
qryTemp.SQL.Add('from ' + Edit1.Text);
qryTemp.Active := true;
qryTemp.open;
DataSource1.DataSet := qryTemp;
DBGrid1.DataSource:= DataSource1;
//구테이블 루프
for i:= 0 to qryTemp.Recordcount -1 do
begin
q.close;
q.sql.clear;
q.DatabaseName:= 'MyNewAlias2';
q.SQL.Add (' select pmi_mesh,st_nd_id,ed_nd_id,tlinkidp1,tlinkidn1,st_dir,ed_dir, ');
q.SQL.Add (' road_cate,link_cate,link_facil,road_no,width,oneway,lane,speedlh,road_name, ');
q.SQL.Add (' regioncd,tollLink ');
q.SQL.Add (' from ' + Edit2.Text);
q.SQL.Add (' where pmi_mesh = ' + qryTemp.FieldValues['pmi_mesh'] +'');
q.SQL.Add (' and st_nd_id = ' + qryTemp.FieldValues['st_nd_id']+ '');
q.SQL.Add (' and ed_nd_id = ' + qryTemp.FieldValues['ed_nd_id']);
q.Active := true;
q.open;
보시는 바대로..두개의 쿼리 컴포넌트에서 서로 다르게 커넥팅 해서
한개를 기준으로 루핑 하면서 다른 한개를 하나씩 비교 하는 겁니다.
근데 miss match에러가 나는데요..암래도 제 생각엔 where 조건절에서
나는거 같은데...
함 봐주시구요...조언 부탁드립니다..
같네요
Sql.Add 이거는 텍스트 추가하는 거기 때문에 텍스트로 들어가게 하셔야
할거 같은데 지금것은 그냥 값대입이네요
콤마 숫자를 맞춰보세요
q.SQL.Add (' where pmi_mesh = ' + qryTemp.FieldValues['pmi_mesh'] +'');
q.SQL.Add (' where pmi_mesh = ''' + qryTemp.FieldValues['pmi_mesh'] +'''');
밑에처럼 해야 텍스트로 인식합니다..