2012-07-20 3 views
-1

열이 테이블에 속하지 않는다는 오류가 표시됩니다. 아래는 내 쿼리입니다.vb.net에서 쿼리에 문제가 발생했습니다.

query = " SELECT A.COLUMN " 
     " FROM TABLE_1 A, TABLE_2 B" 
     " WHERE A.COLUMN = B.COLUMN " 

간단하게하기 위해 데이터 세트에 넣고 for 루프를 실행하면 정상적으로 작동합니다. 방법에 의해 관리 스튜디오에서 테스트 된 쿼리와 그것 모두 잘 작동합니다.

입니다 문제가 여기서

dim new_val as string 

new_val = row("A.COLUMN") 'ERROR 

참고 : 다음

SELECT A.COLUMN **AS COLUMN1** 

과 : 난 내 쿼리를 변경할 때

new_val = row("COLUMN1") it works. 

사람이 이유를 알고 있습니까를 이?? 또한 일부 열에 A.COLUMN을 사용하는 것과 같은 이름이 있다는 것을 잊어 버렸습니다.

+0

복잡한 조인에 대한 모호성 때문에 다른 이유로도 사용되지 않는 조인에 SQL-89 구문을 사용하고 있다는 점은 주목할 가치가 있습니다. @LittleBobbyTables에 설명 된 구문을 사용해야합니다. - [이 질문 (http://stackoverflow.com/questions/334201/why-isnt-sql-ansi-92-standard-better-adopted-over-ansi-89)을 참조하십시오.) 더 많은 정보를 위해서 – Basic

답변

2

그냥 사용

new_val = row("COLUMN") 

것은 참조의 테이블 접미사, 단지 열 이름을 가질 이유가 없다.

또한, 당신이 정말로 INNER를 사용하도록 쿼리를 다시 작성해야 조인

query = " SELECT A.COLUMN " 
    " FROM TABLE_1 A INNER JOIN TABLE_2 B ON A.COLUMN = B.COLUMN " 
-1

난 당신이 문제가있는 줄에 중단 점을 설정하는 것이 좋습니다 및 빠른 시계 창에서 열 이름을 확인할 것 . 이 경우 열 이름을 결정하여 코드를 조정할 수 있습니다.

관련 문제