Обсуждение: 9.0.01 ODBC driver return values changed for sqlGetTypeInfo
SQL_SUCCESS = SQLGetTypeInfo(StatementHandle = 0x36017c0,DataType = SQL_ALL_TYPES)
SQL_SUCCESS = SQLBindCol(Statement Handle = 0x36017c0,ColumnNumber = 1,TargetType = SQL_C_CHAR ,TargetValuePtr = 0x12c0b4,BufferLength = 1028,StrLen_or_IndPtr = 2084091336)
.....
SQL_SUCCESS = SQLBindCol(Statement Handle = 0x36017c0,ColumnNumber = 19,TargetType = SQL_C_SHORT ,TargetValuePtr = 0x12d544,BufferLength = 2,StrLen_or_IndPtr = 1230120)
SQL_SUCCESS = SQLFetch(StatementHandle = 0x36017c0)
Row=0,TYPE_NAME ,Type=SQL_C_CHAR ,bufLen=1028,size=4,data=int8
Row=0,DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5
Row=0,COLUMN_SIZE ,Type=SQL_C_LONG ,bufLen=4,size=4,data=19
Row=0,LITERAL_PREFIX ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,LITERAL_SUFFIX ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,CREATE_PARAMS ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,NULLABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=1
Row=0,CASE_SENSITIVE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,SEARCHABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=2
Row=0,UNSIGNED_ATTRIBUTE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,FIXED_PREC_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,AUTO_UNIQUE_VALUE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,LOCAL_TYPE_NAME ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,MINIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,MAXIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,SQL_DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5
Row=0,SQL_DATETIME_SUB ,Type=SQL_C_LONG ,bufLen=4,size=-1,data=(NULL)
Row=0,NUM_PREC_RADIX ,Type=SQL_C_LONG ,bufLen=4,size=4,data=10
Row=0,INTERVAL_PRECISION ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Using 9.0.01 driver on Windows
SQL_SUCCESS = SQLBindCol(Statement Handle = 0x36017c0,ColumnNumber = 19,TargetType = SQL_C_SHORT ,TargetValuePtr = 0x12d544,BufferLength = 2,StrLen_or_IndPtr = 1230120)
SQL_SUCCESS = SQLFetch(StatementHandle = 0x36017c0)
Row=0,TYPE_NAME ,Type=SQL_C_CHAR ,bufLen=1028,size=4,data=int8
Row=0,DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5
Row=0,COLUMN_SIZE ,Type=SQL_C_LONG ,bufLen=4,size=4,data=19
Row=0,LITERAL_PREFIX ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,LITERAL_SUFFIX ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,CREATE_PARAMS ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,NULLABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=1
Row=0,CASE_SENSITIVE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,SEARCHABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=2
Row=0,UNSIGNED_ATTRIBUTE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,FIXED_PREC_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,AUTO_UNIQUE_VALUE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,LOCAL_TYPE_NAME ,Type=SQL_C_CHAR ,bufLen=1028,size=-1,data=(NULL)
Row=0,MINIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,MAXIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Row=0,SQL_DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5
Row=0,SQL_DATETIME_SUB ,Type=SQL_C_LONG ,bufLen=4,size=4,data=-5 <--------- DIFF
Row=0,NUM_PREC_RADIX ,Type=SQL_C_LONG ,bufLen=4,size=4,data=10
Row=0,INTERVAL_PRECISION ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0
Thanks for the report. Could you please try the drivers on testing for 9.0.0102 at http://www.ne.jp/asahi/inocchichichi/entrance/psqlodbc/ ? regards, Hiroshi Inoue (2010/10/27 8:08), the6campbells wrote: > http://msdn.microsoft.com/en-us/library/ms714632(v=VS.85).aspx > > Using 8.4.2 driver on Windows > > SQL_SUCCESS = SQLGetTypeInfo(StatementHandle = > 0x36017c0,DataType = SQL_ALL_TYPES) > SQL_SUCCESS = SQLBindCol(Statement Handle = > 0x36017c0,ColumnNumber = 1,TargetType = SQL_C_CHAR ,TargetValuePtr = > 0x12c0b4,BufferLength = 1028,StrLen_or_IndPtr = 2084091336) > ..... > SQL_SUCCESS = SQLBindCol(Statement Handle = > 0x36017c0,ColumnNumber = 19,TargetType = SQL_C_SHORT ,TargetValuePtr > = 0x12d544,BufferLength = 2,StrLen_or_IndPtr = 1230120) > SQL_SUCCESS = SQLFetch(StatementHandle = 0x36017c0) > Row=0,TYPE_NAME ,Type=SQL_C_CHAR > ,bufLen=1028,size=4,data=int8 > Row=0,DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5 > Row=0,COLUMN_SIZE ,Type=SQL_C_LONG ,bufLen=4,size=4,data=19 > Row=0,LITERAL_PREFIX ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,LITERAL_SUFFIX ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,CREATE_PARAMS ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,NULLABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=1 > Row=0,CASE_SENSITIVE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,SEARCHABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=2 > Row=0,UNSIGNED_ATTRIBUTE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,FIXED_PREC_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,AUTO_UNIQUE_VALUE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,LOCAL_TYPE_NAME ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,MINIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,MAXIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,SQL_DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5 > Row=0,SQL_DATETIME_SUB ,Type=SQL_C_LONG > ,bufLen=4,size=-1,data=(NULL) > Row=0,NUM_PREC_RADIX ,Type=SQL_C_LONG ,bufLen=4,size=4,data=10 > Row=0,INTERVAL_PRECISION ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > > > Using 9.0.01 driver on Windows > > SQL_SUCCESS = SQLBindCol(Statement Handle = > 0x36017c0,ColumnNumber = 19,TargetType = SQL_C_SHORT ,TargetValuePtr > = 0x12d544,BufferLength = 2,StrLen_or_IndPtr = 1230120) > SQL_SUCCESS = SQLFetch(StatementHandle = 0x36017c0) > Row=0,TYPE_NAME ,Type=SQL_C_CHAR > ,bufLen=1028,size=4,data=int8 > Row=0,DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5 > Row=0,COLUMN_SIZE ,Type=SQL_C_LONG ,bufLen=4,size=4,data=19 > Row=0,LITERAL_PREFIX ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,LITERAL_SUFFIX ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,CREATE_PARAMS ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,NULLABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=1 > Row=0,CASE_SENSITIVE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,SEARCHABLE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=2 > Row=0,UNSIGNED_ATTRIBUTE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,FIXED_PREC_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,AUTO_UNIQUE_VALUE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,LOCAL_TYPE_NAME ,Type=SQL_C_CHAR > ,bufLen=1028,size=-1,data=(NULL) > Row=0,MINIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,MAXIMUM_SCALE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0 > Row=0,SQL_DATA_TYPE ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=-5 > Row=0,SQL_DATETIME_SUB ,Type=SQL_C_LONG ,bufLen=4,size=4,data=-5 > <--------- DIFF > Row=0,NUM_PREC_RADIX ,Type=SQL_C_LONG ,bufLen=4,size=4,data=10 > Row=0,INTERVAL_PRECISION ,Type=SQL_C_SHORT ,bufLen=2,size=2,data=0