Access 데이터베이스에서 특수 문자를 사용하는 경우 나타나는 오류 메시지

이 문서에서는 모든 버전의 Access에서 데이터베이스 개체 이름 또는 필드 이름을 사용할 때 사용하지 않도록 하는 특수 문자를 나열합니다.

원본 KB 번호: 826763

참고

이 문서는 Microsoft Access 데이터베이스(.mdb) 파일이나 Microsoft Access 데이터베이스(.accdb) 파일에 적용됩니다.

증상

Access에서 특수 문자를 사용하는 경우 다음 문제 중 하나가 발생합니다.

문제 1

테이블 필드의 이름에 다음 특수 문자 중 하나를 사용합니다.

  • 악센트 부호(')
  • 느낌표(!)
  • 마침표(.)
  • 대괄호([])
  • 선행 공백
  • 인쇄할 수 없는 문자

이와 같은 경우, 다음과 오류 메시지가 나타납니다.

필드 이름이 잘못되었습니다.
이름에 마침표(.), 느낌표(!), 대괄호([]), 선행 공백 또는 캐리지 리턴과 같은 인쇄할 수 없는 문자가 포함되어 있지 않은지 확인합니다. 다른 애플리케이션에서 이름을 붙여넣은 경우 ESC 키를 누르고 이름을 다시 입력해 보세요.

테이블 이름에 이러한 특수 문자를 사용하는 경우 다음과 같은 오류 메시지가 표시됩니다.

입력한 개체 이름 'TableName'은 Microsoft Office Access 개체 명명 규칙을 따르지 않습니다.

문제 2

쿼리 식을 만듭니다. 쿼리 식에는 특수 문자가 포함된 필드가 포함됩니다. 특정 특수 문자에 따라 다음과 같은 오류 메시지 중 하나가 나타납니다.

  • 필드 이름에 공백 문자, 물음표(?) 또는 at 기호(@)가 포함된 경우 다음과 같은 오류 메시지가 표시됩니다.

    입력한 식에 잘못된 구문이 포함되어 있습니다.
    연산자 없이 피연산자에 입력했을 수 있습니다.

  • 필드 이름에 따옴표(") 또는 아포스트로피(')가 포함된 경우 다음과 같은 오류 메시지가 표시됩니다.

    입력한 식에 잘못된 문자열이 있습니다.
    문자열은 여는 따옴표와 닫는 따옴표를 포함하여 최대 2048자까지 가능합니다.

  • 필드 이름에 숫자 기호(#)가 포함되어 있으면 다음과 같은 오류 메시지가 표시됩니다.

    입력한 식에 잘못된 날짜 값이 있습니다.

  • 필드 이름에 백분율 기호(%), 물결표(~), 세미콜론(;) 또는 대괄호([])가 포함된 경우 다음 오류 메시지가 표시됩니다.

    입력한 식에 잘못된 구문이 포함되어 있습니다.
    예를 들어 연산자 또는 피연산자가 누락되었거나 유효하지 않은 문자 또는 쉼표를 입력했거나 따옴표(") 없이 텍스트를 입력했을 수 있습니다.

  • 필드 이름에 중괄호({})가 포함되어 있으면 다음 오류 메시지가 표시됩니다.

    쿼리 식 'ObjectName'의 형식이 잘못된 GUID

  • 필드 이름에 대괄호([]) 또는 소괄호(())가 포함되어 있으면 다음과 같은 오류 메시지가 표시됩니다.

    입력한 식에 닫는 소괄호, 대괄호(]) 또는 세로 막대(|)가 없습니다.

문제 3

쿼리 식이 포함된 쿼리가 있습니다. 쿼리 식에는 특수 문자가 포함된 필드가 포함됩니다. 쿼리를 실행하면 매개 변수 값을 입력하도록 승격됩니다. 일반적으로 이 문제는 다음과 같은 특수 문자를 사용할 때 발생합니다.

  • 보다 큼 기호(>)
  • 보다 작음 기호(<)
  • 마침표(.)
  • 별표(*)
  • 콜론(:)
  • 캐럿(^)
  • 더하기 기호(+)
  • 백슬래시(\)
  • 등호(=)
  • 앰퍼샌드(&)
  • 슬래시 표시(/)

해결 방법

이 문제를 해결하려면 특수 문자를 사용하지 마세요. 쿼리 식에서 특수 문자를 사용해야 하는 경우 특수 문자를 대괄호([])로 묶습니다. 예를 들어 보다 큰 기호()>를 사용하려면 [>]를 사용합니다.

추가 정보

Microsoft Access는 데이터베이스 개체 이름 또는 데이터베이스 필드 이름에서 숫자 기호(#), 마침표(.) 또는 따옴표(")와 같은 특수 문자의 사용을 제한하지 않습니다. 그러나 특수 문자를 사용하는 경우 예기치 않은 오류가 발생할 수 있습니다. 따라서 Access 데이터베이스 또는 데이터베이스 프로젝트의 데이터베이스 개체 이름에 특수 문자를 사용하지 않는 것이 좋습니다. 이 문서에서는 이러한 특수 문자의 알려진 문제로 인해 피해야 하는 특수 문자에 대해 설명합니다.

Access 또는 Microsoft Visual Basic 애플리케이션 또는 ASP(Active Server Pages) 애플리케이션과 같은 다른 애플리케이션에서 작업하는 경우 다음 특수 문자를 사용하지 않아야 합니다.

이름 기호
공백
아포스트로피 '
따옴표 "
아포스트로피 '
@ 기호 @
억음 부호 `
숫자 기호 #
퍼센트 %
부등호(>) >
부등호(<) <
느낌표 !
마침표 .
대괄호 [ ]
별표 *
$ 기호 $
세미콜론 ;
콜론 :
물음표 ?
캐럿 ^
중괄호 { }
더하기 기호 +
하이픈 -
등호 =
물결표 ~
백슬래시 |

Access 이름 짓기 규칙

Microsoft는 함수 이름, 변수 이름, 필드 이름 또는 데이터베이스 개체(테이블, 양식 등)의 이름 내에 마침표(.), 느낌표(!), 억음 악센트 기호(`), 대괄호([ ]), 공백( ) 또는 따옴표(")를 사용하지 않는 것을 권장합니다.

Access에서 다음 특수 문자를 사용하는 경우 발생하는 알려진 문제가 있습니다. 다음 시나리오에서는 특수 문자를 사용하지 않아야 하는 경우를 설명합니다.

  • 데이터베이스 개체를 Microsoft Excel 파일 형식, HTML 파일 형식 또는 텍스트 파일 형식 등 다른 파일 형식으로 내보낼 때는 데이터베이스 개체 이름이나 필드 이름에 숫자 기호(#) 또는 마침표(.)를 사용하지 않습니다.
  • Access에서 하이퍼링크를 사용하면 Access는 하이퍼링크를 수정한 메모 필드에 저장할 때 숫자 기호(#)를 구분 기호로 사용합니다. 따라서 Access에서 숫자 기호는 예약어로 간주됩니다. 하이퍼링크를 만들 때는 숫자 기호를 사용하지 마세요.
  • 텍스트 파일을 Access로 가져올 때 해당 텍스트 파일에 탭 문자나 다른 특수 문자가 포함되어 있으면 이 특수 문자는 변환되어 상자로 표시됩니다. 따라서 가져온 테이블을 사용하려고 할 때 예기치 않은 오류가 발생합니다. Access로 가져올 때는 원본 테이블에 특수 문자를 사용하면 안 됩니다.
  • ASP 양식을 사용하여 Access 데이터베이스의 데이터를 추가하거나 수정하는 경우 양식에 백분율 기호(%), 더하기 기호(+) 또는 캐럿(^)을 사용하면 안 됩니다. 이 특수 문자는 Access 데이터베이스에서 올바르게 번역되지 않을 수 있습니다.
  • 전자 언어를 사용하는 경우 데이터베이스 개체 이름 또는 컨트롤 이름에 전자를 사용하지 않습니다. 예를 들어 전자 언어를 사용할 때 괄호 전자를 사용하면 안 됩니다. 개체 또는 컨트롤에 대한 이벤트 프로시저에 코드가 있는 경우 컴파일 오류가 발생할 수 있기 때문입니다.