def cursor(self):
     from django.conf import settings
     from warnings import filterwarnings
     if not self._valid_connection():
         kwargs = {
             'conv': django_conversions,
             'charset': 'utf8',
             'use_unicode': False,
         }
         if settings.DATABASE_USER:
             kwargs['user'] = settings.DATABASE_USER
         if settings.DATABASE_NAME:
             kwargs['db'] = settings.DATABASE_NAME
         if settings.DATABASE_PASSWORD:
             kwargs['passwd'] = settings.DATABASE_PASSWORD
         if settings.DATABASE_HOST.startswith('/'):
             kwargs['unix_socket'] = settings.DATABASE_HOST
         elif settings.DATABASE_HOST:
             kwargs['host'] = settings.DATABASE_HOST
         if settings.DATABASE_PORT:
             kwargs['port'] = int(settings.DATABASE_PORT)
         kwargs.update(self.options)
         self.connection = Database.connect(**kwargs)
         cursor = self.connection.cursor()
     else:
         cursor = self.connection.cursor()
     if settings.DEBUG:
         filterwarnings("error", category=Database.Warning)
         return util.CursorDebugWrapper(cursor, self)
     return cursor
Beispiel #2
0
 def cursor(self):
     from django.conf import settings
     if not self._valid_connection():
         kwargs = {
             'user': settings.DATABASE_USER,
             'db': settings.DATABASE_NAME,
             'passwd': settings.DATABASE_PASSWORD,
             'conv': django_conversions,
         }
         if settings.DATABASE_HOST.startswith('/'):
             kwargs['unix_socket'] = settings.DATABASE_HOST
         else:
             kwargs['host'] = settings.DATABASE_HOST
         if settings.DATABASE_PORT:
             kwargs['port'] = int(settings.DATABASE_PORT)
         kwargs.update(self.options)
         self.connection = Database.connect(**kwargs)
         cursor = self.connection.cursor()
         if self.connection.get_server_info() >= '4.1':
             cursor.execute("SET NAMES 'utf8'")
     else:
         cursor = self.connection.cursor()
     if settings.DEBUG:
         return util.CursorDebugWrapper(MysqlDebugWrapper(cursor), self)
     return cursor
 def cursor(self):
     from django.conf import settings
     set_tz = False
     if self.connection is None:
         set_tz = True
         if settings.DATABASE_NAME == '':
             from django.core.exceptions import ImproperlyConfigured
             raise ImproperlyConfigured, "You need to specify DATABASE_NAME in your Django settings file."
         conn_string = "dbname=%s" % settings.DATABASE_NAME
         if settings.DATABASE_USER:
             conn_string = "user=%s %s" % (settings.DATABASE_USER,
                                           conn_string)
         if settings.DATABASE_PASSWORD:
             conn_string += " password='******'" % settings.DATABASE_PASSWORD
         if settings.DATABASE_HOST:
             conn_string += " host=%s" % settings.DATABASE_HOST
         if settings.DATABASE_PORT:
             conn_string += " port=%s" % settings.DATABASE_PORT
         self.connection = Database.connect(conn_string, **self.options)
         self.connection.set_isolation_level(
             1)  # make transactions transparent to all cursors
     cursor = self.connection.cursor()
     cursor.tzinfo_factory = None
     if set_tz:
         cursor.execute("SET TIME ZONE %s", [settings.TIME_ZONE])
     global postgres_version
     if not postgres_version:
         cursor.execute("SELECT version()")
         postgres_version = [
             int(val) for val in cursor.fetchone()[0].split()[1].split('.')
         ]
     if settings.DEBUG:
         return util.CursorDebugWrapper(cursor, self)
     return cursor
Beispiel #4
0
 def cursor(self):
     from django.conf import settings
     if self.connection is None:
         if settings.DATABASE_NAME == '' or settings.DATABASE_USER == '':
             from django.core.exceptions import ImproperlyConfigured
             raise ImproperlyConfigured, "You need to specify both DATABASE_NAME and DATABASE_USER in your Django settings file."
         if not settings.DATABASE_HOST:
             settings.DATABASE_HOST = "127.0.0.1"
         # TODO: Handle DATABASE_PORT.
         conn_string = "PROVIDER=SQLOLEDB;DATA SOURCE=%s;UID=%s;PWD=%s;DATABASE=%s" % (
             settings.DATABASE_HOST, settings.DATABASE_USER,
             settings.DATABASE_PASSWORD, settings.DATABASE_NAME)
         self.connection = Database.connect(conn_string)
     cursor = self.connection.cursor()
     if settings.DEBUG:
         return util.CursorDebugWrapper(cursor, self)
     return cursor
 def cursor(self):
     from django.conf import settings
     if self.connection is None:
         kwargs = {
             'database': settings.DATABASE_NAME,
             'detect_types':
             Database.PARSE_DECLTYPES | Database.PARSE_COLNAMES,
         }
         kwargs.update(self.options)
         self.connection = Database.connect(**kwargs)
         # Register extract and date_trunc functions.
         self.connection.create_function("django_extract", 2,
                                         _sqlite_extract)
         self.connection.create_function("django_date_trunc", 2,
                                         _sqlite_date_trunc)
     cursor = self.connection.cursor(factory=SQLiteCursorWrapper)
     cursor.row_factory = utf8rowFactory
     if settings.DEBUG:
         return util.CursorDebugWrapper(cursor, self)
     else:
         return cursor
Beispiel #6
0
 def make_debug_cursor(self, cursor):
     """
     Creates a cursor that logs all queries in self.queries.
     """
     return util.CursorDebugWrapper(cursor, self)
Beispiel #7
0
 def make_debug_cursor(self, cursor):
     return util.CursorDebugWrapper(cursor, self)
Beispiel #8
0
 def make_debug_cursor(self, cursor):
     from django.db.backends import util
     return util.CursorDebugWrapper(cursor, self)