Datetime conversion error

Describe the bug

mssql_python throws a datetime conversion error when performing string-to-string comparisons in SQL WHERE clauses, even though no datetime conversion should be involved. The same query works fine with pymssql and pyodbc.

The error occurs when passing a string parameter to compare against a string result from SQL functions like RIGHT(). The library incorrectly attempts datetime conversion instead of treating it as a simple string comparison.

To reproduce

test_mssql-python.py (fails):

import mssql_python

# Establish a connection
connection_string = ""
connection = mssql_python.connect(connection_string)
cursor = connection.cursor()
date_str = '2025-08-12'
# This fails with datetime conversion error
cursor.execute("SELECT a_column FROM a_table WHERE RIGHT(a_column,10) = ?", (str(date_str)))
rows = cursor.fetchall()

for row in rows:
    print(row)

connection.close()

Expected behavior

The query should execute successfully since it's a simple string-to-string comparison. RIGHT(a_column,10) returns a string, and the parameter is a string, so no datetime conversion should occur.

Workaround: The query works when explicitly casting the parameter:

cursor.execute("SELECT a_column FROM a_table WHERE RIGHT(a_column,10) = cast(? as nvarchar(10))", (str(date_str)))

Further technical details

Python version: 3.13.7
Operating system: Windows 10