cursor.execute value子字符串不起作用

hlswsv35  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(359)

我正在尝试以格式加载值+02:00,即-

mysql> select SUBSTR('2016-01-12T14:29:31.000+02:00',24,6);
+02:00

Python:

csv_data = csv.reader(open('aaaa.csv'))
for row in csv_data:
cursor.execute('INSERT INTO time2(col1, \
         EventTimeZone)' \
'VALUES(%s,SUBSTR(\'%s\',24,6))',
         (row[0],row[1]))

如何在python中验证查询 cursor.execute 将传入值的子字符串。。?

bejyjqdl

bejyjqdl1#

不能在函数中调用函数 VALUES 中的子句 INSERT . 但是,我们可以将您的查询改为 INSERT INTO ... SELECT :

INSERT INTO time2 (col1, EventTimeZone)
SELECT row[0], SUBSTR(row[1], 24, 6)
FROM dual;

下面是我对python代码的最佳猜测:

cursor.execute("INSERT INTO time2 (col1, EventTimeZone) \
    SELECT %s, SUBSTR('%s', 24, 6) \
    FROM dual",
    (row[0], row[1]))

相关问题