3개의 참조괸 테이블에서의 insert 방법좀 가려쳐 주세여
우선 키는 order_no 입니다
[나의 생각]
with query2 do begin
close;
sql.clear;
sql.add('insert into users(order_no,order_name,receive_name,receive_tel1,receive_tel2,receive_zip,receive_add,vendor)');
sql.add('values('''+a1+''','''+a2+''','''+a3+''','''+a4+''','''+a5+''','''+a6+''','''+a7+''','''+x+''')');
execsql;
end;
with query3 do begin
close;
sql.clear;
sql.Add('insert into item(order_no,item,qty,service_item)');
sql.add('values('''+a1+''','''+a8+''','''+a9+''','''+a10+''')');
execsql;
end;
with query4 do begin
close;
sql.clear;
sql.Add('insert into printe(order_no)');
sql.add('values('''+a1+''')');
execsql;
end;
gauge1.Progress :=i;
application.processmessages;
frmchange.caption:='Excel data를 DB로 저장중입니다..';
end;//for
전표는 있는데 전표내역이 없다던가 거꾸로 전표내역만 존재하게 되는 문제가
생길수 있지요.
다음의 방법으로 사용합니다.
database1.starttransaction;
try
with query2 do begin
Do Something
end;
with query3 do begin
Do Something
end;
with query4 do begin
Do Something
end;
database1.commit;
except
database1.RollBack;
showmessage('쿼리중에러!!');
end;
무식한것이 가끔은 가장 간단한 해결방법이 될수도 있습니다.