From: stephan b. <sg...@us...> - 2005-01-01 19:44:52
|
Update of /cvsroot/pclasses/pclasses/src/plugins/sql/mysql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10962 Modified Files: psql_mysql.cpp Log Message: added a workaround to read unknown db data types into a char*. This allows, e.g., TEXT and BLOB fields to be read. Index: psql_mysql.cpp =================================================================== RCS file: /cvsroot/pclasses/pclasses/src/plugins/sql/mysql/psql_mysql.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- psql_mysql.cpp 29 Nov 2004 03:34:56 -0000 1.15 +++ psql_mysql.cpp 1 Jan 2005 19:44:42 -0000 1.16 @@ -22,6 +22,7 @@ #include "pclasses/psqlplugin.h" #include <map> +#include <string> #include <sstream> // Some workarounds for includig MySQL -- duplicated defines and the @@ -412,25 +413,34 @@ } #endif - case FIELD_TYPE_STRING: - case FIELD_TYPE_VAR_STRING: + default: +// case FIELD_TYPE_MEDIUM_BLOB: +// case FIELD_TYPE_LONG_BLOB: +// case FIELD_TYPE_BLOB: +// case FIELD_TYPE_VAR_STRING: +// case FIELD_TYPE_STRING: +// case FIELD_TYPE_TIMESTAMP: +// case FIELD_TYPE_DATE: +// case FIELD_TYPE_TIME: +// case FIELD_TYPE_DATETIME: +// case FIELD_TYPE_YEAR: { if(field_val) - val = new SQLString(field_val); + { + std::string buff( field_val, field_val + field->length ); + val = new SQLString(buff.c_str()); + } else + { val = new SQLString(); + } } break; - case FIELD_TYPE_TIMESTAMP: - case FIELD_TYPE_DATE: - case FIELD_TYPE_TIME: - case FIELD_TYPE_DATETIME: - case FIELD_TYPE_YEAR: - //@todo fetch date/time value - { - } - break; +// //@todo fetch date/time value +// { +// } +// break; } delete[] field_val; |