Python sqlalchemy.engine.default.DefaultDialect() Examples
The following are 30
code examples of sqlalchemy.engine.default.DefaultDialect().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
sqlalchemy.engine.default
, or try the search function
.
Example #1
Source File: test_types.py From sqlalchemy with MIT License | 6 votes |
def test_bind_process(self): eq_( self.variant._cached_bind_processor(dialects.mysql.dialect())( "foo" ), "fooUONE", ) eq_( self.variant._cached_bind_processor(default.DefaultDialect())( "foo" ), "fooUONE", ) eq_( self.variant._cached_bind_processor(dialects.postgresql.dialect())( "foo" ), "fooUTWO", )
Example #2
Source File: assertions.py From alembic with MIT License | 6 votes |
def _get_dialect(name): if name is None or name == "default": return default.DefaultDialect() else: try: dialect_mod = _dialect_mods[name] except KeyError: dialect_mod = getattr( __import__("sqlalchemy.dialects.%s" % name).dialects, name ) _dialect_mods[name] = dialect_mod d = dialect_mod.dialect() if name == "postgresql": d.implicit_returning = True elif name == "mssql": d.legacy_schema_aliasing = False return d
Example #3
Source File: test_labels.py From sqlalchemy with MIT License | 6 votes |
def _test_colnames_longer_than_labels(self, t1): dialect = default.DefaultDialect(label_length=4) a1 = t1.alias(name="asdf") # 'abcde' is longer than 4, but rendered as itself # needs to have all characters s = select([a1]) self.assert_compile( select([a1]), "SELECT asdf.abcde FROM a AS asdf", dialect=dialect ) compiled = s.compile(dialect=dialect) assert set(compiled._create_result_map()["abcde"][1]).issuperset( ["abcde", a1.c.abcde, "abcde"] ) # column still there, but short label s = select([a1]).apply_labels() self.assert_compile( s, "SELECT asdf.abcde AS _1 FROM a AS asdf", dialect=dialect ) compiled = s.compile(dialect=dialect) assert set(compiled._create_result_map()["_1"][1]).issuperset( ["asdf_abcde", a1.c.abcde, "_1"] )
Example #4
Source File: test_compiler.py From sqlalchemy with MIT License | 6 votes |
def test_expanding_parameter(self): self.assert_compile( tuple_(table1.c.myid, table1.c.name).in_( bindparam("foo", expanding=True) ), "(mytable.myid, mytable.name) IN ([POSTCOMPILE_foo])", ) dialect = default.DefaultDialect() dialect.tuple_in_values = True self.assert_compile( tuple_(table1.c.myid, table1.c.name).in_( bindparam("foo", expanding=True) ), "(mytable.myid, mytable.name) IN ([POSTCOMPILE_foo])", dialect=dialect, ) self.assert_compile( table1.c.myid.in_(bindparam("foo", expanding=True)), "mytable.myid IN ([POSTCOMPILE_foo])", )
Example #5
Source File: test_deprecations.py From sqlalchemy with MIT License | 6 votes |
def test_ignoring_unicode_error(self): """checks String(unicode_error='ignore') is passed to underlying codec.""" unicodedata = self.data with testing.expect_deprecated( "The String.convert_unicode parameter is deprecated and " "will be removed in a future release.", "The String.unicode_errors parameter is deprecated and " "will be removed in a future release.", ): type_ = String( 248, convert_unicode="force", unicode_error="ignore" ) dialect = default.DefaultDialect(encoding="ascii") proc = type_.result_processor(dialect, 10) utfdata = unicodedata.encode("utf8") eq_(proc(utfdata), unicodedata.encode("ascii", "ignore").decode())
Example #6
Source File: test_insert.py From sqlalchemy with MIT License | 6 votes |
def test_positional(self): table1 = self.tables.mytable values = [ {"myid": 1, "name": "a", "description": "b"}, {"myid": 2, "name": "c", "description": "d"}, {"myid": 3, "name": "e", "description": "f"}, ] checkpositional = (1, "a", "b", 2, "c", "d", 3, "e", "f") dialect = default.DefaultDialect() dialect.supports_multivalues_insert = True dialect.paramstyle = "format" dialect.positional = True self.assert_compile( table1.insert().values(values), "INSERT INTO mytable (myid, name, description) VALUES " "(%s, %s, %s), (%s, %s, %s), (%s, %s, %s)", checkpositional=checkpositional, dialect=dialect, )
Example #7
Source File: test_compiler.py From sqlalchemy with MIT License | 6 votes |
def test_true_short_circuit(self): t = table("t", column("x")) self.assert_compile( select([t]).where(true()), "SELECT t.x FROM t WHERE 1 = 1", dialect=default.DefaultDialect(supports_native_boolean=False), ) self.assert_compile( select([t]).where(true()), "SELECT t.x FROM t WHERE true", dialect=default.DefaultDialect(supports_native_boolean=True), ) self.assert_compile( select([t]), "SELECT t.x FROM t", dialect=default.DefaultDialect(supports_native_boolean=True), )
Example #8
Source File: test_types.py From sqlalchemy with MIT License | 6 votes |
def test_kwarg_legacy_typecompiler(self): from sqlalchemy.sql import compiler class SomeTypeCompiler(compiler.GenericTypeCompiler): # transparently decorated w/ kw decorator def visit_VARCHAR(self, type_): return "MYVARCHAR" # not affected def visit_INTEGER(self, type_, **kw): return "MYINTEGER %s" % kw["type_expression"].name dialect = default.DefaultDialect() dialect.type_compiler = SomeTypeCompiler(dialect) self.assert_compile( ddl.CreateColumn(Column("bar", VARCHAR(50))), "bar MYVARCHAR", dialect=dialect, ) self.assert_compile( ddl.CreateColumn(Column("bar", INTEGER)), "bar MYINTEGER bar", dialect=dialect, )
Example #9
Source File: test_compiler.py From sqlalchemy with MIT License | 6 votes |
def test_order_by_labels_disabled(self): lab1 = (table1.c.myid + 12).label("foo") lab2 = func.somefunc(table1.c.name).label("bar") dialect = default.DefaultDialect() dialect.supports_simple_order_by_label = False self.assert_compile( select([lab1, lab2]).order_by(lab1, desc(lab2)), "SELECT mytable.myid + :myid_1 AS foo, " "somefunc(mytable.name) AS bar FROM mytable " "ORDER BY mytable.myid + :myid_1, somefunc(mytable.name) DESC", dialect=dialect, ) self.assert_compile( select([lab1, lab2]).order_by(func.hoho(lab1), desc(lab2)), "SELECT mytable.myid + :myid_1 AS foo, " "somefunc(mytable.name) AS bar FROM mytable " "ORDER BY hoho(mytable.myid + :myid_1), " "somefunc(mytable.name) DESC", dialect=dialect, )
Example #10
Source File: test_deprecations.py From sqlalchemy with MIT License | 6 votes |
def test_unicode_warnings_dialectlevel(self): unicodedata = self.data with testing.expect_deprecated( "The create_engine.convert_unicode parameter and " "corresponding dialect-level" ): dialect = default.DefaultDialect(convert_unicode=True) dialect.supports_unicode_binds = False s = String() uni = s.dialect_impl(dialect).bind_processor(dialect) uni(util.b("x")) assert isinstance(uni(unicodedata), util.binary_type) eq_(uni(unicodedata), unicodedata.encode("utf-8"))
Example #11
Source File: test_quote.py From sqlalchemy with MIT License | 6 votes |
def test_unformat(self): prep = compiler.IdentifierPreparer(default.DefaultDialect()) unformat = prep.unformat_identifiers def a_eq(have, want): if have != want: print("Wanted %s" % want) print("Received %s" % have) self.assert_(have == want) a_eq(unformat("foo"), ["foo"]) a_eq(unformat('"foo"'), ["foo"]) a_eq(unformat("'foo'"), ["'foo'"]) a_eq(unformat("foo.bar"), ["foo", "bar"]) a_eq(unformat('"foo"."bar"'), ["foo", "bar"]) a_eq(unformat('foo."bar"'), ["foo", "bar"]) a_eq(unformat('"foo".bar'), ["foo", "bar"]) a_eq(unformat('"foo"."b""a""r"."baz"'), ["foo", 'b"a"r', "baz"])
Example #12
Source File: test_labels.py From sqlalchemy with MIT License | 6 votes |
def test_label_overlap_unlabeled(self): """test that an anon col can't overlap with a fixed name, #3396""" table1 = table( "tablename", column("columnname_one"), column("columnn_1") ) stmt = select([table1]).apply_labels() dialect = default.DefaultDialect(label_length=23) self.assert_compile( stmt, "SELECT tablename.columnname_one AS tablename_columnn_1, " "tablename.columnn_1 AS tablename_columnn_2 FROM tablename", dialect=dialect, ) compiled = stmt.compile(dialect=dialect) eq_( set(compiled._create_result_map()), set(["tablename_columnn_1", "tablename_columnn_2"]), )
Example #13
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def test_negate_operator_label(self): orig_expr = or_( self.table1.c.myid == 1, self.table1.c.myid == 2 ).label("foo") expr = not_(orig_expr) isinstance(expr, Label) eq_(expr.name, "foo") is_not_(expr, orig_expr) is_(expr._element.operator, operator.inv) # e.g. and not false_ self.assert_compile( expr, "NOT (mytable.myid = :myid_1 OR mytable.myid = :myid_2)", dialect=default.DefaultDialect(supports_native_boolean=False), )
Example #14
Source File: test_compiler.py From sqlalchemy with MIT License | 5 votes |
def test_paramstyles(self): stmt = text("select :foo, :bar, :bat from sometable") self.assert_compile( stmt, "select ?, ?, ? from sometable", dialect=default.DefaultDialect(paramstyle="qmark"), ) self.assert_compile( stmt, "select :foo, :bar, :bat from sometable", dialect=default.DefaultDialect(paramstyle="named"), ) self.assert_compile( stmt, "select %s, %s, %s from sometable", dialect=default.DefaultDialect(paramstyle="format"), ) self.assert_compile( stmt, "select :1, :2, :3 from sometable", dialect=default.DefaultDialect(paramstyle="numeric"), ) self.assert_compile( stmt, "select %(foo)s, %(bar)s, %(bat)s from sometable", dialect=default.DefaultDialect(paramstyle="pyformat"), )
Example #15
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def test_negate_operator_self_group(self): orig_expr = or_( self.table1.c.myid == 1, self.table1.c.myid == 2 ).self_group() expr = not_(orig_expr) is_not_(expr, orig_expr) self.assert_compile( expr, "NOT (mytable.myid = :myid_1 OR mytable.myid = :myid_2)", dialect=default.DefaultDialect(supports_native_boolean=False), )
Example #16
Source File: test_labels.py From sqlalchemy with MIT License | 5 votes |
def _length_fixture(self, length=IDENT_LENGTH, positional=False): dialect = default.DefaultDialect() dialect.max_identifier_length = ( dialect._user_defined_max_identifier_length ) = length if positional: dialect.paramstyle = "format" dialect.positional = True return dialect
Example #17
Source File: test_compiler.py From sqlalchemy with MIT License | 5 votes |
def test_no_group_by_labels(self): lab1 = (table1.c.myid + 12).label("foo") lab2 = func.somefunc(table1.c.name).label("bar") dialect = default.DefaultDialect() self.assert_compile( select([lab1, lab2]).group_by(lab1, lab2), "SELECT mytable.myid + :myid_1 AS foo, somefunc(mytable.name) " "AS bar FROM mytable GROUP BY mytable.myid + :myid_1, " "somefunc(mytable.name)", dialect=dialect, )
Example #18
Source File: test_compiler.py From sqlalchemy with MIT License | 5 votes |
def test_delayed_col_naming(self): my_str = Column(String) sel1 = select([my_str]) assert_raises_message( exc.InvalidRequestError, "Cannot initialize a sub-selectable with this Column", lambda: sel1.subquery().c, ) # calling label or scalar_subquery doesn't compile # anything. sel2 = select([func.substr(my_str, 2, 3)]).label("my_substr") assert_raises_message( exc.CompileError, "Cannot compile Column object until its 'name' is assigned.", sel2.compile, dialect=default.DefaultDialect(), ) sel3 = select([my_str]).scalar_subquery() assert_raises_message( exc.CompileError, "Cannot compile Column object until its 'name' is assigned.", sel3.compile, dialect=default.DefaultDialect(), ) my_str.name = "foo" self.assert_compile(sel1, "SELECT foo") self.assert_compile( sel2, "(SELECT substr(foo, :substr_2, :substr_3) AS substr_1)" ) self.assert_compile(sel3, "(SELECT foo)")
Example #19
Source File: test_compiler.py From sqlalchemy with MIT License | 5 votes |
def test_tuple_expanding_in_values(self): expr = tuple_(table1.c.myid, table1.c.name).in_( [(1, "foo"), (5, "bar")] ) dialect = default.DefaultDialect() dialect.tuple_in_values = True self.assert_compile( tuple_(table1.c.myid, table1.c.name).in_([(1, "foo"), (5, "bar")]), "(mytable.myid, mytable.name) IN " "([POSTCOMPILE_param_1])", dialect=dialect, checkparams={"param_1": [(1, "foo"), (5, "bar")]}, check_post_param={"param_1": [(1, "foo"), (5, "bar")]}, check_literal_execute={}, ) compiled = expr.compile(dialect=dialect) ( to_update, replacement_expr, ) = compiled._literal_execute_expanding_parameter( "param_1", expr.right, [(1, "foo"), (5, "bar")] ) eq_( to_update, [ ("param_1_1_1", 1), ("param_1_1_2", "foo"), ("param_1_2_1", 5), ("param_1_2_2", "bar"), ], ) eq_( replacement_expr, "VALUES (:param_1_1_1, :param_1_1_2), " "(:param_1_2_1, :param_1_2_2)", )
Example #20
Source File: test_labels.py From sqlalchemy with MIT License | 5 votes |
def test_adjustable_4(self): table1 = self.table1 q = table1.select(table1.c.this_is_the_primarykey_column == 4).alias() x = select([q], use_labels=True) compile_dialect = default.DefaultDialect(label_length=10) self.assert_compile( x, "SELECT " "anon_1.this_2 AS anon_1, " "anon_1.this_4 AS anon_3 " "FROM (" "SELECT " "some_large_named_table.this_is_the_primarykey_column " "AS this_2, " "some_large_named_table.this_is_the_data_column " "AS this_4 " "FROM " "some_large_named_table " "WHERE " "some_large_named_table.this_is_the_primarykey_column " "= :this_1" ") " "AS anon_1", dialect=compile_dialect, )
Example #21
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def test_single_bool_ten(self): self.assert_compile( or_(False), "0 = 1", dialect=default.DefaultDialect(supports_native_boolean=False), )
Example #22
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def test_single_bool_nine(self): self.assert_compile( and_(True), "1 = 1", dialect=default.DefaultDialect(supports_native_boolean=False), )
Example #23
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def _dialect(self, native_boolean): d = default.DefaultDialect() d.supports_native_boolean = native_boolean return d
Example #24
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def setUp(self): class MyTypeCompiler(compiler.GenericTypeCompiler): def visit_mytype(self, type_, **kw): return "MYTYPE" def visit_myothertype(self, type_, **kw): return "MYOTHERTYPE" class MyCompiler(compiler.SQLCompiler): def visit_slice(self, element, **kw): return "%s:%s" % ( self.process(element.start, **kw), self.process(element.stop, **kw), ) def visit_getitem_binary(self, binary, operator, **kw): return "%s[%s]" % ( self.process(binary.left, **kw), self.process(binary.right, **kw), ) class MyDialect(default.DefaultDialect): statement_compiler = MyCompiler type_compiler = MyTypeCompiler class MyType(ARRAY): __visit_name__ = "mytype" def __init__(self, zero_indexes=False, dimensions=1): if zero_indexes: self.zero_indexes = zero_indexes self.dimensions = dimensions self.item_type = Integer() self.MyType = MyType self.__dialect__ = MyDialect()
Example #25
Source File: test_operators.py From sqlalchemy with MIT License | 5 votes |
def setUp(self): class MyTypeCompiler(compiler.GenericTypeCompiler): def visit_mytype(self, type_, **kw): return "MYTYPE" def visit_myothertype(self, type_, **kw): return "MYOTHERTYPE" class MyCompiler(compiler.SQLCompiler): def visit_json_getitem_op_binary(self, binary, operator, **kw): return self._generate_generic_binary( binary, " -> ", eager_grouping=True, **kw ) def visit_json_path_getitem_op_binary( self, binary, operator, **kw ): return self._generate_generic_binary( binary, " #> ", eager_grouping=True, **kw ) def visit_getitem_binary(self, binary, operator, **kw): raise NotImplementedError() class MyDialect(default.DefaultDialect): statement_compiler = MyCompiler type_compiler = MyTypeCompiler class MyType(JSON): __visit_name__ = "mytype" pass self.MyType = MyType self.__dialect__ = MyDialect()
Example #26
Source File: test_type_expressions.py From sqlalchemy with MIT License | 5 votes |
def _dialect_level_fixture(self): class ImplString(String): def bind_expression(self, bindvalue): return func.dialect_bind(bindvalue) def column_expression(self, col): return func.dialect_colexpr(col) from sqlalchemy.engine import default dialect = default.DefaultDialect() dialect.colspecs = {String: ImplString} return dialect
Example #27
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_literal_processor_coercion_nonnative_str(self): proc = Boolean().literal_processor( default.DefaultDialect(supports_native_boolean=False) ) assert_raises_message( TypeError, "Not a boolean value: 'foo'", proc, "foo" )
Example #28
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_literal_processor_coercion_nonnative_1(self): proc = Boolean().literal_processor( default.DefaultDialect(supports_native_boolean=False) ) eq_(proc(1), "1")
Example #29
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_literal_processor_coercion_nonnative_false(self): proc = Boolean().literal_processor( default.DefaultDialect(supports_native_boolean=False) ) eq_(proc(False), "0")
Example #30
Source File: test_types.py From sqlalchemy with MIT License | 5 votes |
def test_literal_processor_coercion_nonnative_true(self): proc = Boolean().literal_processor( default.DefaultDialect(supports_native_boolean=False) ) eq_(proc(True), "1")