22 #include "client/client_priv.h"
23 #include "client/server_detect.h"
27 ServerDetect::ServerDetect(drizzle_con_st *connection) :
28 type(SERVER_UNKNOWN_FOUND),
31 version= drizzle_con_server_version(connection);
33 const char *safe_query =
"SHOW VARIABLES LIKE 'vc_release_id'";
34 drizzle_result_st* result= NULL;
35 drizzle_return_t ret_ptr;
36 result = drizzle_query_str(connection, NULL, safe_query, &ret_ptr);
38 if(ret_ptr == DRIZZLE_RETURN_OK)
40 ret_ptr = drizzle_result_buffer(result);
41 if(drizzle_result_row_count(result) > 0)
43 type = SERVER_DRIZZLE_FOUND;
47 type = SERVER_MYSQL_FOUND;
52 std::cerr <<
"Server version not detectable. Assuming MySQL." << std::endl;
53 type= SERVER_MYSQL_FOUND;
56 drizzle_result_free(result);