From b2b754c2ce3a9672a135f01246dcb9521a88e2c4 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Sun, 22 Jun 2008 16:56:16 +0000 Subject: - merged r4868, disallow overly long names from create/drop, from 0.4 branch, [ticket:571] --- lib/sqlalchemy/engine/default.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'lib/sqlalchemy/engine/default.py') diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index b8578151b..dcbf8c76f 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -15,7 +15,7 @@ as the base class for their own corresponding classes. import re, random from sqlalchemy.engine import base from sqlalchemy.sql import compiler, expression - +from sqlalchemy import exc AUTOCOMMIT_REGEXP = re.compile(r'\s*(?:UPDATE|INSERT|CREATE|DELETE|DROP|ALTER)', re.I | re.UNICODE) @@ -70,7 +70,10 @@ class DefaultDialect(base.Dialect): typeobj = typeobj() return typeobj - + def validate_identifier(self, ident): + if len(ident) > self.max_identifier_length: + raise exc.IdentifierError("Identifier '%s' exceeds maximum length of %d characters" % (ident, self.max_identifier_length)) + def oid_column_name(self, column): return None -- cgit v1.2.1