大佬教程收集整理的这篇文章主要介绍了创建 SQL 插入脚本,返回:TypeError:+ 不支持的操作数类型:'NoneType' 和 'str',大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下数据框。
df = pd.DataFrame({'vin': ['test'],'modelID':['5641'],'year': ['2021'] })
我正在尝试使用以下函数从它创建一个 sql 插入脚本..
import pandas as pd
def createsqlInsertStatement():
global sql_texts,row
sql_texts = []
for index,row in df.iterrows():
sql_texts.append('INSERT INTO '+ ' registry'+' (source,create_time,geo_group_ID,status,make,vin,modelID,year)'
+ ' VALUES "MANUAL_LOAD",sysdate,42,"MITSUBISHI",'+ ',' + str(tuple(row.values))) +';'
return sql_texts
但我不断收到:
TypeError TraceBACk (most recent call last)
c:\Users\Desktop\testsql.py in <module>
----> 1 createsqlInsertStatement()
c:\Users\Desktop\testsql.py in createsqlInsertStatement()
9 sql_texts = []
10 for index,row in df.iterrows():
---> 11 sql_texts.append('INSERT INTO '+ ' registry'+' (source,year)'
12 + ' VALUES "MANUAL_LOAD",' + str(tuple(row.values))) +';'
13 return sql_texts
TypeError: unsupported operand type(s) for +: 'nonetype' and 'str'
我需要...
INSERT INTO registry (source,year) VALUES ('MANUAL_LOAD','MITSUBISHI','5641','2021');
@H_262_0@解决方法
您在 append 语句的末尾有一个错误: +';'
应该在“append”的括号内。现在您正在尝试将“追加”的结果与字符串(字符)';'
连接起来。
更正为:
sql_texts.append('INSERT INTO '+ ' registry'+' (source,create_time,geo_group_id,status,make,vin,modelId,year)'
+ ' VALUES "MANUAL_LOAD",sysdate,42,"MITSUBISHI",'+ ',' + str(tuple(row.values)) +';')
编辑:除了更正上面的语法错误之外,我相信您的代码不会为您提供您正在寻找的输出,因为您不想将元组添加到您的字符串中。此语句可能更简洁(using format
function 而不是 +
)
sql_texts.append("INSERT INTO registry (source,year) VALUES (\"MANUAL_LOAD\",\"MITSUBISHI\",\"{0}\",\"{1}\");".format(row.values[1],row.values[2]))
输出如下:
['INSERT INTO registry (source,year) VALUES ("MANUAL_LOAD","5641","2021");']
希望这会有所帮助!
,您错过了 sql_text.append
的右括号并在 str
中多加了一个括号
试试这个它会返回一个带查询的数组
import pandas as pd
def createSqlInsertStatement():
global sql_texts,row
sql_texts = []
for index,row in df.iterrows():
sql_texts.append('INSERT INTO '+ ' registry'+' (source,' + str(tuple(row.values)) +';')
return sql_texts
以上是大佬教程为你收集整理的创建 SQL 插入脚本,返回:TypeError:+ 不支持的操作数类型:'NoneType' 和 'str'全部内容,希望文章能够帮你解决创建 SQL 插入脚本,返回:TypeError:+ 不支持的操作数类型:'NoneType' 和 'str'所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。