2013-02-25 3 views
0

ODBC 드라이버를 통해 SQL/MX 데이터베이스에서 정보를 수집하는 VB.NET으로 작성된 응용 프로그램이 있습니다. 두 INTERVAL DAY (2) 필드가 포함 된 특정 테이블을 제외하고 모두 제대로 작동합니다. 이 테이블에 대한 쿼리를 실행할 때 '알 수없는 SQL 형식 - 103'오류가 발생합니다. 이러한 필드를 제외하려면 내 쿼리를 변경하면 잘 작동합니다.VB.Net이 INTERVAL DAY (2) 필드 유형을 넘어 간다.

Dim SQLQueryDataAdapter As New OdbcDataAdapter(MySQLQuery, MyNonStopConnection) 
Dim SQLQueryOutputTable As New DataTable("SQLOutput") 
SQLQueryDataAdapter.Fill(SQLQueryOutputTable) 

내 ODBC 연결 문자열 : 내가 잘못 뭐하는 거지

MyNonStopConnection = New OdbcConnection(
     "Driver=" & MyDriver & ";DSN=" & MyDSN & ";SERVER=TCP:" _ 
     & MyTCP & ";UID=" & MyUserName & ";PWD=" & MyPassword) 

MyNonStopConnection.Open() 

?

답변

0

SQL 및 드라이버의 특성에 따라 모든 데이터 형식이 ODBC를 올바르게 통과하는 것은 아닙니다. 좀 더 표준적인 유형으로 해당 필드를 CAST해야 할 수도 있습니다.
어떤 드라이버를 사용하고 있습니까?

+0

나는 그것이 ODBC와 관련이 있는지 의심 스럽다. 처음에는 Excel (VBA)과 동일한 ODBC 드라이버를 사용하여 정보를 수집했습니다. 그런 다음 문제없이 진행되었습니다. –

+0

SQL/MX 3.1 드라이버를 사용하고 있습니다 –

0

INTERVAL로 기록 할 것으로 예상되는 최대 일 수는 얼마입니까?

SQL Interval 필드의 정확성 또는 데이터 형식 길이가 잘못되었습니다. 그래서 필드 유형을 정의하는 방법을 묻는 유혹을받을 것입니다. 너의 테이블 기록에.

참고 : http://msdn.microsoft.com/en-us/library/windows/desktop/ms716230(v=vs.85).aspx

+0

테이블을 INVOKE하면 다음이 정의됩니다 : TOES_RESV_DGN_AANT INTERVAL DAY (2) NO DEFAULT –