/* {{{ MySQL_Connection::getClientOption() -I- */ void MySQL_Connection::getClientOption(const sql::SQLString & optionName, void * optionValue) { CPP_ENTER_WL(intern->logger, "MySQL_Connection::getClientOption"); if (!optionName.compare("metadataUseInfoSchema")) { *(static_cast<bool *>(optionValue)) = intern->metadata_use_info_schema; } else if (!optionName.compare("defaultStatementResultType")) { *(static_cast<int *>(optionValue)) = intern->defaultStatementResultType; } else if (!optionName.compare("defaultPreparedStatementResultType")) { *(static_cast<int *>(optionValue)) = intern->defaultPreparedStatementResultType; } else if (!optionName.compare("characterSetResults")) { *(static_cast<sql::SQLString **>(optionValue)) = new sql::SQLString(getSessionVariable("characterSetResults")); } }
/* {{{ MySQL_Connection::getClientOption() -I- */ sql::SQLString MySQL_Connection::getClientOption(const sql::SQLString & optionName) { CPP_ENTER_WL(intern->logger, "MySQL_Connection::getClientOption"); if (!optionName.compare("characterSetResults")) { return sql::SQLString(getSessionVariable("character_set_results")); } else if (!optionName.compare("characterSetDirectory")) { MY_CHARSET_INFO cs; proxy->get_character_set_info(&cs); return cs.dir ? sql::SQLString(cs.dir) : ""; } else if ( proxy->get_server_version() >= 50703 ) { const char* optionValue= NULL; if (GET_CONN_OPTION(optionName, &optionValue, stringOptions)) { return optionValue ? sql::SQLString(optionValue) : ""; } } return ""; }