我有一个表,它将信息存储为一组名称 - 值对。有些值应该是日期,字符编码为' YYYY-MM-DD'但我不知何故在我的表中得到了一些不良数据。当我尝试将错误的条目从MySQL命令行客户端转换为日期时,我得到一个null。但是当我尝试使用MySQLDb使用Python程序执行此操作时,它会引发异常,如:
OperationalError(1292,"日期时间值不正确: '未定义-0-11 /一千九百七十一分之三十零'&#34)
我需要找到某种方法来以编程方式识别错误的值,或者只是将转换结果设置为NULL而不是抛出异常。有什么想法吗?
答案 0 :(得分:0)
python中的try-catch块应该可以解决操作错误。 (但是,您必须确保由于日期时间错误而导致操作错误,而不是其他问题。)一般逻辑看起来像这样:
try:
<datetime conversion here>
except MySQLdb.OperationalError:
print "this value is bad!"