コード例 #1
0
ファイル: database.py プロジェクト: jvictor0/TiaraBoom
    def __init__(self, host, user, database):

        sys_vars = dict(
                character_set_server =  "utf8mb4",
                collation_server =      "utf8mb4_unicode_ci",)

        sys_vars["sql_mode"] = "STRICT_ALL_TABLES"
        args = dict(db=database, local_infile=1)

        from MySQLdb.converters import conversions

        args["user"] = user

        self.socket = None
        pair = host.split(":")
        if len(pair) == 2:
            args["host"] = pair[0]
            args["port"] = int(pair[1])
        else:
            args["host"] = host
            args["port"] = 3306
        self.port = args["port"]

        args["connect_timeout"] = 10
        args["init_command"] = 'set names "utf8mb4" collate "utf8mb4_bin"' + ''.join([', @@%s = "%s"' % t for t in sys_vars.items()])

        self._db = None
        self._db_args = args
        self.encoders = dict([ (k, v) for k, v in conversions.items()
                               if type(k) is not int ])
        self._last_use_time = time.time()
        self.reconnect()
        self._db.set_character_set("utf8")
コード例 #2
0
    def __init__(self, host, port=3306, database="information_schema", user=None, password=None,
                 max_idle_time=7 * 3600):
        self.database = database
        self.max_idle_time = max_idle_time

        self.encoders = dict([ (k, v) for k, v in conversions.items() if not isinstance(k, int) ])

        sys_vars = {
            "character_set_server":  "utf8",
            "collation_server":      "utf8_general_ci"
        }
        args = {
            "db": database,
            "conv": conversions
        }

        if user is not None:
            args["user"] = user
        if password is not None:
            args["passwd"] = password

        args["host"] = host
        args["port"] = int(port)
        args["init_command"] = 'set names "utf8" collate "utf8_bin"' + ''.join([', @@%s = "%s"' % t for t in sys_vars.items()])

        self._db = None
        self._db_args = args

        self._last_use_time = time.time()
        self.reconnect()
        self._db.set_character_set("utf8")
コード例 #3
0
    def __init__(self,
                 host,
                 database,
                 user=None,
                 password=None,
                 max_idle_time=7 * 3600,
                 convert=False,
                 isMySQL=False):
        self.host = host
        self.database = database
        self.max_idle_time = max_idle_time
        self.print_queries = False
        self.print_results = False
        self.print_function = None

        sys_vars = dict(
            character_set_server="utf8",
            collation_server="utf8_general_ci",
        )
        args = dict(db=database)

        from MySQLdb.converters import conversions

        if convert:
            args["conv"] = conversions
        if user is not None:
            args["user"] = user
        if password is not None:
            args["passwd"] = password

        # We accept a path to a MySQL socket file or a host(:port) string
        if host is None:
            pass
        elif "/" in host:
            args["unix_socket"] = host
        else:
            self.socket = None
            pair = host.split(":")
            if len(pair) == 2:
                args["host"] = pair[0]
                args["port"] = int(pair[1])
            else:
                args["host"] = host
                args["port"] = 3306
        if isMySQL:
            # memsql does not recognize this variable
            sys_vars["storage_engine"] = "InnoDB"

        args["init_command"] = 'set names "utf8" collate "utf8_bin"' + ''.join(
            [', @@%s = "%s"' % t for t in sys_vars.items()])

        self._db = None
        self._db_args = args
        self.encoders = dict([(k, v) for k, v in conversions.items()
                              if type(k) is not int])
        self._last_use_time = time.time()
        self.reconnect()
        self._db.set_character_set("utf8")
コード例 #4
0
ファイル: memsql_database.py プロジェクト: memsql/ditto
    def __init__(self, host, database, user=None, password=None,
                 max_idle_time=7*3600, convert=False, isMySQL = False):
        self.host = host
        self.database = database
        self.max_idle_time = max_idle_time
        self.print_queries = False
        self.print_results = False
        self.print_function = None

        sys_vars = dict(
                character_set_server =  "utf8",
                collation_server =      "utf8_general_ci",
                )
        args = dict(db=database)

        from MySQLdb.converters import conversions
        
        if convert:
            args["conv"] = conversions
        if user is not None:
            args["user"] = user
        if password is not None:
            args["passwd"] = password

        # We accept a path to a MySQL socket file or a host(:port) string
        if host is None:
            pass
        elif "/" in host:
            args["unix_socket"] = host
        else:
            self.socket = None
            pair = host.split(":")
            if len(pair) == 2:
                args["host"] = pair[0]
                args["port"] = int(pair[1])
            else:
                args["host"] = host
                args["port"] = 3306
        if isMySQL:
            # memsql does not recognize this variable
            sys_vars["storage_engine"] = "InnoDB"

        args["init_command"] = 'set names "utf8" collate "utf8_bin"' + ''.join([', @@%s = "%s"' % t for t in sys_vars.items()])

        self._db = None
        self._db_args = args
        self.encoders = dict([ (k, v) for k, v in conversions.items()
                               if type(k) is not int ])
        self._last_use_time = time.time()
        self.reconnect()
        self._db.set_character_set("utf8")
コード例 #5
0
ファイル: database.py プロジェクト: jvictor0/ExtSQL
    def __init__(self, host, database, user='******', password=''):

        self.print_queries = False

        sys_vars = dict(
            character_set_server="utf8",
            collation_server="utf8_unicode_ci",
        )

        sys_vars["sql_mode"] = "STRICT_ALL_TABLES"
        args = dict(db=database, local_infile=1)

        from MySQLdb.converters import conversions

        args["user"] = user
        if password is not None:
            args["passwd"] = password
        if "/" in host:
            args['unix_socket'] = host
        else:
            pair = host.split(":")
            if len(pair) == 2:
                args["host"] = pair[0]
                args["port"] = int(pair[1])
            else:
                args["host"] = host
                args["port"] = 3306
            self.port = args["port"]

        args["connect_timeout"] = 100
        args["init_command"] = 'set names "utf8" collate "utf8_bin"' + ''.join(
            [', @@%s = "%s"' % t for t in sys_vars.items()])

        self._db = None
        self._db_args = args
        self.encoders = dict([(k, v) for k, v in conversions.items()
                              if type(k) is not int])
        self._last_use_time = time.time()
        self.reconnect()
        self._db.set_character_set("utf8")