2010-12-21 8 views
0

일부 MS Access 프로그램을 2003에서 2007 버전으로 업그레이드 중입니다. 프로그램의 메인 메뉴에 "공개"라는 변수가 있습니다. 또 다른 형태로, 나는 그 변수를 레코드에 쓴다 (폼은 언 바운드 데이터를 사용하고있다). VBA 행 "Rst! [FieldName] = Forms! [Main Menu] .strUser"는 RunTime 오류 3000, 예약 오류 (-1524)를 제공합니다.예약 된 오류 (-1524)

도대체 무슨 일이 일어나고 있습니다 ???????

도움을 주셔서 감사합니다.

+0

변수를 참조하는 것이 이상한 방법입니다. 2003 버전에서 작동 했습니까? DAO에 대한 참조를 추가 했습니까? 부패를 확인 했습니까? http://www.granite.ab.ca/access/corruption/symptoms.htm? – Fionnuala

+0

공개 양식에서 공용 변수를 참조하는 방법과 동일합니다. 정확히는 공통적으로 (또는 내 의견으로는 적당하지만) 적절한 구문을 사용합니다. –

+0

데이터베이스가 무엇입니까? 비 Access 오류는 제트/ACE 데이터 테이블이 아니라 ODBC 데이터 소스 일 가능성이 있음을 나에게 알립니다. 레코드 세트를 열고 편집 가능하게 코드를 게시해야합니다. 그 단계에서 당신이 뭔가 잘못하고 있다고 의심합니다. –

답변

1

mdb 분할 데이터베이스 (프론트 엔드 백 엔드)를 Access 2010으로 업데이트 할 때 오류가 발생했습니다. 원래 mdb 데이터베이스는 내부 연결 (두 번째 테이블에서 동일한 번호에 연결된 한 테이블의 자동 실행 번호)을 사용했습니다. 위에서 언급 한 첫 번째 테이블을 가져올 때 문제가 발생했습니다. "예약 된 오류 (-1624) 오류가 발생하지 않고 테이블을 가져 오거나 복사하여 붙여 넣을 수 없습니다.

해결 방법은 문제없이 OK를 가져온 다른 테이블을 새 2010 데이터베이스로 가져오고 테이블 만들기 쿼리를 사용하여 새 2010 버전의 문제 테이블을 복제하십시오. 프로세스는 자동 ID 번호 매기기를 유지하므로 내부 관계가 새롭고 업데이트 된 데이터베이스에 보존됩니다.

0

동일한 문제가 있고 모양이 있습니다. 하나의 테이블에있는 레코드는 하나의 레코드가 언어가 변경되었고 모두 중국어 알파벳 이었음을 발견했습니다. 레코드를 삭제 한 후에 더 이상 오류가 없습니다.

Looks l ike, 내 경우에는 기본 키가 다른 테이블에 연결하는 데 사용 되었기 때문에 오류가 발생했습니다. 나는 체크를하고 메인 테이블 (레코드 삭제)에 존재하지 않는 다른 테이블에서 하나의 레코드를 식별하는 것을 관리한다.