2016-09-02 3 views
6

MS Access 1997 버전 (.mdb 파일)을 사용하고 있습니다. 매일 매일 값을 수동으로 입력해야합니다. 이 파일에는 열 Logical (부울 데이터 형식)이 있습니다. 필자는 직접 입력 대신 SQL 쿼리를 사용하여이 템플릿을 자동화합니다.MS Access/SQL : 삽입 쿼리 문의 오류

Insert Into Data_CustomerTransmit_Tbl (Logical) 
Values (" & Logicalnme & ") 

값 : 아래

내 삽입 쿼리입니다

Logicalnme - True 

내가 Excel에서 VBA에서이 쿼리를 실행하면,이 오류 메시지가

구문 오류를 얻을 수 명세서에 삽입

"Logical"을 열 이름으로 사용해야합니까, 아니면 이것이 예약 된 키워드입니까?

미리 감사드립니다.

+0

논리 괜찮아요, 당신은에서의 삽입 값이 보일 것입니다 그. – Takarii

+0

속성의 이름을 변경하고 오류가 사라지는지 확인하십시오. – nicomp

+0

안녕하세요, 귀하의 회신에 감사드립니다. 데이터베이스 필드 및 테이블 이름을 변경할 수 없습니다. 사전 정의 된 것입니다. 친절하게 우리가 가질 수있는 가능성이 있는지 확인하십시오. 미리 감사드립니다. – user2095503

답변

0

필드 이름에 문제가없는 경우 INSERT 열 이름을 대괄호로 묶어야합니다. 난 당신이하려고하는 가정

PARAMETERS [Please enter a Boolean value] YesNo; 
INSERT INTO Data_CustomerTransmit_Tbl ([Logical]) 
VALUES ([Please enter a Boolean value]); 
0

:

INSERT INTO Data_CustomerTransmit_Tbl ([Logical]) 
VALUES (TRUE); 

당신이 값을 입력하라는 메시지가하려면

당신은 매개 변수를 사용할 수 있습니다, 삽입 : 당신은 또한 VALUES 절에 유효한 값을 선택해야 VBA를 사용하여이 삽입 작업을 수행 하시겠습니까? 그렇다면 구두점이 누락 된 것을 제외하고는 SQL 문을 작성하는 구문이 정확합니다. 양쪽 끝에 큰 따옴표가 붙습니다. ' "& _'(공간, 따옴표, 공간 : 당신이 두 줄 (VALUES 전에 파괴)를 통해 문자열을 분할대로

"INSERT INTO Data_CustomerTransmit_Tbl (Logical) VALUES (" & Logicalnme & ")" 

는 또한, 당신은 또한에 문자열의 첫 번째 행을 종료합니다 . 앰퍼샌드, 공간, 문자열이 다음 행으로 계속 표시하기 위해) 밑줄 그럼 당신은 큰 따옴표로 다음 라인을 시작 :

"INSERT INTO Data_CustomerTransmit_Tbl (Logical) " & _ 
    "VALUES (" & Logicalnme & ")" 
0

를 VBA에서 코드는 다음과 같아야합니다

Docmd.RunSQL("INSERT INTO Data_CustomerTransmit_Tbl (Logical) VALUES (" & Logicalnme & ");" 
0

당신이 암시 한 SQL 쿼리 - Excel에서 전달하려는 동일한 값을 사용하여 쿼리 편집기에서 수동으로 실행하려고 시도 했습니까? 쿼리 나 데이터에 문제가있는 경우 즉시 자세한 피드백을 제공합니다.

부울 필드와 관련하여 예상되는 True/False가 아닌 비트 필드 0과 1이 표시되는지 확인하십시오. 문제를 해결할 때 테이블이나 파일에 빠른 로그 항목을 만들고 싶습니다. 원시 데이터.

0

사용 Cbool 기능 :

Insert Into Data_CustomerTransmit_Tbl (Logical) 
Values (" & Cbool(Logicalnme) & ")