summaryrefslogtreecommitdiff
path: root/client
diff options
context:
space:
mode:
authorpeter@mysql.com <>2002-11-05 21:31:03 +0300
committerpeter@mysql.com <>2002-11-05 21:31:03 +0300
commit8bcace70434836acfe66a6ad5ff93c7a7afdd1eb (patch)
treef8daa8b127bb4bf13e3f4de2b7a731345058335c /client
parentecedc7ac35009143b202f813e4c8df2e41ab558a (diff)
parent529146269dea329a8a3d89783cc3c612fa86c4d6 (diff)
downloadmariadb-git-8bcace70434836acfe66a6ad5ff93c7a7afdd1eb.tar.gz
Merge mysql.com:/home/pz/mysql/mysql-4.1-root
into mysql.com:/home/pz/mysql/mysql-4.1
Diffstat (limited to 'client')
-rw-r--r--client/mysqldump.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/client/mysqldump.c b/client/mysqldump.c
index 21358272109..04232474944 100644
--- a/client/mysqldump.c
+++ b/client/mysqldump.c
@@ -1247,8 +1247,28 @@ static int init_dumping(char *database)
{
fprintf(md_result_file,"\n--\n-- Current Database: %s\n--\n", database);
if (!opt_create_db)
- fprintf(md_result_file,"\nCREATE DATABASE /*!32312 IF NOT EXISTS*/ %s;\n",
+ {
+ char qbuf[128];
+ MYSQL_ROW row;
+ MYSQL_RES *dbinfo;
+
+ sprintf(qbuf,"SHOW CREATE DATABASE %s",database);
+
+ if (mysql_query(sock, qbuf) || !(dbinfo = mysql_store_result(sock)))
+ {
+ /* Old server version, dump generic CREATE DATABASE */
+ fprintf(md_result_file,"\nCREATE DATABASE /*!32312 IF NOT EXISTS*/ %s;\n",
database);
+ }
+ else
+ {
+ row = mysql_fetch_row(dbinfo);
+ if (row[1])
+ {
+ fprintf(md_result_file,"\n%s;\n",row[1]);
+ }
+ }
+ }
fprintf(md_result_file,"\nUSE %s;\n", database);
}
}