diff options
author | unknown <anozdrin/alik@ibm.> | 2007-07-27 21:30:43 +0400 |
---|---|---|
committer | unknown <anozdrin/alik@ibm.> | 2007-07-27 21:30:43 +0400 |
commit | 4596ef83e7705c8d8ff408eaa9fb930a43775171 (patch) | |
tree | 77417998cc4a176a743cb99b4445355f370bc033 /client | |
parent | 818b0b84e0268e38a563dcf2c6ce0c3c2cf2f7f7 (diff) | |
parent | 2612fc43b53a69320ba41011aa632ec35b734211 (diff) | |
download | mariadb-git-4596ef83e7705c8d8ff408eaa9fb930a43775171.tar.gz |
Merge ibm.:/home/alik/Documents/MySQL/devel/5.0-rt
into ibm.:/home/alik/Documents/MySQL/devel/5.1-rt-merge
mysql-test/r/mysqldump-max.result:
Auto merged
mysql-test/r/openssl_1.result:
Auto merged
mysql-test/t/show_check.test:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
client/mysqldump.c:
Manual merge.
mysql-test/r/mysqldump.result:
Manual merge + use local.
Diffstat (limited to 'client')
-rw-r--r-- | client/mysqldump.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/client/mysqldump.c b/client/mysqldump.c index 6f0e30b8f35..82bf9fc555a 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -2116,7 +2116,10 @@ static uint get_table_structure(char *table, char *db, char *table_type, MYSQL_FIELD *field; my_snprintf(buff, sizeof(buff), "show create table %s", result_table); - if (mysql_query_with_error_report(mysql, 0, buff)) + + if (switch_character_set_results(mysql, "binary") || + mysql_query_with_error_report(mysql, &result, buff) || + switch_character_set_results(mysql, default_charset)) DBUG_RETURN(0); if (path) @@ -2147,7 +2150,6 @@ static uint get_table_structure(char *table, char *db, char *table_type, check_io(sql_file); } - result= mysql_store_result(mysql); field= mysql_fetch_field_direct(result, 0); if (strcmp(field->name, "View") == 0) { @@ -2248,7 +2250,14 @@ static uint get_table_structure(char *table, char *db, char *table_type, } row= mysql_fetch_row(result); - fprintf(sql_file, "%s;\n", row[1]); + + fprintf(sql_file, + "SET @saved_cs_client = @@character_set_client;\n" + "SET character_set_client = utf8;\n" + "%s;\n" + "SET character_set_client = @saved_cs_client;\n", + row[1]); + check_io(sql_file); mysql_free_result(result); } |