안녕하세요
매일 눈팅만 하다 이렇게 뜬금없이 질문드리네요..
인수 받은 프로그램에서 자꾸 오류가 떠서 확인해보니
이 프로그램 만드신 분이..
try
with fdb.tmpQ do begin
Close;
SQL.Clear;
SQL.Text := 'ALTER TABLE M_CHORD ADD CHO_SCAN VARCHAR(2) ';
ExecSQL;
Close;
SQL.Clear;
SQL.Text := 'COMMIT';
Open;
end;
except
end;
이렇게 짜 놓으셨던데.. 얼핏 보면.. 별 이상한 점이 는거 같지만
해당 폼이 뜰때 마다 이게 실행되고요
excpt로 에러처리 될줄 알았는데 파이어버드는 안되는듯 해요
cho_scan이라는 필드가 255개를 넘어가버리더군요
같은이름으로 해당필드가 계속 생성되고 있었던것인데..
이 필드를 다시 하나로 만들 수 있는 방법이 없을까요?
음...
해당 컬럼을 삭제하거나 해당 테이블에 대한 DML 을 실행 하면 이런식으로 에러가 뜨네요.. ㅠㅠ
Engine Error (code = 335544351):
unsuccessful metadata update.
TABLE M_CHORD.
too many versions.
SQL Error (code = -607):
This operation is not defined for system tables.
*첨부 파일은 파이어버드에서 필드를 조회한 것입니다.
조회된건.. 254개.. 쿨럭..
255번의 수정으로 인해 ddl문이 안먹네요..
-> 카운터 리셋을 위해 백업/복구과정을 시도해봤지만 해당 필드때문에 복구도 안되는 상황입니다..
ㅠㅠ
|