/opt/imh-python/lib/python3.9/site-packages/sqlalchemy/dialects/mysql
NameSizeModeActions
__pycache__/-0755rm
base.py1072820644editdlrm
cymysql.py22440644editdlrm
dml.py47640644editdlrm
enumerated.py113070644editdlrm
gaerdbms.py33750644editdlrm
json.py20450644editdlrm
mysqlconnector.py78890644editdlrm
mysqldb.py85040644editdlrm
oursql.py80860644editdlrm
provision.py12690644editdlrm
pymysql.py27200644editdlrm
pyodbc.py34700644editdlrm
reflection.py182750644editdlrm
types.py245890644editdlrm
zxjdbc.py39700644editdlrm
__init__.py20560644editdlrm
Edit: /opt/imh-python/lib/python3.9/site-packages/sqlalchemy/dialects/mysql/json.py (2045B)
# mysql/json.py # Copyright (C) 2005-2021 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php from __future__ import absolute_import from ... import types as sqltypes class JSON(sqltypes.JSON): """MySQL JSON type. MySQL supports JSON as of version 5.7. MariaDB supports JSON (as an alias for LONGTEXT) as of version 10.2. The :class:`.mysql.JSON` type supports persistence of JSON values as well as the core index operations provided by :class:`_types.JSON` datatype, by adapting the operations to render the ``JSON_EXTRACT`` function at the database level. .. versionadded:: 1.1 """ pass class _FormatTypeMixin(object): def _format_value(self, value): raise NotImplementedError() def bind_processor(self, dialect): super_proc = self.string_bind_processor(dialect) def process(value): value = self._format_value(value) if super_proc: value = super_proc(value) return value return process def literal_processor(self, dialect): super_proc = self.string_literal_processor(dialect) def process(value): value = self._format_value(value) if super_proc: value = super_proc(value) return value return process class JSONIndexType(_FormatTypeMixin, sqltypes.JSON.JSONIndexType): def _format_value(self, value): if isinstance(value, int): value = "$[%s]" % value else: value = '$."%s"' % value return value class JSONPathType(_FormatTypeMixin, sqltypes.JSON.JSONPathType): def _format_value(self, value): return "$%s" % ( "".join( [ "[%s]" % elem if isinstance(elem, int) else '."%s"' % elem for elem in value ] ) )