diff options
author | Michael Trier <mtrier@gmail.com> | 2009-04-11 21:36:45 +0000 |
---|---|---|
committer | Michael Trier <mtrier@gmail.com> | 2009-04-11 21:36:45 +0000 |
commit | 2a962802de28615f5c961b423e1a995b7bd691bc (patch) | |
tree | 1c9aa42058eeb50a60eff4b4d4a38add855d7b7c /test/dialect/mssql.py | |
parent | 99d3e251cf6f24807138ef03cdd0f7c55b00e810 (diff) | |
download | sqlalchemy-2a962802de28615f5c961b423e1a995b7bd691bc.tar.gz |
Added multi part schema name support. Closes #594 and #1341.
Diffstat (limited to 'test/dialect/mssql.py')
-rwxr-xr-x | test/dialect/mssql.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/dialect/mssql.py b/test/dialect/mssql.py index de9c5cd62..50f9594ef 100755 --- a/test/dialect/mssql.py +++ b/test/dialect/mssql.py @@ -88,6 +88,30 @@ class CompileTest(TestBase, AssertsCompiledSQL): s = select([tbl.c.id]).where(tbl.c.id==1) self.assert_compile(tbl.delete().where(tbl.c.id==(s)), "DELETE FROM paj.test WHERE paj.test.id IN (SELECT test_1.id FROM paj.test AS test_1 WHERE test_1.id = :id_1)") + def test_delete_schema_multipart(self): + metadata = MetaData() + tbl = Table('test', metadata, Column('id', Integer, primary_key=True), schema='banana.paj') + self.assert_compile(tbl.delete(tbl.c.id == 1), "DELETE FROM banana.paj.test WHERE banana.paj.test.id = :id_1") + + s = select([tbl.c.id]).where(tbl.c.id==1) + self.assert_compile(tbl.delete().where(tbl.c.id==(s)), "DELETE FROM banana.paj.test WHERE banana.paj.test.id IN (SELECT test_1.id FROM banana.paj.test AS test_1 WHERE test_1.id = :id_1)") + + def test_delete_schema_multipart_needs_quoting(self): + metadata = MetaData() + tbl = Table('test', metadata, Column('id', Integer, primary_key=True), schema='banana split.paj') + self.assert_compile(tbl.delete(tbl.c.id == 1), "DELETE FROM [banana split].paj.test WHERE [banana split].paj.test.id = :id_1") + + s = select([tbl.c.id]).where(tbl.c.id==1) + self.assert_compile(tbl.delete().where(tbl.c.id==(s)), "DELETE FROM [banana split].paj.test WHERE [banana split].paj.test.id IN (SELECT test_1.id FROM [banana split].paj.test AS test_1 WHERE test_1.id = :id_1)") + + def test_delete_schema_multipart_both_need_quoting(self): + metadata = MetaData() + tbl = Table('test', metadata, Column('id', Integer, primary_key=True), schema='banana split.paj with a space') + self.assert_compile(tbl.delete(tbl.c.id == 1), "DELETE FROM [banana split].[paj with a space].test WHERE [banana split].[paj with a space].test.id = :id_1") + + s = select([tbl.c.id]).where(tbl.c.id==1) + self.assert_compile(tbl.delete().where(tbl.c.id==(s)), "DELETE FROM [banana split].[paj with a space].test WHERE [banana split].[paj with a space].test.id IN (SELECT test_1.id FROM [banana split].[paj with a space].test AS test_1 WHERE test_1.id = :id_1)") + def test_union(self): t1 = table('t1', column('col1'), |