--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/web/lib/django/db/backends/mysql/client.py Wed Jun 02 18:57:35 2010 +0200
@@ -0,0 +1,37 @@
+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 = [self.executable_name]
+ db = settings_dict['OPTIONS'].get('db', settings_dict['NAME'])
+ user = settings_dict['OPTIONS'].get('user', settings_dict['USER'])
+ passwd = settings_dict['OPTIONS'].get('passwd', settings_dict['PASSWORD'])
+ host = settings_dict['OPTIONS'].get('host', settings_dict['HOST'])
+ port = settings_dict['OPTIONS'].get('port', settings_dict['PORT'])
+ defaults_file = settings_dict['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:
+ args += ["--user=%s" % user]
+ if passwd:
+ args += ["--password=%s" % passwd]
+ if host:
+ args += ["--host=%s" % host]
+ if port:
+ args += ["--port=%s" % port]
+ if db:
+ args += [db]
+
+ if os.name == 'nt':
+ sys.exit(os.system(" ".join(args)))
+ else:
+ os.execvp(self.executable_name, args)
+