将 varchar 值'06-03-21'转换为数据类型 int 时转换失败



我正在尝试比较字符串变量在我的Python脚本中使用SQL中的varchar变量。以下是我的代码片段:

todaysDate = datetime.now().date().strftime('%d-%m-%y')
read(conn, f'select cou_id from NewCourier where date_created = {todaysDate}'

地点:

todaysDate=>python中存储当前日期的变量

cou_id&date_created=比;关系DB表中的列NewCourier

我试着:

read(conn, f'select cou_id from NewCourier where CAST(date_created AS INT) = {todaysDate}

我也在StackOverflow和其他网站上浏览了几个问题和解决方案,发现只有这个解决方案与我的问题相似,但我不清楚如何解决它。

谢谢!

Python 3.8.5

SQL Server Management Studio 18

似乎列数据类型是整数,您正试图将其与字符串进行比较。如果你能在你的程序中找到插入到表中的代码,你应该能够弄清楚如何正确地转换日期时间

没有创建一个变量来存储Python中的当前日期,我使用了GETDATE()方法使用CONVERT()方法将其转换为varchar在SQL中解决了我的问题

(即。例如,它使我能够获得在特定日期生成的所有记录的快递id)。

这是更新后的行:

read(conn, f'select cou_id from NewCourier where date_created = CONVERT(varchar, getdate(), 23)

相关内容

  • 没有找到相关文章

最新更新