in src/odbc/rsodbc/rstrace.c [2474:2573]
void RsTrace::traceData(const char *pArgName, SQLSMALLINT hType, SQLPOINTER pValue, SQLLEN cbLen)
{
switch(hType)
{
case SQL_C_CHAR:
{
traceStrValWithLargeLen(pArgName,(char *)pValue,(SQLINTEGER)cbLen);
break;
}
case SQL_C_WCHAR:
{
traceWStrValWithLargeLen(pArgName,(SQLWCHAR *)pValue,(SQLINTEGER)cbLen);
break;
}
case SQL_C_SHORT:
case SQL_C_SSHORT:
case SQL_C_USHORT:
{
traceShortPtrVal(pArgName, (short *)pValue);
break;
}
case SQL_C_LONG:
case SQL_C_SLONG:
case SQL_C_ULONG:
{
traceIntPtrVal(pArgName, (int *)pValue);
break;
}
case SQL_C_SBIGINT:
case SQL_C_UBIGINT:
{
traceLongLongPtrVal(pArgName, (long long *)pValue);
break;
}
case SQL_C_FLOAT:
{
traceFloatPtrVal(pArgName, (float *)pValue);
break;
}
case SQL_C_DOUBLE:
{
traceDoublePtrVal(pArgName, (double *)pValue);
break;
}
case SQL_C_BIT:
case SQL_C_TINYINT:
case SQL_C_STINYINT:
case SQL_C_UTINYINT:
{
traceBitPtrVal(pArgName, (char *)pValue);
break;
}
case SQL_C_TYPE_DATE:
case SQL_C_DATE:
{
traceDatePtrVal(pArgName, (DATE_STRUCT *)pValue);
break;
}
case SQL_C_TYPE_TIMESTAMP:
case SQL_C_TIMESTAMP:
{
traceTimeStampPtrVal(pArgName, (TIMESTAMP_STRUCT *)pValue);
break;
}
case SQL_C_TYPE_TIME:
case SQL_C_TIME:
{
traceTimePtrVal(pArgName, (TIME_STRUCT *)pValue);
break;
}
case SQL_C_NUMERIC:
{
traceNumericPtrVal(pArgName, (SQL_NUMERIC_STRUCT *)pValue);
break;
}
case SQL_C_DEFAULT:
{
traceArg("\t%s=SQL_C_DEFAULT without SQL Type",pArgName);
break;
}
default:
{
traceArg("\t%s=Unknown CType data",pArgName);
break;
}
} // Switch
}