Skip to content

Commit 20cc461

Browse files
committedFeb 22, 2019
addressed more comments
·
v9.4.0v3.2.0
1 parent 951f11e commit 20cc461

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed
 

‎src/cs50/sql.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,12 +64,12 @@ def connect(dbapi_connection, connection_record):
6464
disabled = self._logger.disabled
6565
self._logger.disabled = True
6666
self.execute("SELECT 1")
67-
self._logger.disabled = disabled
6867
except sqlalchemy.exc.OperationalError as e:
6968
e = RuntimeError(_parse_exception(e))
7069
e.__cause__ = None
71-
self._logger.disabled = disabled
7270
raise e
71+
finally:
72+
self._logger.disabled = disabled
7373

7474
def execute(self, sql, *args, **kwargs):
7575
"""Execute a SQL statement."""
@@ -137,7 +137,6 @@ def execute(self, sql, *args, **kwargs):
137137
# In case of errors
138138
_placeholders = ", ".join([str(tokens[index]) for index in placeholders])
139139
_args = ", ".join([str(self._escape(arg)) for arg in args])
140-
#_kwargs = ", ".join([str(self._escape(arg)) for arg in args])
141140

142141
# qmark
143142
if paramstyle == "qmark":
@@ -270,6 +269,10 @@ def __escape(value):
270269
sqlparse.tokens.Number,
271270
sqlalchemy.types.Boolean().literal_processor(self.engine.dialect)(value))
272271

272+
# bytearray, bytes
273+
elif type(value) in [bytearray, bytes]:
274+
raise RuntimeError("unsupported value") # TODO
275+
273276
# datetime.date
274277
elif type(value) is datetime.date:
275278
return sqlparse.sql.Token(

‎tests/sqlite.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
db = SQL("sqlite:///sqlite.db")
1111
db.execute("SELECT 1")
1212

13+
# TODO
14+
#db.execute("SELECT * FROM Employee WHERE FirstName = ?", b'\x00')
15+
1316
db.execute("SELECT * FROM Employee WHERE FirstName = ?", "' OR 1 = 1")
1417

1518
db.execute("SELECT * FROM Employee WHERE FirstName IN (?)", "Andrew")

0 commit comments

Comments
 (0)
Please sign in to comment.