summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/mssql
diff options
context:
space:
mode:
authorFederico Caselli <cfederico87@gmail.com>2020-05-21 21:50:49 +0200
committerMike Bayer <mike_mp@zzzcomputing.com>2020-05-23 19:40:06 -0400
commitf79953a874c201a31a8972b999d18547bf227f25 (patch)
treee71779e41fc3d7dc8a1bacfd0aea6716a80c5856 /lib/sqlalchemy/dialects/mssql
parent31d1846b76baec6ffa4c65bd72456a58f7b2ef1b (diff)
downloadsqlalchemy-f79953a874c201a31a8972b999d18547bf227f25.tar.gz
Avoid proxy functions in row functions
This streamlines a bit for non-C implementations, however also adds and tests behavioral contracts that mappings should not allow integer or slice access and should behave like a Python mapping in that it raises KeyError for an integer and TypeError for a slice. Py3/Py2/C/noC :) References: #5340 Change-Id: Id3cef452dc8a526b8371c90c5ca2bbb240b25c26
Diffstat (limited to 'lib/sqlalchemy/dialects/mssql')
-rw-r--r--lib/sqlalchemy/dialects/mssql/base.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/sqlalchemy/dialects/mssql/base.py b/lib/sqlalchemy/dialects/mssql/base.py
index f8ed7697a..05c34c171 100644
--- a/lib/sqlalchemy/dialects/mssql/base.py
+++ b/lib/sqlalchemy/dialects/mssql/base.py
@@ -2860,7 +2860,7 @@ class MSDialect(default.DefaultDialect):
constraint_name = None
for row in c.mappings():
if "PRIMARY" in row[TC.c.constraint_type.name]:
- pkeys.append(row[0])
+ pkeys.append(row["COLUMN_NAME"])
if constraint_name is None:
constraint_name = row[C.c.constraint_name.name]
return {"constrained_columns": pkeys, "name": constraint_name}