2013-04-08 6 views
0

Firebird 데이터베이스에 다음 오류가 있습니다. 버전 2.5.2유효하지 않은 요청 BLR (오프셋 163)

invalid request BLR at offset 163 
function F_ENCODEDATE is not defined  
module name or entrypoint could not be found 

Error while parsing procedure GETMONTHSBYYEAR's BLR 

지난 주까지 모든 것이 올바르게 작동했습니다. 이 UDF는 디스크에 있습니다. 이 문제를 어떻게 디버깅 할 수 있습니까? 누구든지이 문제를 해결할 수 있습니다.

PS : 내가 해결하기 위해 지금까지 무슨 짓을 :

  • 백업/복원 - 아니 결과입니다. (모든 구조 문제는 BK/복원 이후에 제 의견으로 수정되었습니다).
  • 모든 종속성을 주석으로 처리하고 UDF 함수를 삭제하고 다시 작성하십시오. 결과가 없습니다.
+0

UDF 정의가 데이터베이스에 더 이상 존재하지 않거나 (예 : 사용 권한 또는'firebird.conf'의 UDF 제한 설정으로 인해) UDF dll에 액세스 할 수 없거나 다음과 같은 64 비트 버전을 설치했습니다. Firebird와 UDF는 32 비트입니다 (또는 그 반대). –

+0

제 경우의 정답은 64 비트 UDF가있는 컴퓨터에서 32 비트를 잘못 설치하는 것입니다. tks –

+0

답변으로 내 의견을 추가했습니다. –

답변

4

잠재적 문제는 그가 UDF DLL 서버 (예를 들면 인해 권한, 또는 firebird.conf에서 UDF 제한 설정)에 액세스 할 수없는 것을 할 수있다, 또는 당신은 파이어 버드의 64 비트 버전을 설치하고 UDF는 32 비트입니다 (또는 그 반대), Firebird는 DLL을로드 할 수 없습니다.