summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/sql.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-02-18 20:33:20 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-02-18 20:33:20 +0000
commit55ce6851e08daeba3be8e8c32d9e4618e53a8d5e (patch)
tree6b6e473f166fd0f11addc7ad9b7775b7ef198bdd /lib/sqlalchemy/sql.py
parent38dfca8c7f69aa578299035145d1359984edcf83 (diff)
downloadsqlalchemy-55ce6851e08daeba3be8e8c32d9e4618e53a8d5e.tar.gz
added indexes to schema/ansisql/engine
slightly different index syntax for mysql fixed mysql Time type to convert from a timedelta to time tweaks to date unit tests for mysql
Diffstat (limited to 'lib/sqlalchemy/sql.py')
-rw-r--r--lib/sqlalchemy/sql.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/sqlalchemy/sql.py b/lib/sqlalchemy/sql.py
index 293880bf3..03c94c5e3 100644
--- a/lib/sqlalchemy/sql.py
+++ b/lib/sqlalchemy/sql.py
@@ -1430,4 +1430,25 @@ class Delete(UpdateBase):
self.whereclause.accept_visitor(visitor)
visitor.visit_delete(self)
+class IndexImpl(ClauseElement):
+
+ def __init__(self, index):
+ self.index = index
+ self.name = index.name
+ self._engine = self.index.table.engine
+
+ table = property(lambda s: s.index.table)
+ columns = property(lambda s: s.index.columns)
+ def hash_key(self):
+ return self.index.hash_key()
+ def accept_visitor(self, visitor):
+ visitor.visit_index(self.index)
+ def compare(self, other):
+ return self.index is other
+ def create(self):
+ self._engine.create(self.index)
+ def drop(self):
+ self._engine.drop(self.index)
+ def execute(self):
+ self.create()