for row in sqlserver_result: var_title = row[0] var_type_name = row[1] var_company_name = row[2] var_source = row[3] dt_add_time = row[5] var_user_name = row[6] sqlserver_cursor.execute("INSERT INTO t_wuliu_information_pay_statistic (var_title,var_type_name,var_company_name,var_source,dt_add_time,varchar_name,var_succeed_cause) VALUES (?,?,?,?,?,?,'单条付费')",(row[0],row[1],row[2],row[3],row[5],row[6]))这样写正确吗
时间: 2024-03-16 10:42:37 浏览: 45
这段代码存在一些问题:
1. `sqlserver_cursor.execute()` 方法应该在 `for` 循环内部调用,因为你需要为每一行数据执行一次 SQL INSERT 操作。
2. 在 `sqlserver_cursor.execute()` 方法中,应该使用变量名而不是 `row[i]`,因为在循环结束后,`row` 变量的值将是最后一行查询结果的值,而不是你想要插入的每一行数据。
下面是修改后的代码:
```
for row in sqlserver_result:
var_title = row[0]
var_type_name = row[1]
var_company_name = row[2]
var_source = row[3]
dt_add_time = row[5]
var_user_name = row[6]
sqlserver_cursor.execute("INSERT INTO t_wuliu_information_pay_statistic (var_title,var_type_name,var_company_name,var_source,dt_add_time,varchar_name,var_succeed_cause) VALUES (?,?,?,?,?,?,'单条付费')",(var_title,var_type_name,var_company_name,var_source,dt_add_time,var_user_name))
```
希望能够帮助你。
阅读全文