답변이라고 할수는 없찌먄
try
if not dm.IBTrans.InTransaction then
dm.IBTrans.StartTransaction;
with dm.Qry1 do
begin
close;
sql.clear;
sql.add('EXECUTE PROCEDURE cd_code_ist ');
sql.add(' ''' + copy(combobox1.Text,1,2)+ ''' ,');
sql.add(' ''' + edit1.Text + ''' ,');
sql.add(' ''' + edit2.Text + ''' ,');
sql.add(' ''' + edit3.Text + ''' ');
execsql;
end;
dm.IBTrans.Commit;
except
on E : Exception do
begin
dm.IBTrans.Rollback;
showmessage(E.Message+' 으로 에러발생 ');
end;
end;
위처럼(예제 입니다).. 인터베이스(퍼이어버드포함);
sql문장으로 가볍게 처리하고.. 결과를 보시면..
디비 컴포넌트 쓰면서 불필요하게 데드락,테이블락 유발 줄이는게 관권이라고 봄니다.
'EXECUTE PROCEDURE cd_code_ist.. ' 프로시저 호출이니.. 각자 아라서
하시면되구요 'insert into cd_code...''
깨진신다는분 답변도 있어야.. 결과는 확실할뜻하네요..
,,,,,
전 정말,, 이게 저에 큰약점이야.. @.@ 저또한 인정하고 고칠려고 합니다만.
불행하게 확실하게 철자 구조 또는 어법을 정확하게 모릅니다. 정확보단 님들보단 안된다는거죠.
인정합니다. 하지만.. 회원님들 무시하거나.. 귀찬아서가 아리라는것만 봐주세요.
|