提交 c2f5d08c 编写于 作者: H Hiroshi Inoue

Fix a lot of compile errors on unix.

Fix '\\' handling for bytea type.
上级 18529514
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# #
# GNUMakefile for psqlodbc (Postgres ODBC driver) # GNUMakefile for psqlodbc (Postgres ODBC driver)
# #
# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/GNUmakefile,v 1.16 2001/05/11 01:46:33 momjian Exp $ # $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/GNUmakefile,v 1.17 2001/08/21 05:21:09 inoue Exp $
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
...@@ -21,7 +21,7 @@ override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DHAVE_CONFIG_H -DODBCINSTDIR='"$(o ...@@ -21,7 +21,7 @@ override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -DHAVE_CONFIG_H -DODBCINSTDIR='"$(o
OBJS = info.o bind.o columninfo.o connection.o convert.o drvconn.o \ OBJS = info.o bind.o columninfo.o connection.o convert.o drvconn.o \
environ.o execute.o lobj.o misc.o options.o \ environ.o execute.o lobj.o misc.o options.o \
pgtypes.o psqlodbc.o qresult.o results.o socket.o parse.o statement.o \ pgtypes.o psqlodbc.o qresult.o results.o socket.o parse.o statement.o \
gpps.o tuple.o tuplelist.o dlg_specific.o $(OBJX) gpps.o tuple.o tuplelist.o dlg_specific.o odbcapi.o $(OBJX)
ifdef MULTIBYTE ifdef MULTIBYTE
OBJS += multibyte.o OBJS += multibyte.o
......
...@@ -1969,8 +1969,16 @@ convert_from_pgbinary(unsigned char *value, unsigned char *rgbValue, int cbValue ...@@ -1969,8 +1969,16 @@ convert_from_pgbinary(unsigned char *value, unsigned char *rgbValue, int cbValue
{ {
if (value[i] == '\\') if (value[i] == '\\')
{ {
rgbValue[o] = conv_from_octal(&value[i]); if (value[i + 1] == '\\')
i += 4; {
rgbValue[o] = value[i];
i += 2;
}
else
{
rgbValue[o] = conv_from_octal(&value[i]);
i += 4;
}
} }
else else
rgbValue[o] = value[i++]; rgbValue[o] = value[i++];
......
...@@ -682,7 +682,6 @@ PGAPI_GetInfo( ...@@ -682,7 +682,6 @@ PGAPI_GetInfo(
break; break;
default: default:
return PGAPI_GetInfo30(hdbc, fInfoType, rgbInfoValue, cbInfoValueMax,pcbInfoValue);
/* unrecognized key */ /* unrecognized key */
conn->errormsg = "Unrecognized key passed to PGAPI_GetInfo."; conn->errormsg = "Unrecognized key passed to PGAPI_GetInfo.";
conn->errornumber = CONN_NOT_IMPLEMENTED_ERROR; conn->errornumber = CONN_NOT_IMPLEMENTED_ERROR;
......
...@@ -26,7 +26,7 @@ typedef signed short RETCODE; ...@@ -26,7 +26,7 @@ typedef signed short RETCODE;
#define SQL_API EXPORT CALLBACK #define SQL_API EXPORT CALLBACK
#endif #endif
#define ODBCVER 0x0250 /*#define ODBCVER 0x0250 */
#define SQL_MAX_MESSAGE_LENGTH 512 #define SQL_MAX_MESSAGE_LENGTH 512
#define SQL_MAX_DSN_LENGTH 32 #define SQL_MAX_DSN_LENGTH 32
......
...@@ -31,8 +31,10 @@ ...@@ -31,8 +31,10 @@
#endif #endif
#include "psqlodbc.h" #include "psqlodbc.h"
#ifdef WIN32
#undef ODBCVER #undef ODBCVER
#define ODBCVER 0x3000 #define ODBCVER 0x3000
#endif
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
...@@ -47,29 +49,29 @@ ...@@ -47,29 +49,29 @@
#include "connection.h" #include "connection.h"
#include "statement.h" #include "statement.h"
SQLRETURN SQL_API SQLAllocConnect(SQLHENV EnvironmentHandle, RETCODE SQL_API SQLAllocConnect(HENV EnvironmentHandle,
SQLHDBC *ConnectionHandle) HDBC FAR *ConnectionHandle)
{ {
mylog("[SQLAllocConnect]"); mylog("[SQLAllocConnect]");
return PGAPI_AllocConnect(EnvironmentHandle, ConnectionHandle); return PGAPI_AllocConnect(EnvironmentHandle, ConnectionHandle);
} }
SQLRETURN SQL_API SQLAllocEnv(SQLHENV *EnvironmentHandle) RETCODE SQL_API SQLAllocEnv(HENV FAR *EnvironmentHandle)
{ {
mylog("[SQLAllocEnv]"); mylog("[SQLAllocEnv]");
return PGAPI_AllocEnv(EnvironmentHandle); return PGAPI_AllocEnv(EnvironmentHandle);
} }
SQLRETURN SQL_API SQLAllocStmt(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLAllocStmt(HDBC ConnectionHandle,
SQLHSTMT *StatementHandle) HSTMT *StatementHandle)
{ {
mylog("[SQLAllocStmt]"); mylog("[SQLAllocStmt]");
return PGAPI_AllocStmt(ConnectionHandle, StatementHandle); return PGAPI_AllocStmt(ConnectionHandle, StatementHandle);
} }
SQLRETURN SQL_API SQLBindCol(SQLHSTMT StatementHandle, RETCODE SQL_API SQLBindCol(HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
SQLPOINTER TargetValue, SQLINTEGER BufferLength, PTR TargetValue, SQLINTEGER BufferLength,
SQLINTEGER *StrLen_or_Ind) SQLINTEGER *StrLen_or_Ind)
{ {
mylog("[SQLBindCol]"); mylog("[SQLBindCol]");
...@@ -77,13 +79,13 @@ SQLRETURN SQL_API SQLBindCol(SQLHSTMT StatementHandle, ...@@ -77,13 +79,13 @@ SQLRETURN SQL_API SQLBindCol(SQLHSTMT StatementHandle,
TargetType, TargetValue, BufferLength, StrLen_or_Ind); TargetType, TargetValue, BufferLength, StrLen_or_Ind);
} }
SQLRETURN SQL_API SQLCancel(SQLHSTMT StatementHandle) RETCODE SQL_API SQLCancel(HSTMT StatementHandle)
{ {
mylog("[SQLCancel]"); mylog("[SQLCancel]");
return PGAPI_Cancel(StatementHandle); return PGAPI_Cancel(StatementHandle);
} }
SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle, RETCODE SQL_API SQLColumns(HSTMT StatementHandle,
SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
SQLCHAR *TableName, SQLSMALLINT NameLength3, SQLCHAR *TableName, SQLSMALLINT NameLength3,
...@@ -96,7 +98,7 @@ SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle, ...@@ -96,7 +98,7 @@ SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle,
} }
SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLConnect(HDBC ConnectionHandle,
SQLCHAR *ServerName, SQLSMALLINT NameLength1, SQLCHAR *ServerName, SQLSMALLINT NameLength1,
SQLCHAR *UserName, SQLSMALLINT NameLength2, SQLCHAR *UserName, SQLSMALLINT NameLength2,
SQLCHAR *Authentication, SQLSMALLINT NameLength3) SQLCHAR *Authentication, SQLSMALLINT NameLength3)
...@@ -106,7 +108,7 @@ SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle, ...@@ -106,7 +108,7 @@ SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle,
UserName, NameLength2, Authentication, NameLength3); UserName, NameLength2, Authentication, NameLength3);
} }
SQLRETURN SQL_API SQLDriverConnect(HDBC hdbc, RETCODE SQL_API SQLDriverConnect(HDBC hdbc,
HWND hwnd, HWND hwnd,
UCHAR FAR *szConnStrIn, UCHAR FAR *szConnStrIn,
SWORD cbConnStrIn, SWORD cbConnStrIn,
...@@ -119,8 +121,8 @@ SQLRETURN SQL_API SQLDriverConnect(HDBC hdbc, ...@@ -119,8 +121,8 @@ SQLRETURN SQL_API SQLDriverConnect(HDBC hdbc,
return PGAPI_DriverConnect(hdbc, hwnd, szConnStrIn, cbConnStrIn, return PGAPI_DriverConnect(hdbc, hwnd, szConnStrIn, cbConnStrIn,
szConnStrOut, cbConnStrOutMax, pcbConnStrOut, fDriverCompletion); szConnStrOut, cbConnStrOutMax, pcbConnStrOut, fDriverCompletion);
} }
SQLRETURN SQL_API SQLBrowseConnect( RETCODE SQL_API SQLBrowseConnect(
SQLHDBC hdbc, HDBC hdbc,
SQLCHAR *szConnStrIn, SQLCHAR *szConnStrIn,
SQLSMALLINT cbConnStrIn, SQLSMALLINT cbConnStrIn,
SQLCHAR *szConnStrOut, SQLCHAR *szConnStrOut,
...@@ -132,7 +134,7 @@ SQLRETURN SQL_API SQLBrowseConnect( ...@@ -132,7 +134,7 @@ SQLRETURN SQL_API SQLBrowseConnect(
szConnStrOut, cbConnStrOutMax, pcbConnStrOut); szConnStrOut, cbConnStrOutMax, pcbConnStrOut);
} }
SQLRETURN SQL_API SQLDataSources(SQLHENV EnvironmentHandle, RETCODE SQL_API SQLDataSources(HENV EnvironmentHandle,
SQLUSMALLINT Direction, SQLCHAR *ServerName, SQLUSMALLINT Direction, SQLCHAR *ServerName,
SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1, SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1,
SQLCHAR *Description, SQLSMALLINT BufferLength2, SQLCHAR *Description, SQLSMALLINT BufferLength2,
...@@ -147,7 +149,7 @@ SQLRETURN SQL_API SQLDataSources(SQLHENV EnvironmentHandle, ...@@ -147,7 +149,7 @@ SQLRETURN SQL_API SQLDataSources(SQLHENV EnvironmentHandle,
return SQL_ERROR; return SQL_ERROR;
} }
SQLRETURN SQL_API SQLDescribeCol(SQLHSTMT StatementHandle, RETCODE SQL_API SQLDescribeCol(HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName, SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName,
SQLSMALLINT BufferLength, SQLSMALLINT *NameLength, SQLSMALLINT BufferLength, SQLSMALLINT *NameLength,
SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize, SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize,
...@@ -159,14 +161,14 @@ SQLRETURN SQL_API SQLDescribeCol(SQLHSTMT StatementHandle, ...@@ -159,14 +161,14 @@ SQLRETURN SQL_API SQLDescribeCol(SQLHSTMT StatementHandle,
DataType, ColumnSize, DecimalDigits, Nullable); DataType, ColumnSize, DecimalDigits, Nullable);
} }
SQLRETURN SQL_API SQLDisconnect(SQLHDBC ConnectionHandle) RETCODE SQL_API SQLDisconnect(HDBC ConnectionHandle)
{ {
mylog("[SQLDisconnect]"); mylog("[SQLDisconnect]");
return PGAPI_Disconnect(ConnectionHandle); return PGAPI_Disconnect(ConnectionHandle);
} }
SQLRETURN SQL_API SQLError(SQLHENV EnvironmentHandle, RETCODE SQL_API SQLError(HENV EnvironmentHandle,
SQLHDBC ConnectionHandle, SQLHSTMT StatementHandle, HDBC ConnectionHandle, HSTMT StatementHandle,
SQLCHAR *Sqlstate, SQLINTEGER *NativeError, SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
SQLCHAR *MessageText, SQLSMALLINT BufferLength, SQLCHAR *MessageText, SQLSMALLINT BufferLength,
SQLSMALLINT *TextLength) SQLSMALLINT *TextLength)
...@@ -176,20 +178,20 @@ SQLRETURN SQL_API SQLError(SQLHENV EnvironmentHandle, ...@@ -176,20 +178,20 @@ SQLRETURN SQL_API SQLError(SQLHENV EnvironmentHandle,
Sqlstate, NativeError, MessageText, BufferLength, TextLength); Sqlstate, NativeError, MessageText, BufferLength, TextLength);
} }
SQLRETURN SQL_API SQLExecDirect(SQLHSTMT StatementHandle, RETCODE SQL_API SQLExecDirect(HSTMT StatementHandle,
SQLCHAR *StatementText, SQLINTEGER TextLength) SQLCHAR *StatementText, SQLINTEGER TextLength)
{ {
mylog("[SQLExecDirect]"); mylog("[SQLExecDirect]");
return PGAPI_ExecDirect(StatementHandle, StatementText, TextLength); return PGAPI_ExecDirect(StatementHandle, StatementText, TextLength);
} }
SQLRETURN SQL_API SQLExecute(SQLHSTMT StatementHandle) RETCODE SQL_API SQLExecute(HSTMT StatementHandle)
{ {
mylog("[SQLExecute]"); mylog("[SQLExecute]");
return PGAPI_Execute(StatementHandle); return PGAPI_Execute(StatementHandle);
} }
SQLRETURN SQL_API SQLFetch(SQLHSTMT StatementHandle) RETCODE SQL_API SQLFetch(HSTMT StatementHandle)
{ {
static char *func = "SQLFetch"; static char *func = "SQLFetch";
#if (ODBCVER >= 0x3000) #if (ODBCVER >= 0x3000)
...@@ -209,32 +211,32 @@ SQLRETURN SQL_API SQLFetch(SQLHSTMT StatementHandle) ...@@ -209,32 +211,32 @@ SQLRETURN SQL_API SQLFetch(SQLHSTMT StatementHandle)
return PGAPI_Fetch(StatementHandle); return PGAPI_Fetch(StatementHandle);
} }
SQLRETURN SQL_API SQLFreeConnect(SQLHDBC ConnectionHandle) RETCODE SQL_API SQLFreeConnect(HDBC ConnectionHandle)
{ {
mylog("[SQLFreeStmt]"); mylog("[SQLFreeStmt]");
return PGAPI_FreeConnect(ConnectionHandle); return PGAPI_FreeConnect(ConnectionHandle);
} }
SQLRETURN SQL_API SQLFreeEnv(SQLHENV EnvironmentHandle) RETCODE SQL_API SQLFreeEnv(HENV EnvironmentHandle)
{ {
mylog("[SQLFreeEnv]"); mylog("[SQLFreeEnv]");
return PGAPI_FreeEnv(EnvironmentHandle); return PGAPI_FreeEnv(EnvironmentHandle);
} }
SQLRETURN SQL_API SQLFreeStmt(SQLHSTMT StatementHandle, RETCODE SQL_API SQLFreeStmt(HSTMT StatementHandle,
SQLUSMALLINT Option) SQLUSMALLINT Option)
{ {
mylog("[SQLFreeStmt]"); mylog("[SQLFreeStmt]");
return PGAPI_FreeStmt(StatementHandle, Option); return PGAPI_FreeStmt(StatementHandle, Option);
} }
SQLRETURN SQL_API SQLGetConnectOption(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLGetConnectOption(HDBC ConnectionHandle,
SQLUSMALLINT Option, SQLPOINTER Value) SQLUSMALLINT Option, PTR Value)
{ {
mylog("[SQLGetConnectOption]"); mylog("[SQLGetConnectOption]");
return PGAPI_GetConnectOption(ConnectionHandle, Option, Value); return PGAPI_GetConnectOption(ConnectionHandle, Option, Value);
} }
SQLRETURN SQL_API SQLGetCursorName(SQLHSTMT StatementHandle, RETCODE SQL_API SQLGetCursorName(HSTMT StatementHandle,
SQLCHAR *CursorName, SQLSMALLINT BufferLength, SQLCHAR *CursorName, SQLSMALLINT BufferLength,
SQLSMALLINT *NameLength) SQLSMALLINT *NameLength)
{ {
...@@ -243,9 +245,9 @@ SQLRETURN SQL_API SQLGetCursorName(SQLHSTMT StatementHandle, ...@@ -243,9 +245,9 @@ SQLRETURN SQL_API SQLGetCursorName(SQLHSTMT StatementHandle,
NameLength); NameLength);
} }
SQLRETURN SQL_API SQLGetData(SQLHSTMT StatementHandle, RETCODE SQL_API SQLGetData(HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
SQLPOINTER TargetValue, SQLINTEGER BufferLength, PTR TargetValue, SQLINTEGER BufferLength,
SQLINTEGER *StrLen_or_Ind) SQLINTEGER *StrLen_or_Ind)
{ {
mylog("[SQLGetData]"); mylog("[SQLGetData]");
...@@ -253,7 +255,7 @@ SQLRETURN SQL_API SQLGetData(SQLHSTMT StatementHandle, ...@@ -253,7 +255,7 @@ SQLRETURN SQL_API SQLGetData(SQLHSTMT StatementHandle,
TargetValue, BufferLength, StrLen_or_Ind); TargetValue, BufferLength, StrLen_or_Ind);
} }
SQLRETURN SQL_API SQLGetFunctions(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLGetFunctions(HDBC ConnectionHandle,
SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported) SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported)
{ {
mylog("[SQLGetFunctions"); mylog("[SQLGetFunctions");
...@@ -263,82 +265,93 @@ SQLRETURN SQL_API SQLGetFunctions(SQLHDBC ConnectionHandle, ...@@ -263,82 +265,93 @@ SQLRETURN SQL_API SQLGetFunctions(SQLHDBC ConnectionHandle,
#endif #endif
return PGAPI_GetFunctions(ConnectionHandle, FunctionId, Supported); return PGAPI_GetFunctions(ConnectionHandle, FunctionId, Supported);
} }
SQLRETURN SQL_API SQLGetInfo(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLGetInfo(HDBC ConnectionHandle,
SQLUSMALLINT InfoType, SQLPOINTER InfoValue, SQLUSMALLINT InfoType, PTR InfoValue,
SQLSMALLINT BufferLength, SQLSMALLINT *StringLength) SQLSMALLINT BufferLength, SQLSMALLINT *StringLength)
{ {
#if (ODBCVER >= 0x3000)
RETCODE ret;
mylog("[SQLGetInfo(30)]");
if ((ret = PGAPI_GetInfo(ConnectionHandle, InfoType, InfoValue,
BufferLength, StringLength)) == SQL_ERROR)
return PGAPI_GetInfo30(ConnectionHandle, InfoType, InfoValue,
BufferLength, StringLength);
else
return ret;
#else
mylog("[SQLGetInfo]"); mylog("[SQLGetInfo]");
return PGAPI_GetInfo(ConnectionHandle, InfoType, InfoValue, return PGAPI_GetInfo(ConnectionHandle, InfoType, InfoValue,
BufferLength, StringLength); BufferLength, StringLength);
#endif
} }
SQLRETURN SQL_API SQLGetStmtOption(SQLHSTMT StatementHandle, RETCODE SQL_API SQLGetStmtOption(HSTMT StatementHandle,
SQLUSMALLINT Option, SQLPOINTER Value) SQLUSMALLINT Option, PTR Value)
{ {
mylog("[SQLGetStmtOption]"); mylog("[SQLGetStmtOption]");
return PGAPI_GetStmtOption(StatementHandle, Option, Value); return PGAPI_GetStmtOption(StatementHandle, Option, Value);
} }
SQLRETURN SQL_API SQLGetTypeInfo(SQLHSTMT StatementHandle, RETCODE SQL_API SQLGetTypeInfo(HSTMT StatementHandle,
SQLSMALLINT DataType) SQLSMALLINT DataType)
{ {
mylog("[SQLGetTypeInfo]"); mylog("[SQLGetTypeInfo]");
return PGAPI_GetTypeInfo(StatementHandle,DataType); return PGAPI_GetTypeInfo(StatementHandle,DataType);
} }
SQLRETURN SQL_API SQLNumResultCols(SQLHSTMT StatementHandle, RETCODE SQL_API SQLNumResultCols(HSTMT StatementHandle,
SQLSMALLINT *ColumnCount) SQLSMALLINT *ColumnCount)
{ {
mylog("[SQLNumResultCols]"); mylog("[SQLNumResultCols]");
return PGAPI_NumResultCols(StatementHandle, ColumnCount); return PGAPI_NumResultCols(StatementHandle, ColumnCount);
} }
SQLRETURN SQL_API SQLParamData(SQLHSTMT StatementHandle, RETCODE SQL_API SQLParamData(HSTMT StatementHandle,
SQLPOINTER *Value) PTR *Value)
{ {
mylog("[SQLParamData]"); mylog("[SQLParamData]");
return PGAPI_ParamData(StatementHandle, Value); return PGAPI_ParamData(StatementHandle, Value);
} }
SQLRETURN SQL_API SQLPrepare(SQLHSTMT StatementHandle, RETCODE SQL_API SQLPrepare(HSTMT StatementHandle,
SQLCHAR *StatementText, SQLINTEGER TextLength) SQLCHAR *StatementText, SQLINTEGER TextLength)
{ {
mylog("[SQLPrepare]"); mylog("[SQLPrepare]");
return PGAPI_Prepare(StatementHandle, StatementText, TextLength); return PGAPI_Prepare(StatementHandle, StatementText, TextLength);
} }
SQLRETURN SQL_API SQLPutData(SQLHSTMT StatementHandle, RETCODE SQL_API SQLPutData(HSTMT StatementHandle,
SQLPOINTER Data, SQLINTEGER StrLen_or_Ind) PTR Data, SQLINTEGER StrLen_or_Ind)
{ {
mylog("[SQLPutData]"); mylog("[SQLPutData]");
return PGAPI_PutData(StatementHandle, Data, StrLen_or_Ind); return PGAPI_PutData(StatementHandle, Data, StrLen_or_Ind);
} }
SQLRETURN SQL_API SQLRowCount(SQLHSTMT StatementHandle, RETCODE SQL_API SQLRowCount(HSTMT StatementHandle,
SQLINTEGER *RowCount) SQLINTEGER *RowCount)
{ {
mylog("[SQLRowCount]"); mylog("[SQLRowCount]");
return PGAPI_RowCount(StatementHandle, RowCount); return PGAPI_RowCount(StatementHandle, RowCount);
} }
SQLRETURN SQL_API SQLSetConnectOption(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLSetConnectOption(HDBC ConnectionHandle,
SQLUSMALLINT Option, SQLUINTEGER Value) SQLUSMALLINT Option, SQLUINTEGER Value)
{ {
mylog("[SQLSetConnectionOption]"); mylog("[SQLSetConnectionOption]");
return PGAPI_SetConnectOption(ConnectionHandle, Option, Value); return PGAPI_SetConnectOption(ConnectionHandle, Option, Value);
} }
SQLRETURN SQL_API SQLSetCursorName(SQLHSTMT StatementHandle, RETCODE SQL_API SQLSetCursorName(HSTMT StatementHandle,
SQLCHAR *CursorName, SQLSMALLINT NameLength) SQLCHAR *CursorName, SQLSMALLINT NameLength)
{ {
mylog("[SQLSetCursorName]"); mylog("[SQLSetCursorName]");
return PGAPI_SetCursorName(StatementHandle, CursorName, NameLength); return PGAPI_SetCursorName(StatementHandle, CursorName, NameLength);
} }
SQLRETURN SQL_API SQLSetParam(SQLHSTMT StatementHandle, RETCODE SQL_API SQLSetParam(HSTMT StatementHandle,
SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType,
SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision, SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision,
SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, SQLSMALLINT ParameterScale, PTR ParameterValue,
SQLINTEGER *StrLen_or_Ind) SQLINTEGER *StrLen_or_Ind)
{ {
mylog("[SQLSetParam]"); mylog("[SQLSetParam]");
...@@ -350,14 +363,14 @@ SQLRETURN SQL_API SQLSetParam(SQLHSTMT StatementHandle, ...@@ -350,14 +363,14 @@ SQLRETURN SQL_API SQLSetParam(SQLHSTMT StatementHandle,
return SQL_ERROR; return SQL_ERROR;
} }
SQLRETURN SQL_API SQLSetStmtOption(SQLHSTMT StatementHandle, RETCODE SQL_API SQLSetStmtOption(HSTMT StatementHandle,
SQLUSMALLINT Option, SQLUINTEGER Value) SQLUSMALLINT Option, SQLUINTEGER Value)
{ {
mylog("[SQLSetStmtOption]"); mylog("[SQLSetStmtOption]");
return PGAPI_SetStmtOption(StatementHandle, Option, Value); return PGAPI_SetStmtOption(StatementHandle, Option, Value);
} }
SQLRETURN SQL_API SQLSpecialColumns(SQLHSTMT StatementHandle, RETCODE SQL_API SQLSpecialColumns(HSTMT StatementHandle,
SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName, SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName,
SQLSMALLINT NameLength1, SQLCHAR *SchemaName, SQLSMALLINT NameLength1, SQLCHAR *SchemaName,
SQLSMALLINT NameLength2, SQLCHAR *TableName, SQLSMALLINT NameLength2, SQLCHAR *TableName,
...@@ -370,7 +383,7 @@ SQLRETURN SQL_API SQLSpecialColumns(SQLHSTMT StatementHandle, ...@@ -370,7 +383,7 @@ SQLRETURN SQL_API SQLSpecialColumns(SQLHSTMT StatementHandle,
Scope, Nullable); Scope, Nullable);
} }
SQLRETURN SQL_API SQLStatistics(SQLHSTMT StatementHandle, RETCODE SQL_API SQLStatistics(HSTMT StatementHandle,
SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
SQLCHAR *TableName, SQLSMALLINT NameLength3, SQLCHAR *TableName, SQLSMALLINT NameLength3,
...@@ -382,7 +395,7 @@ SQLRETURN SQL_API SQLStatistics(SQLHSTMT StatementHandle, ...@@ -382,7 +395,7 @@ SQLRETURN SQL_API SQLStatistics(SQLHSTMT StatementHandle,
Reserved); Reserved);
} }
SQLRETURN SQL_API SQLTables(SQLHSTMT StatementHandle, RETCODE SQL_API SQLTables(HSTMT StatementHandle,
SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
SQLCHAR *TableName, SQLSMALLINT NameLength3, SQLCHAR *TableName, SQLSMALLINT NameLength3,
...@@ -394,18 +407,18 @@ SQLRETURN SQL_API SQLTables(SQLHSTMT StatementHandle, ...@@ -394,18 +407,18 @@ SQLRETURN SQL_API SQLTables(SQLHSTMT StatementHandle,
TableType, NameLength4); TableType, NameLength4);
} }
SQLRETURN SQL_API SQLTransact(SQLHENV EnvironmentHandle, RETCODE SQL_API SQLTransact(HENV EnvironmentHandle,
SQLHDBC ConnectionHandle, SQLUSMALLINT CompletionType) HDBC ConnectionHandle, SQLUSMALLINT CompletionType)
{ {
mylog("[SQLTransact]"); mylog("[SQLTransact]");
return PGAPI_Transact(EnvironmentHandle, ConnectionHandle, CompletionType); return PGAPI_Transact(EnvironmentHandle, ConnectionHandle, CompletionType);
} }
SQLRETURN SQL_API SQLColAttributes( RETCODE SQL_API SQLColAttributes(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT icol, SQLUSMALLINT icol,
SQLUSMALLINT fDescType, SQLUSMALLINT fDescType,
SQLPOINTER rgbDesc, PTR rgbDesc,
SQLSMALLINT cbDescMax, SQLSMALLINT cbDescMax,
SQLSMALLINT *pcbDesc, SQLSMALLINT *pcbDesc,
SQLINTEGER *pfDesc) SQLINTEGER *pfDesc)
...@@ -415,8 +428,8 @@ SQLRETURN SQL_API SQLColAttributes( ...@@ -415,8 +428,8 @@ SQLRETURN SQL_API SQLColAttributes(
cbDescMax, pcbDesc, pfDesc); cbDescMax, pcbDesc, pfDesc);
} }
SQLRETURN SQL_API SQLColumnPrivileges( RETCODE SQL_API SQLColumnPrivileges(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -432,8 +445,8 @@ SQLRETURN SQL_API SQLColumnPrivileges( ...@@ -432,8 +445,8 @@ SQLRETURN SQL_API SQLColumnPrivileges(
szColumnName, cbColumnName); szColumnName, cbColumnName);
} }
SQLRETURN SQL_API SQLDescribeParam( RETCODE SQL_API SQLDescribeParam(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT ipar, SQLUSMALLINT ipar,
SQLSMALLINT *pfSqlType, SQLSMALLINT *pfSqlType,
SQLUINTEGER *pcbParamDef, SQLUINTEGER *pcbParamDef,
...@@ -445,8 +458,8 @@ SQLRETURN SQL_API SQLDescribeParam( ...@@ -445,8 +458,8 @@ SQLRETURN SQL_API SQLDescribeParam(
pibScale, pfNullable); pibScale, pfNullable);
} }
SQLRETURN SQL_API SQLExtendedFetch( RETCODE SQL_API SQLExtendedFetch(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT fFetchType, SQLUSMALLINT fFetchType,
SQLINTEGER irow, SQLINTEGER irow,
SQLUINTEGER *pcrow, SQLUINTEGER *pcrow,
...@@ -456,8 +469,8 @@ SQLRETURN SQL_API SQLExtendedFetch( ...@@ -456,8 +469,8 @@ SQLRETURN SQL_API SQLExtendedFetch(
return PGAPI_ExtendedFetch(hstmt, fFetchType, irow, pcrow, rgfRowStatus); return PGAPI_ExtendedFetch(hstmt, fFetchType, irow, pcrow, rgfRowStatus);
} }
SQLRETURN SQL_API SQLForeignKeys( RETCODE SQL_API SQLForeignKeys(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szPkCatalogName, SQLCHAR *szPkCatalogName,
SQLSMALLINT cbPkCatalogName, SQLSMALLINT cbPkCatalogName,
SQLCHAR *szPkSchemaName, SQLCHAR *szPkSchemaName,
...@@ -478,14 +491,14 @@ SQLRETURN SQL_API SQLForeignKeys( ...@@ -478,14 +491,14 @@ SQLRETURN SQL_API SQLForeignKeys(
szFkSchemaName, cbFkSchemaName, szFkTableName, cbFkTableName); szFkSchemaName, cbFkSchemaName, szFkTableName, cbFkTableName);
} }
SQLRETURN SQL_API SQLMoreResults(SQLHSTMT hstmt) RETCODE SQL_API SQLMoreResults(HSTMT hstmt)
{ {
mylog("[SQLMoreResults]"); mylog("[SQLMoreResults]");
return PGAPI_MoreResults(hstmt); return PGAPI_MoreResults(hstmt);
} }
SQLRETURN SQL_API SQLNativeSql( RETCODE SQL_API SQLNativeSql(
SQLHDBC hdbc, HDBC hdbc,
SQLCHAR *szSqlStrIn, SQLCHAR *szSqlStrIn,
SQLINTEGER cbSqlStrIn, SQLINTEGER cbSqlStrIn,
SQLCHAR *szSqlStr, SQLCHAR *szSqlStr,
...@@ -497,16 +510,16 @@ SQLRETURN SQL_API SQLNativeSql( ...@@ -497,16 +510,16 @@ SQLRETURN SQL_API SQLNativeSql(
cbSqlStrMax, pcbSqlStr); cbSqlStrMax, pcbSqlStr);
} }
SQLRETURN SQL_API SQLNumParams( RETCODE SQL_API SQLNumParams(
SQLHSTMT hstmt, HSTMT hstmt,
SQLSMALLINT *pcpar) SQLSMALLINT *pcpar)
{ {
mylog("[SQLNumParams]"); mylog("[SQLNumParams]");
return PGAPI_NumParams(hstmt, pcpar); return PGAPI_NumParams(hstmt, pcpar);
} }
SQLRETURN SQL_API SQLParamOptions( RETCODE SQL_API SQLParamOptions(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUINTEGER crow, SQLUINTEGER crow,
SQLUINTEGER *pirow) SQLUINTEGER *pirow)
{ {
...@@ -514,8 +527,8 @@ SQLRETURN SQL_API SQLParamOptions( ...@@ -514,8 +527,8 @@ SQLRETURN SQL_API SQLParamOptions(
return PGAPI_ParamOptions(hstmt, crow, pirow); return PGAPI_ParamOptions(hstmt, crow, pirow);
} }
SQLRETURN SQL_API SQLPrimaryKeys( RETCODE SQL_API SQLPrimaryKeys(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -528,8 +541,8 @@ SQLRETURN SQL_API SQLPrimaryKeys( ...@@ -528,8 +541,8 @@ SQLRETURN SQL_API SQLPrimaryKeys(
szSchemaName, cbSchemaName, szTableName, cbTableName); szSchemaName, cbSchemaName, szTableName, cbTableName);
} }
SQLRETURN SQL_API SQLProcedureColumns( RETCODE SQL_API SQLProcedureColumns(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -545,8 +558,8 @@ SQLRETURN SQL_API SQLProcedureColumns( ...@@ -545,8 +558,8 @@ SQLRETURN SQL_API SQLProcedureColumns(
szColumnName, cbColumnName); szColumnName, cbColumnName);
} }
SQLRETURN SQL_API SQLProcedures( RETCODE SQL_API SQLProcedures(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -559,8 +572,8 @@ SQLRETURN SQL_API SQLProcedures( ...@@ -559,8 +572,8 @@ SQLRETURN SQL_API SQLProcedures(
szSchemaName, cbSchemaName, szProcName, cbProcName); szSchemaName, cbSchemaName, szProcName, cbProcName);
} }
SQLRETURN SQL_API SQLSetPos( RETCODE SQL_API SQLSetPos(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT irow, SQLUSMALLINT irow,
SQLUSMALLINT fOption, SQLUSMALLINT fOption,
SQLUSMALLINT fLock) SQLUSMALLINT fLock)
...@@ -569,8 +582,8 @@ SQLRETURN SQL_API SQLSetPos( ...@@ -569,8 +582,8 @@ SQLRETURN SQL_API SQLSetPos(
return PGAPI_SetPos(hstmt, irow, fOption, fLock); return PGAPI_SetPos(hstmt, irow, fOption, fLock);
} }
SQLRETURN SQL_API SQLTablePrivileges( RETCODE SQL_API SQLTablePrivileges(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -583,15 +596,15 @@ SQLRETURN SQL_API SQLTablePrivileges( ...@@ -583,15 +596,15 @@ SQLRETURN SQL_API SQLTablePrivileges(
szSchemaName, cbSchemaName, szTableName, cbTableName); szSchemaName, cbSchemaName, szTableName, cbTableName);
} }
SQLRETURN SQL_API SQLBindParameter( RETCODE SQL_API SQLBindParameter(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT ipar, SQLUSMALLINT ipar,
SQLSMALLINT fParamType, SQLSMALLINT fParamType,
SQLSMALLINT fCType, SQLSMALLINT fCType,
SQLSMALLINT fSqlType, SQLSMALLINT fSqlType,
SQLUINTEGER cbColDef, SQLUINTEGER cbColDef,
SQLSMALLINT ibScale, SQLSMALLINT ibScale,
SQLPOINTER rgbValue, PTR rgbValue,
SQLINTEGER cbValueMax, SQLINTEGER cbValueMax,
SQLINTEGER *pcbValue) SQLINTEGER *pcbValue)
{ {
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
#include "pgapifunc.h" #include "pgapifunc.h"
/* SQLAllocConnect/SQLAllocEnv/SQLAllocStmt -> SQLAllocHandle */ /* SQLAllocConnect/SQLAllocEnv/SQLAllocStmt -> SQLAllocHandle */
SQLRETURN SQL_API SQLAllocHandle(SQLSMALLINT HandleType, RETCODE SQL_API SQLAllocHandle(SQLSMALLINT HandleType,
SQLHANDLE InputHandle, SQLHANDLE *OutputHandle) SQLHANDLE InputHandle, SQLHANDLE *OutputHandle)
{ {
mylog("[[SQLAllocHandle]]"); mylog("[[SQLAllocHandle]]");
...@@ -58,10 +58,10 @@ SQLRETURN SQL_API SQLAllocHandle(SQLSMALLINT HandleType, ...@@ -58,10 +58,10 @@ SQLRETURN SQL_API SQLAllocHandle(SQLSMALLINT HandleType,
return SQL_ERROR; return SQL_ERROR;
} }
/* SQLBindParameter/SQLSetParam -> SQLBindParam */ /* SQLBindParameter/SQLSetParam -> SQLBindParam */
SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle, RETCODE SQL_API SQLBindParam(HSTMT StatementHandle,
SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType,
SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision, SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision,
SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, SQLSMALLINT ParameterScale, PTR ParameterValue,
SQLINTEGER *StrLen_or_Ind) SQLINTEGER *StrLen_or_Ind)
{ {
int BufferLength = 512; /* Is it OK ? */ int BufferLength = 512; /* Is it OK ? */
...@@ -69,17 +69,17 @@ SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle, ...@@ -69,17 +69,17 @@ SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle,
return PGAPI_BindParameter(StatementHandle, ParameterNumber, SQL_PARAM_INPUT, ValueType, ParameterType, LengthPrecision, ParameterScale, ParameterValue, BufferLength, StrLen_or_Ind); return PGAPI_BindParameter(StatementHandle, ParameterNumber, SQL_PARAM_INPUT, ValueType, ParameterType, LengthPrecision, ParameterScale, ParameterValue, BufferLength, StrLen_or_Ind);
} }
/* New function */ /* New function */
SQLRETURN SQL_API SQLCloseCursor(SQLHSTMT StatementHandle) RETCODE SQL_API SQLCloseCursor(HSTMT StatementHandle)
{ {
mylog("[[SQLCloseCursor]]"); mylog("[[SQLCloseCursor]]");
return PGAPI_FreeStmt(StatementHandle, SQL_CLOSE); return PGAPI_FreeStmt(StatementHandle, SQL_CLOSE);
} }
/* SQLColAttributes -> SQLColAttribute */ /* SQLColAttributes -> SQLColAttribute */
SQLRETURN SQL_API SQLColAttribute (SQLHSTMT StatementHandle, RETCODE SQL_API SQLColAttribute (HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier, SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier,
SQLPOINTER CharacterAttribute, SQLSMALLINT BufferLength, PTR CharacterAttribute, SQLSMALLINT BufferLength,
SQLSMALLINT *StringLength, SQLPOINTER NumericAttribute) SQLSMALLINT *StringLength, PTR NumericAttribute)
{ {
mylog("[[SQLColAttribute]]"); mylog("[[SQLColAttribute]]");
return PGAPI_ColAttributes(StatementHandle, ColumnNumber, return PGAPI_ColAttributes(StatementHandle, ColumnNumber,
...@@ -87,14 +87,14 @@ SQLRETURN SQL_API SQLColAttribute (SQLHSTMT StatementHandle, ...@@ -87,14 +87,14 @@ SQLRETURN SQL_API SQLColAttribute (SQLHSTMT StatementHandle,
StringLength, NumericAttribute); StringLength, NumericAttribute);
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle, RETCODE SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle,
SQLHDESC TargetDescHandle) SQLHDESC TargetDescHandle)
{ {
mylog("[[SQLCopyDesc]]\n"); mylog("[[SQLCopyDesc]]\n");
return SQL_ERROR; return SQL_ERROR;
} }
/* SQLTransact -> SQLEndTran */ /* SQLTransact -> SQLEndTran */
SQLRETURN SQL_API SQLEndTran(SQLSMALLINT HandleType, SQLHANDLE Handle, RETCODE SQL_API SQLEndTran(SQLSMALLINT HandleType, SQLHANDLE Handle,
SQLSMALLINT CompletionType) SQLSMALLINT CompletionType)
{ {
mylog("[[SQLEndTran]]"); mylog("[[SQLEndTran]]");
...@@ -110,12 +110,12 @@ SQLRETURN SQL_API SQLEndTran(SQLSMALLINT HandleType, SQLHANDLE Handle, ...@@ -110,12 +110,12 @@ SQLRETURN SQL_API SQLEndTran(SQLSMALLINT HandleType, SQLHANDLE Handle,
} }
/* SQLExtendedFetch -> SQLFetchScroll */ /* SQLExtendedFetch -> SQLFetchScroll */
SQLRETURN SQL_API SQLFetchScroll(SQLHSTMT StatementHandle, RETCODE SQL_API SQLFetchScroll(HSTMT StatementHandle,
SQLSMALLINT FetchOrientation, SQLINTEGER FetchOffset) SQLSMALLINT FetchOrientation, SQLINTEGER FetchOffset)
{ {
static char *func = "SQLFetchScroll"; static char *func = "SQLFetchScroll";
StatementClass *stmt = (StatementClass *) StatementHandle; StatementClass *stmt = (StatementClass *) StatementHandle;
SQLRETURN ret; RETCODE ret;
SQLUSMALLINT *rowStatusArray = stmt->options.rowStatusArray; SQLUSMALLINT *rowStatusArray = stmt->options.rowStatusArray;
SQLINTEGER *pcRow = stmt->options.rowsFetched; SQLINTEGER *pcRow = stmt->options.rowsFetched;
mylog("[[%s]] %d,%d\n", func, FetchOrientation, FetchOffset); mylog("[[%s]] %d,%d\n", func, FetchOrientation, FetchOffset);
...@@ -138,7 +138,7 @@ SQLRETURN SQL_API SQLFetchScroll(SQLHSTMT StatementHandle, ...@@ -138,7 +138,7 @@ SQLRETURN SQL_API SQLFetchScroll(SQLHSTMT StatementHandle,
return ret; return ret;
} }
/* SQLFree(Connect/Env/Stmt) -> SQLFreeHandle */ /* SQLFree(Connect/Env/Stmt) -> SQLFreeHandle */
SQLRETURN SQL_API SQLFreeHandle(SQLSMALLINT HandleType, SQLHANDLE Handle) RETCODE SQL_API SQLFreeHandle(SQLSMALLINT HandleType, SQLHANDLE Handle)
{ {
mylog("[[SQLFreeHandle]]"); mylog("[[SQLFreeHandle]]");
switch (HandleType) switch (HandleType)
...@@ -154,16 +154,16 @@ SQLRETURN SQL_API SQLFreeHandle(SQLSMALLINT HandleType, SQLHANDLE Handle) ...@@ -154,16 +154,16 @@ SQLRETURN SQL_API SQLFreeHandle(SQLSMALLINT HandleType, SQLHANDLE Handle)
return SQL_ERROR; return SQL_ERROR;
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLGetDescField(SQLHDESC DescriptorHandle, RETCODE SQL_API SQLGetDescField(SQLHDESC DescriptorHandle,
SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier,
SQLPOINTER Value, SQLINTEGER BufferLength, PTR Value, SQLINTEGER BufferLength,
SQLINTEGER *StringLength) SQLINTEGER *StringLength)
{ {
mylog("[[SQLGetDescField]]\n"); mylog("[[SQLGetDescField]]\n");
return SQL_ERROR; return SQL_ERROR;
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLGetDescRec(SQLHDESC DescriptorHandle, RETCODE SQL_API SQLGetDescRec(SQLHDESC DescriptorHandle,
SQLSMALLINT RecNumber, SQLCHAR *Name, SQLSMALLINT RecNumber, SQLCHAR *Name,
SQLSMALLINT BufferLength, SQLSMALLINT *StringLength, SQLSMALLINT BufferLength, SQLSMALLINT *StringLength,
SQLSMALLINT *Type, SQLSMALLINT *SubType, SQLSMALLINT *Type, SQLSMALLINT *SubType,
...@@ -174,21 +174,21 @@ SQLRETURN SQL_API SQLGetDescRec(SQLHDESC DescriptorHandle, ...@@ -174,21 +174,21 @@ SQLRETURN SQL_API SQLGetDescRec(SQLHDESC DescriptorHandle,
return SQL_ERROR; return SQL_ERROR;
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLGetDiagField(SQLSMALLINT HandleType, SQLHANDLE Handle, RETCODE SQL_API SQLGetDiagField(SQLSMALLINT HandleType, SQLHANDLE Handle,
SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier, SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier,
SQLPOINTER DiagInfo, SQLSMALLINT BufferLength, PTR DiagInfo, SQLSMALLINT BufferLength,
SQLSMALLINT *StringLength) SQLSMALLINT *StringLength)
{ {
mylog("[[SQLGetDiagField]]\n"); mylog("[[SQLGetDiagField]]\n");
return SQL_ERROR; return SQL_ERROR;
} }
/* SQLError -> SQLDiagRec */ /* SQLError -> SQLDiagRec */
SQLRETURN SQL_API SQLGetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle, RETCODE SQL_API SQLGetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle,
SQLSMALLINT RecNumber, SQLCHAR *Sqlstate, SQLSMALLINT RecNumber, SQLCHAR *Sqlstate,
SQLINTEGER *NativeError, SQLCHAR *MessageText, SQLINTEGER *NativeError, SQLCHAR *MessageText,
SQLSMALLINT BufferLength, SQLSMALLINT *TextLength) SQLSMALLINT BufferLength, SQLSMALLINT *TextLength)
{ {
SQLRETURN ret; RETCODE ret;
mylog("[[SQLGetDiagRec]]\n"); mylog("[[SQLGetDiagRec]]\n");
switch (HandleType) switch (HandleType)
{ {
...@@ -221,8 +221,8 @@ SQLRETURN SQL_API SQLGetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle, ...@@ -221,8 +221,8 @@ SQLRETURN SQL_API SQLGetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle,
return ret; return ret;
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLGetEnvAttr(SQLHENV EnvironmentHandle, RETCODE SQL_API SQLGetEnvAttr(HENV EnvironmentHandle,
SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER Attribute, PTR Value,
SQLINTEGER BufferLength, SQLINTEGER *StringLength) SQLINTEGER BufferLength, SQLINTEGER *StringLength)
{ {
EnvironmentClass *env = (EnvironmentClass *) EnvironmentHandle; EnvironmentClass *env = (EnvironmentClass *) EnvironmentHandle;
...@@ -248,8 +248,8 @@ SQLRETURN SQL_API SQLGetEnvAttr(SQLHENV EnvironmentHandle, ...@@ -248,8 +248,8 @@ SQLRETURN SQL_API SQLGetEnvAttr(SQLHENV EnvironmentHandle,
return SQL_SUCCESS; return SQL_SUCCESS;
} }
/* SQLGetConnectOption -> SQLGetconnectAttr */ /* SQLGetConnectOption -> SQLGetconnectAttr */
SQLRETURN SQL_API SQLGetConnectAttr(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLGetConnectAttr(HDBC ConnectionHandle,
SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER Attribute, PTR Value,
SQLINTEGER BufferLength, SQLINTEGER *StringLength) SQLINTEGER BufferLength, SQLINTEGER *StringLength)
{ {
ConnectionClass *conn = (ConnectionClass *) ConnectionHandle; ConnectionClass *conn = (ConnectionClass *) ConnectionHandle;
...@@ -268,13 +268,13 @@ SQLRETURN SQL_API SQLGetConnectAttr(SQLHDBC ConnectionHandle, ...@@ -268,13 +268,13 @@ SQLRETURN SQL_API SQLGetConnectAttr(SQLHDBC ConnectionHandle,
return PGAPI_GetConnectOption (ConnectionHandle, (UWORD) Attribute, Value); return PGAPI_GetConnectOption (ConnectionHandle, (UWORD) Attribute, Value);
} }
/* SQLGetStmtOption -> SQLGetStmtAttr */ /* SQLGetStmtOption -> SQLGetStmtAttr */
SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle, RETCODE SQL_API SQLGetStmtAttr(HSTMT StatementHandle,
SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER Attribute, PTR Value,
SQLINTEGER BufferLength, SQLINTEGER *StringLength) SQLINTEGER BufferLength, SQLINTEGER *StringLength)
{ {
static char *func = "SQLGetStmtAttr"; static char *func = "SQLGetStmtAttr";
StatementClass *stmt = (StatementClass *) StatementHandle; StatementClass *stmt = (StatementClass *) StatementHandle;
SQLRETURN ret = SQL_SUCCESS; RETCODE ret = SQL_SUCCESS;
int len = 0; int len = 0;
mylog("[[%s]] %d\n", func, Attribute); mylog("[[%s]] %d\n", func, Attribute);
switch (Attribute) switch (Attribute)
...@@ -296,19 +296,19 @@ SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle, ...@@ -296,19 +296,19 @@ SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle,
len = 4; len = 4;
break; break;
case SQL_ATTR_APP_ROW_DESC: /* 10010 */ case SQL_ATTR_APP_ROW_DESC: /* 10010 */
*((SQLHSTMT *) Value) = StatementHandle; /* this is useless */ *((HSTMT *) Value) = StatementHandle; /* this is useless */
len = 4; len = 4;
break; break;
case SQL_ATTR_APP_PARAM_DESC: /* 10011 */ case SQL_ATTR_APP_PARAM_DESC: /* 10011 */
*((SQLHSTMT *) Value) = StatementHandle; /* this is useless */ *((HSTMT *) Value) = StatementHandle; /* this is useless */
len = 4; len = 4;
break; break;
case SQL_ATTR_IMP_ROW_DESC: /* 10012 */ case SQL_ATTR_IMP_ROW_DESC: /* 10012 */
*((SQLHSTMT *) Value) = StatementHandle; /* this is useless */ *((HSTMT *) Value) = StatementHandle; /* this is useless */
len = 4; len = 4;
break; break;
case SQL_ATTR_IMP_PARAM_DESC: /* 10013 */ case SQL_ATTR_IMP_PARAM_DESC: /* 10013 */
*((SQLHSTMT *) Value) = StatementHandle; /* this is useless */ *((HSTMT *) Value) = StatementHandle; /* this is useless */
len = 4; len = 4;
break; break;
case SQL_ATTR_AUTO_IPD: /* 10001 */ case SQL_ATTR_AUTO_IPD: /* 10001 */
...@@ -343,8 +343,8 @@ SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle, ...@@ -343,8 +343,8 @@ SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle,
} }
/* SQLSetConnectOption -> SQLSetConnectAttr */ /* SQLSetConnectOption -> SQLSetConnectAttr */
SQLRETURN SQL_API SQLSetConnectAttr(SQLHDBC ConnectionHandle, RETCODE SQL_API SQLSetConnectAttr(HDBC ConnectionHandle,
SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER Attribute, PTR Value,
SQLINTEGER StringLength) SQLINTEGER StringLength)
{ {
ConnectionClass *conn = (ConnectionClass *) ConnectionHandle; ConnectionClass *conn = (ConnectionClass *) ConnectionHandle;
...@@ -364,27 +364,27 @@ SQLRETURN SQL_API SQLSetConnectAttr(SQLHDBC ConnectionHandle, ...@@ -364,27 +364,27 @@ SQLRETURN SQL_API SQLSetConnectAttr(SQLHDBC ConnectionHandle,
return PGAPI_SetConnectOption(ConnectionHandle, (UWORD) Attribute, (UDWORD) Value); return PGAPI_SetConnectOption(ConnectionHandle, (UWORD) Attribute, (UDWORD) Value);
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLSetDescField(SQLHDESC DescriptorHandle, RETCODE SQL_API SQLSetDescField(SQLHDESC DescriptorHandle,
SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier,
SQLPOINTER Value, SQLINTEGER BufferLength) PTR Value, SQLINTEGER BufferLength)
{ {
mylog("[[SQLSetDescField]]\n"); mylog("[[SQLSetDescField]]\n");
return SQL_ERROR; return SQL_ERROR;
} }
/* new fucntion */ /* new fucntion */
SQLRETURN SQL_API SQLSetDescRec(SQLHDESC DescriptorHandle, RETCODE SQL_API SQLSetDescRec(SQLHDESC DescriptorHandle,
SQLSMALLINT RecNumber, SQLSMALLINT Type, SQLSMALLINT RecNumber, SQLSMALLINT Type,
SQLSMALLINT SubType, SQLINTEGER Length, SQLSMALLINT SubType, SQLINTEGER Length,
SQLSMALLINT Precision, SQLSMALLINT Scale, SQLSMALLINT Precision, SQLSMALLINT Scale,
SQLPOINTER Data, SQLINTEGER *StringLength, PTR Data, SQLINTEGER *StringLength,
SQLINTEGER *Indicator) SQLINTEGER *Indicator)
{ {
mylog("[[SQLsetDescRec]]\n"); mylog("[[SQLsetDescRec]]\n");
return SQL_ERROR; return SQL_ERROR;
} }
/* new function */ /* new function */
SQLRETURN SQL_API SQLSetEnvAttr(SQLHENV EnvironmentHandle, RETCODE SQL_API SQLSetEnvAttr(HENV EnvironmentHandle,
SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER Attribute, PTR Value,
SQLINTEGER StringLength) SQLINTEGER StringLength)
{ {
EnvironmentClass *env = (EnvironmentClass *) EnvironmentHandle; EnvironmentClass *env = (EnvironmentClass *) EnvironmentHandle;
...@@ -415,8 +415,8 @@ SQLRETURN SQL_API SQLSetEnvAttr(SQLHENV EnvironmentHandle, ...@@ -415,8 +415,8 @@ SQLRETURN SQL_API SQLSetEnvAttr(SQLHENV EnvironmentHandle,
return SQL_SUCCESS_WITH_INFO; return SQL_SUCCESS_WITH_INFO;
} }
/* SQLSet(Param/Scroll/Stmt)Option -> SQLSetStmtAttr */ /* SQLSet(Param/Scroll/Stmt)Option -> SQLSetStmtAttr */
SQLRETURN SQL_API SQLSetStmtAttr(SQLHSTMT StatementHandle, RETCODE SQL_API SQLSetStmtAttr(HSTMT StatementHandle,
SQLINTEGER Attribute, SQLPOINTER Value, SQLINTEGER Attribute, PTR Value,
SQLINTEGER StringLength) SQLINTEGER StringLength)
{ {
static char *func = "SQLSetStmtAttr"; static char *func = "SQLSetStmtAttr";
...@@ -569,7 +569,7 @@ PGAPI_GetFunctions30(HDBC hdbc, UWORD fFunction, UWORD FAR *pfExists) ...@@ -569,7 +569,7 @@ PGAPI_GetFunctions30(HDBC hdbc, UWORD fFunction, UWORD FAR *pfExists)
return SQL_SUCCESS; return SQL_SUCCESS;
} }
SQLRETURN SQL_API RETCODE SQL_API
PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue, PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue,
SWORD cbInfoValueMax, SWORD FAR *pcbInfoValue) SWORD cbInfoValueMax, SWORD FAR *pcbInfoValue)
{ {
...@@ -577,7 +577,7 @@ PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue, ...@@ -577,7 +577,7 @@ PGAPI_GetInfo30(HDBC hdbc, UWORD fInfoType, PTR rgbInfoValue,
ConnectionClass *conn = (ConnectionClass *) hdbc; ConnectionClass *conn = (ConnectionClass *) hdbc;
char *p = NULL; char *p = NULL;
int len = 0, value = 0; int len = 0, value = 0;
SQLRETURN result; RETCODE result;
switch (fInfoType) switch (fInfoType)
{ {
......
...@@ -3,7 +3,8 @@ ...@@ -3,7 +3,8 @@
* *
*------- *-------
*/ */
#ifndef _PG_API_FUNC_H__
#define _PG_API_FUNC_H__
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "config.h" #include "config.h"
#endif #endif
...@@ -20,129 +21,129 @@ ...@@ -20,129 +21,129 @@
#include <sqlext.h> #include <sqlext.h>
#endif #endif
SQLRETURN SQL_API PGAPI_AllocConnect(SQLHENV EnvironmentHandle, RETCODE SQL_API PGAPI_AllocConnect(HENV EnvironmentHandle,
SQLHDBC *ConnectionHandle); HDBC FAR *ConnectionHandle);
SQLRETURN SQL_API PGAPI_AllocEnv(SQLHENV *EnvironmentHandle); RETCODE SQL_API PGAPI_AllocEnv(HENV FAR *EnvironmentHandle);
SQLRETURN SQL_API PGAPI_AllocStmt(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_AllocStmt(HDBC ConnectionHandle,
SQLHSTMT *StatementHandle); HSTMT *StatementHandle);
SQLRETURN SQL_API PGAPI_BindCol(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_BindCol(HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
SQLPOINTER TargetValue, SQLINTEGER BufferLength, PTR TargetValue, SQLINTEGER BufferLength,
SQLINTEGER *StrLen_or_Ind); SQLINTEGER *StrLen_or_Ind);
SQLRETURN SQL_API PGAPI_Cancel(SQLHSTMT StatementHandle); RETCODE SQL_API PGAPI_Cancel(HSTMT StatementHandle);
SQLRETURN SQL_API PGAPI_Columns(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_Columns(HSTMT StatementHandle,
SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
SQLCHAR *TableName, SQLSMALLINT NameLength3, SQLCHAR *TableName, SQLSMALLINT NameLength3,
SQLCHAR *ColumnName, SQLSMALLINT NameLength4); SQLCHAR *ColumnName, SQLSMALLINT NameLength4);
SQLRETURN SQL_API PGAPI_Connect(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_Connect(HDBC ConnectionHandle,
SQLCHAR *ServerName, SQLSMALLINT NameLength1, SQLCHAR *ServerName, SQLSMALLINT NameLength1,
SQLCHAR *UserName, SQLSMALLINT NameLength2, SQLCHAR *UserName, SQLSMALLINT NameLength2,
SQLCHAR *Authentication, SQLSMALLINT NameLength3); SQLCHAR *Authentication, SQLSMALLINT NameLength3);
SQLRETURN SQL_API PGAPI_DriverConnect(HDBC hdbc, HWND hwnd, RETCODE SQL_API PGAPI_DriverConnect(HDBC hdbc, HWND hwnd,
UCHAR FAR *szConnStrIn, SWORD cbConnStrIn, UCHAR FAR *szConnStrIn, SWORD cbConnStrIn,
UCHAR FAR *szConnStrOut, SWORD cbConnStrOutMax, UCHAR FAR *szConnStrOut, SWORD cbConnStrOutMax,
SWORD FAR *pcbConnStrOut, UWORD fDriverCompletion); SWORD FAR *pcbConnStrOut, UWORD fDriverCompletion);
SQLRETURN SQL_API PGAPI_BrowseConnect(SQLHDBC hdbc, RETCODE SQL_API PGAPI_BrowseConnect(HDBC hdbc,
SQLCHAR *szConnStrIn, SQLSMALLINT cbConnStrIn, SQLCHAR *szConnStrIn, SQLSMALLINT cbConnStrIn,
SQLCHAR *szConnStrOut, SQLSMALLINT cbConnStrOutMax, SQLCHAR *szConnStrOut, SQLSMALLINT cbConnStrOutMax,
SQLSMALLINT *pcbConnStrOut); SQLSMALLINT *pcbConnStrOut);
SQLRETURN SQL_API PGAPI_DataSources(SQLHENV EnvironmentHandle, RETCODE SQL_API PGAPI_DataSources(HENV EnvironmentHandle,
SQLUSMALLINT Direction, SQLCHAR *ServerName, SQLUSMALLINT Direction, SQLCHAR *ServerName,
SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1, SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1,
SQLCHAR *Description, SQLSMALLINT BufferLength2, SQLCHAR *Description, SQLSMALLINT BufferLength2,
SQLSMALLINT *NameLength2); SQLSMALLINT *NameLength2);
SQLRETURN SQL_API PGAPI_DescribeCol(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_DescribeCol(HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName, SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName,
SQLSMALLINT BufferLength, SQLSMALLINT *NameLength, SQLSMALLINT BufferLength, SQLSMALLINT *NameLength,
SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize, SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize,
SQLSMALLINT *DecimalDigits, SQLSMALLINT *Nullable); SQLSMALLINT *DecimalDigits, SQLSMALLINT *Nullable);
SQLRETURN SQL_API PGAPI_Disconnect(SQLHDBC ConnectionHandle); RETCODE SQL_API PGAPI_Disconnect(HDBC ConnectionHandle);
SQLRETURN SQL_API PGAPI_Error(SQLHENV EnvironmentHandle, RETCODE SQL_API PGAPI_Error(HENV EnvironmentHandle,
SQLHDBC ConnectionHandle, SQLHSTMT StatementHandle, HDBC ConnectionHandle, HSTMT StatementHandle,
SQLCHAR *Sqlstate, SQLINTEGER *NativeError, SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
SQLCHAR *MessageText, SQLSMALLINT BufferLength, SQLCHAR *MessageText, SQLSMALLINT BufferLength,
SQLSMALLINT *TextLength); SQLSMALLINT *TextLength);
SQLRETURN SQL_API PGAPI_ExecDirect(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_ExecDirect(HSTMT StatementHandle,
SQLCHAR *StatementText, SQLINTEGER TextLength); SQLCHAR *StatementText, SQLINTEGER TextLength);
SQLRETURN SQL_API PGAPI_Execute(SQLHSTMT StatementHandle); RETCODE SQL_API PGAPI_Execute(HSTMT StatementHandle);
SQLRETURN SQL_API PGAPI_Fetch(SQLHSTMT StatementHandle); RETCODE SQL_API PGAPI_Fetch(HSTMT StatementHandle);
SQLRETURN SQL_API PGAPI_FreeConnect(SQLHDBC ConnectionHandle); RETCODE SQL_API PGAPI_FreeConnect(HDBC ConnectionHandle);
SQLRETURN SQL_API PGAPI_FreeEnv(SQLHENV EnvironmentHandle); RETCODE SQL_API PGAPI_FreeEnv(HENV EnvironmentHandle);
SQLRETURN SQL_API PGAPI_FreeStmt(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_FreeStmt(HSTMT StatementHandle,
SQLUSMALLINT Option); SQLUSMALLINT Option);
SQLRETURN SQL_API PGAPI_GetConnectOption(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_GetConnectOption(HDBC ConnectionHandle,
SQLUSMALLINT Option, SQLPOINTER Value); SQLUSMALLINT Option, PTR Value);
SQLRETURN SQL_API PGAPI_GetCursorName(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_GetCursorName(HSTMT StatementHandle,
SQLCHAR *CursorName, SQLSMALLINT BufferLength, SQLCHAR *CursorName, SQLSMALLINT BufferLength,
SQLSMALLINT *NameLength); SQLSMALLINT *NameLength);
SQLRETURN SQL_API PGAPI_GetData(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_GetData(HSTMT StatementHandle,
SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
SQLPOINTER TargetValue, SQLINTEGER BufferLength, PTR TargetValue, SQLINTEGER BufferLength,
SQLINTEGER *StrLen_or_Ind); SQLINTEGER *StrLen_or_Ind);
SQLRETURN SQL_API PGAPI_GetFunctions(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_GetFunctions(HDBC ConnectionHandle,
SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported); SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
SQLRETURN SQL_API PGAPI_GetFunctions30(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_GetFunctions30(HDBC ConnectionHandle,
SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported); SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
SQLRETURN SQL_API PGAPI_GetInfo(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_GetInfo(HDBC ConnectionHandle,
SQLUSMALLINT InfoType, SQLPOINTER InfoValue, SQLUSMALLINT InfoType, PTR InfoValue,
SQLSMALLINT BufferLength, SQLSMALLINT *StringLength); SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
SQLRETURN SQL_API PGAPI_GetInfo30(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_GetInfo30(HDBC ConnectionHandle,
SQLUSMALLINT InfoType, SQLPOINTER InfoValue, SQLUSMALLINT InfoType, PTR InfoValue,
SQLSMALLINT BufferLength, SQLSMALLINT *StringLength); SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
SQLRETURN SQL_API PGAPI_GetStmtOption(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_GetStmtOption(HSTMT StatementHandle,
SQLUSMALLINT Option, SQLPOINTER Value); SQLUSMALLINT Option, PTR Value);
SQLRETURN SQL_API PGAPI_GetTypeInfo(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_GetTypeInfo(HSTMT StatementHandle,
SQLSMALLINT DataType); SQLSMALLINT DataType);
SQLRETURN SQL_API PGAPI_NumResultCols(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_NumResultCols(HSTMT StatementHandle,
SQLSMALLINT *ColumnCount); SQLSMALLINT *ColumnCount);
SQLRETURN SQL_API PGAPI_ParamData(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_ParamData(HSTMT StatementHandle,
SQLPOINTER *Value); PTR *Value);
SQLRETURN SQL_API PGAPI_Prepare(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_Prepare(HSTMT StatementHandle,
SQLCHAR *StatementText, SQLINTEGER TextLength); SQLCHAR *StatementText, SQLINTEGER TextLength);
SQLRETURN SQL_API PGAPI_PutData(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_PutData(HSTMT StatementHandle,
SQLPOINTER Data, SQLINTEGER StrLen_or_Ind); PTR Data, SQLINTEGER StrLen_or_Ind);
SQLRETURN SQL_API PGAPI_RowCount(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_RowCount(HSTMT StatementHandle,
SQLINTEGER *RowCount); SQLINTEGER *RowCount);
SQLRETURN SQL_API PGAPI_SetConnectOption(SQLHDBC ConnectionHandle, RETCODE SQL_API PGAPI_SetConnectOption(HDBC ConnectionHandle,
SQLUSMALLINT Option, SQLUINTEGER Value); SQLUSMALLINT Option, SQLUINTEGER Value);
SQLRETURN SQL_API PGAPI_SetCursorName(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_SetCursorName(HSTMT StatementHandle,
SQLCHAR *CursorName, SQLSMALLINT NameLength); SQLCHAR *CursorName, SQLSMALLINT NameLength);
SQLRETURN SQL_API PGAPI_SetParam(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_SetParam(HSTMT StatementHandle,
SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType,
SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision, SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision,
SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, SQLSMALLINT ParameterScale, PTR ParameterValue,
SQLINTEGER *StrLen_or_Ind); SQLINTEGER *StrLen_or_Ind);
SQLRETURN SQL_API PGAPI_SetStmtOption(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_SetStmtOption(HSTMT StatementHandle,
SQLUSMALLINT Option, SQLUINTEGER Value); SQLUSMALLINT Option, SQLUINTEGER Value);
SQLRETURN SQL_API PGAPI_SpecialColumns(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_SpecialColumns(HSTMT StatementHandle,
SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName, SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName,
SQLSMALLINT NameLength1, SQLCHAR *SchemaName, SQLSMALLINT NameLength1, SQLCHAR *SchemaName,
SQLSMALLINT NameLength2, SQLCHAR *TableName, SQLSMALLINT NameLength2, SQLCHAR *TableName,
SQLSMALLINT NameLength3, SQLUSMALLINT Scope, SQLSMALLINT NameLength3, SQLUSMALLINT Scope,
SQLUSMALLINT Nullable); SQLUSMALLINT Nullable);
SQLRETURN SQL_API PGAPI_Statistics(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_Statistics(HSTMT StatementHandle,
SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
SQLCHAR *TableName, SQLSMALLINT NameLength3, SQLCHAR *TableName, SQLSMALLINT NameLength3,
SQLUSMALLINT Unique, SQLUSMALLINT Reserved); SQLUSMALLINT Unique, SQLUSMALLINT Reserved);
SQLRETURN SQL_API PGAPI_Tables(SQLHSTMT StatementHandle, RETCODE SQL_API PGAPI_Tables(HSTMT StatementHandle,
SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
SQLCHAR *TableName, SQLSMALLINT NameLength3, SQLCHAR *TableName, SQLSMALLINT NameLength3,
SQLCHAR *TableType, SQLSMALLINT NameLength4); SQLCHAR *TableType, SQLSMALLINT NameLength4);
SQLRETURN SQL_API PGAPI_Transact(SQLHENV EnvironmentHandle, RETCODE SQL_API PGAPI_Transact(HENV EnvironmentHandle,
SQLHDBC ConnectionHandle, SQLUSMALLINT CompletionType); HDBC ConnectionHandle, SQLUSMALLINT CompletionType);
SQLRETURN SQL_API PGAPI_ColAttributes( RETCODE SQL_API PGAPI_ColAttributes(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT icol, SQLUSMALLINT icol,
SQLUSMALLINT fDescType, SQLUSMALLINT fDescType,
SQLPOINTER rgbDesc, PTR rgbDesc,
SQLSMALLINT cbDescMax, SQLSMALLINT cbDescMax,
SQLSMALLINT *pcbDesc, SQLSMALLINT *pcbDesc,
SQLINTEGER *pfDesc); SQLINTEGER *pfDesc);
SQLRETURN SQL_API PGAPI_ColumnPrivileges( RETCODE SQL_API PGAPI_ColumnPrivileges(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -151,21 +152,21 @@ SQLRETURN SQL_API PGAPI_ColumnPrivileges( ...@@ -151,21 +152,21 @@ SQLRETURN SQL_API PGAPI_ColumnPrivileges(
SQLSMALLINT cbTableName, SQLSMALLINT cbTableName,
SQLCHAR *szColumnName, SQLCHAR *szColumnName,
SQLSMALLINT cbColumnName); SQLSMALLINT cbColumnName);
SQLRETURN SQL_API PGAPI_DescribeParam( RETCODE SQL_API PGAPI_DescribeParam(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT ipar, SQLUSMALLINT ipar,
SQLSMALLINT *pfSqlType, SQLSMALLINT *pfSqlType,
SQLUINTEGER *pcbParamDef, SQLUINTEGER *pcbParamDef,
SQLSMALLINT *pibScale, SQLSMALLINT *pibScale,
SQLSMALLINT *pfNullable); SQLSMALLINT *pfNullable);
SQLRETURN SQL_API PGAPI_ExtendedFetch( RETCODE SQL_API PGAPI_ExtendedFetch(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT fFetchType, SQLUSMALLINT fFetchType,
SQLINTEGER irow, SQLINTEGER irow,
SQLUINTEGER *pcrow, SQLUINTEGER *pcrow,
SQLUSMALLINT *rgfRowStatus); SQLUSMALLINT *rgfRowStatus);
SQLRETURN SQL_API PGAPI_ForeignKeys( RETCODE SQL_API PGAPI_ForeignKeys(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szPkCatalogName, SQLCHAR *szPkCatalogName,
SQLSMALLINT cbPkCatalogName, SQLSMALLINT cbPkCatalogName,
SQLCHAR *szPkSchemaName, SQLCHAR *szPkSchemaName,
...@@ -178,32 +179,32 @@ SQLRETURN SQL_API PGAPI_ForeignKeys( ...@@ -178,32 +179,32 @@ SQLRETURN SQL_API PGAPI_ForeignKeys(
SQLSMALLINT cbFkSchemaName, SQLSMALLINT cbFkSchemaName,
SQLCHAR *szFkTableName, SQLCHAR *szFkTableName,
SQLSMALLINT cbFkTableName); SQLSMALLINT cbFkTableName);
SQLRETURN SQL_API PGAPI_MoreResults( RETCODE SQL_API PGAPI_MoreResults(
SQLHSTMT hstmt); HSTMT hstmt);
SQLRETURN SQL_API PGAPI_NativeSql( RETCODE SQL_API PGAPI_NativeSql(
SQLHDBC hdbc, HDBC hdbc,
SQLCHAR *szSqlStrIn, SQLCHAR *szSqlStrIn,
SQLINTEGER cbSqlStrIn, SQLINTEGER cbSqlStrIn,
SQLCHAR *szSqlStr, SQLCHAR *szSqlStr,
SQLINTEGER cbSqlStrMax, SQLINTEGER cbSqlStrMax,
SQLINTEGER *pcbSqlStr); SQLINTEGER *pcbSqlStr);
SQLRETURN SQL_API PGAPI_NumParams( RETCODE SQL_API PGAPI_NumParams(
SQLHSTMT hstmt, HSTMT hstmt,
SQLSMALLINT *pcpar); SQLSMALLINT *pcpar);
SQLRETURN SQL_API PGAPI_ParamOptions( RETCODE SQL_API PGAPI_ParamOptions(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUINTEGER crow, SQLUINTEGER crow,
SQLUINTEGER *pirow); SQLUINTEGER *pirow);
SQLRETURN SQL_API PGAPI_PrimaryKeys( RETCODE SQL_API PGAPI_PrimaryKeys(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
SQLSMALLINT cbSchemaName, SQLSMALLINT cbSchemaName,
SQLCHAR *szTableName, SQLCHAR *szTableName,
SQLSMALLINT cbTableName); SQLSMALLINT cbTableName);
SQLRETURN SQL_API PGAPI_ProcedureColumns( RETCODE SQL_API PGAPI_ProcedureColumns(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
...@@ -212,37 +213,41 @@ SQLRETURN SQL_API PGAPI_ProcedureColumns( ...@@ -212,37 +213,41 @@ SQLRETURN SQL_API PGAPI_ProcedureColumns(
SQLSMALLINT cbProcName, SQLSMALLINT cbProcName,
SQLCHAR *szColumnName, SQLCHAR *szColumnName,
SQLSMALLINT cbColumnName); SQLSMALLINT cbColumnName);
SQLRETURN SQL_API PGAPI_Procedures( RETCODE SQL_API PGAPI_Procedures(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
SQLSMALLINT cbSchemaName, SQLSMALLINT cbSchemaName,
SQLCHAR *szProcName, SQLCHAR *szProcName,
SQLSMALLINT cbProcName); SQLSMALLINT cbProcName);
SQLRETURN SQL_API PGAPI_SetPos( RETCODE SQL_API PGAPI_SetPos(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT irow, SQLUSMALLINT irow,
SQLUSMALLINT fOption, SQLUSMALLINT fOption,
SQLUSMALLINT fLock); SQLUSMALLINT fLock);
SQLRETURN SQL_API PGAPI_TablePrivileges( RETCODE SQL_API PGAPI_TablePrivileges(
SQLHSTMT hstmt, HSTMT hstmt,
SQLCHAR *szCatalogName, SQLCHAR *szCatalogName,
SQLSMALLINT cbCatalogName, SQLSMALLINT cbCatalogName,
SQLCHAR *szSchemaName, SQLCHAR *szSchemaName,
SQLSMALLINT cbSchemaName, SQLSMALLINT cbSchemaName,
SQLCHAR *szTableName, SQLCHAR *szTableName,
SQLSMALLINT cbTableName); SQLSMALLINT cbTableName);
SQLRETURN SQL_API PGAPI_BindParameter( RETCODE SQL_API PGAPI_BindParameter(
SQLHSTMT hstmt, HSTMT hstmt,
SQLUSMALLINT ipar, SQLUSMALLINT ipar,
SQLSMALLINT fParamType, SQLSMALLINT fParamType,
SQLSMALLINT fCType, SQLSMALLINT fCType,
SQLSMALLINT fSqlType, SQLSMALLINT fSqlType,
SQLUINTEGER cbColDef, SQLUINTEGER cbColDef,
SQLSMALLINT ibScale, SQLSMALLINT ibScale,
SQLPOINTER rgbValue, PTR rgbValue,
SQLINTEGER cbValueMax, SQLINTEGER cbValueMax,
SQLINTEGER *pcbValue); SQLINTEGER *pcbValue);
RETCODE SQL_API PGAPI_SetScrollOptions(
/* #include "pg_converr_check.h" */ HSTMT hstmt,
UWORD fConcurrency,
SDWORD crowKeyset,
UWORD crowRowset);
#endif /* define_PG_API_FUNC_H__ */
...@@ -697,6 +697,9 @@ pgtype_length(StatementClass *stmt, Int4 type, int col, int handle_unknown_size_ ...@@ -697,6 +697,9 @@ pgtype_length(StatementClass *stmt, Int4 type, int col, int handle_unknown_size_
return 16; return 16;
/* Character types (and NUMERIC) use the default precision */ /* Character types (and NUMERIC) use the default precision */
case PG_TYPE_VARCHAR:
case PG_TYPE_BPCHAR:
return 2 * pgtype_precision(stmt, type, col, handle_unknown_size_as);
default: default:
return pgtype_precision(stmt, type, col, handle_unknown_size_as); return pgtype_precision(stmt, type, col, handle_unknown_size_as);
} }
......
...@@ -714,13 +714,15 @@ SC_fetch(StatementClass *self) ...@@ -714,13 +714,15 @@ SC_fetch(StatementClass *self)
static char *func = "SC_fetch"; static char *func = "SC_fetch";
QResultClass *res = self->result; QResultClass *res = self->result;
int retval, int retval,
result, updret; result;
#ifdef DRIVER_CURSOR_IMPLEMENT
int updret;
#endif /* DRIVER_CURSOR_IMPLEMENT */
Int2 num_cols, Int2 num_cols,
lf; lf;
Oid type; Oid type;
char *value; char *value;
ColumnInfoClass *ci; ColumnInfoClass *ci;
extern WORD addrow;
/* TupleField *tupleField; */ /* TupleField *tupleField; */
self->last_fetch_count = 0; self->last_fetch_count = 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册