Skip to content

Commit 6096c7e

Browse files
authored
Fix order of datetime type checks
datetime.datetime inherits datetime.date and will prematurely evaluate as an instance of datetime.date.
1 parent 777b4da commit 6096c7e

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/cs50/sql.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -446,18 +446,18 @@ def __escape(value):
446446
else:
447447
raise RuntimeError("unsupported value: {}".format(value))
448448

449-
# datetime.date
450-
elif isinstance(value, datetime.date):
451-
return sqlparse.sql.Token(
452-
sqlparse.tokens.String,
453-
sqlalchemy.types.String().literal_processor(self._engine.dialect)(value.strftime("%Y-%m-%d")))
454-
455449
# datetime.datetime
456450
elif isinstance(value, datetime.datetime):
457451
return sqlparse.sql.Token(
458452
sqlparse.tokens.String,
459453
sqlalchemy.types.String().literal_processor(self._engine.dialect)(value.strftime("%Y-%m-%d %H:%M:%S")))
460454

455+
# datetime.date
456+
elif isinstance(value, datetime.date):
457+
return sqlparse.sql.Token(
458+
sqlparse.tokens.String,
459+
sqlalchemy.types.String().literal_processor(self._engine.dialect)(value.strftime("%Y-%m-%d")))
460+
461461
# datetime.time
462462
elif isinstance(value, datetime.time):
463463
return sqlparse.sql.Token(

0 commit comments

Comments
 (0)