2009-04-24 1 views
1

ADO에 약간의 문제가 있습니다. Access를 사용하는 데이터베이스 응용 프로그램을 배포했습니다. 다른 버전의 데이터베이스 테이블의 릴리스와 함께 다른 필드를 가지고, 일부는 내가 등등 데이터베이스에 부랑어 필드를 추가하는 방법을 얻을 수없는 등 삭제 된 다른 추가했습니다.ADO 데이터베이스 테이블 부울 열

ALTER TABLE XXX ADD COLUMN YY BOOLEAN 

이는 등 VARCHAR, INTEGER, DOUBLE 같은 다른 데이터 유형에 대한 작동하는 동안, 그것은하지 않습니다 :이처럼 보이는 SQL로의 standart SQL 쿼리 구성 요소를 사용하여 업그레이드를 위해

부랑. 나는 그것이 부울에 대한 YES/NO가 아니라 Access의 잘못이라고 생각합니다.

또한 어떻게 TADOTable을 사용하여 테이블에 필드를 추가 할 수 있습니까?

미리 감사드립니다.

답변

5

를 사용하고, 비트 열은 직접에 해당 YES/NO 필드. 나중에 SQL Server로 변환하려고하면 이상한 행동을 경험했습니다. 따라서 다음을 수행하는 것이 좋습니다.

이 필드에 대한 확인을 수행 한 후에는 구문이 (FIELD <> 0), 거짓을 확인하기 위해 (FIELD = 0). SQL Server는 TRUE/FALSE의 개념을 이해하지 못하고 액세스시 값은 -1과 0을 반환하지만 SQL Server에서는 값이 1과 0입니다.

액세스 할 때 액세스하는 경우에만 확인란을 렌더링합니다 또한 null이 아닌 필드를 설정하십시오. 널 (null)이 허용되면, 0 또는 -1 또는 비어있는 값이 표시됩니다.

1

해보십시오 BIT, 액세스에 대한

2

가 확실하지 부울하지만, SQL Server는 부울 값을 처리 할 수있는 비트 유형을 사용하지.

0

당신은 BIT (또는 사용자 정의) 입력에 많은 작업을 할 수없는, 훨씬 더 나은 TINYINT (1) 및 Microsoft Access에서 SQL 0/1