diff options
Diffstat (limited to 'django/db/backends/mysql/client.py')
-rw-r--r-- | django/db/backends/mysql/client.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/django/db/backends/mysql/client.py b/django/db/backends/mysql/client.py index 129f86a951..3743225957 100644 --- a/django/db/backends/mysql/client.py +++ b/django/db/backends/mysql/client.py @@ -1,12 +1,14 @@ -from django.db.backends import BaseDatabaseClient import os +import sys + +from django.db.backends import BaseDatabaseClient class DatabaseClient(BaseDatabaseClient): executable_name = 'mysql' def runshell(self): settings_dict = self.connection.settings_dict - args = [''] + args = [self.executable_name] db = settings_dict['DATABASE_OPTIONS'].get('db', settings_dict['DATABASE_NAME']) user = settings_dict['DATABASE_OPTIONS'].get('user', settings_dict['DATABASE_USER']) passwd = settings_dict['DATABASE_OPTIONS'].get('passwd', settings_dict['DATABASE_PASSWORD']) @@ -14,7 +16,7 @@ class DatabaseClient(BaseDatabaseClient): port = settings_dict['DATABASE_OPTIONS'].get('port', settings_dict['DATABASE_PORT']) defaults_file = settings_dict['DATABASE_OPTIONS'].get('read_default_file') # Seems to be no good way to set sql_mode with CLI. - + if defaults_file: args += ["--defaults-file=%s" % defaults_file] if user: @@ -28,4 +30,8 @@ class DatabaseClient(BaseDatabaseClient): if db: args += [db] - os.execvp(self.executable_name, args) + if os.name == 'nt': + sys.exit(os.system(" ".join(args))) + else: + os.execvp(self.executable_name, args) + |