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)这个mysql写的对吗?
时间: 2023-08-03 09:06:58 浏览: 78
这个 SQL 语句看起来没有问题,语法是正确的,但是缺少了 VALUES 关键字,无法插入具体的数据。可以将这个语句改为:
```
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 ('title_value', 'type_name_value', 'company_name_value', 'source_value', 'add_time_value', 'name_value', 'succeed_cause_value');
```
其中,每个字段后面的值需要替换成具体的插入值。另外,如果这些字段中的某些字段是可以为空的,需要在插入时进行判断,避免插入 NULL 值出现异常。
相关问题
sqlserver_cursor.execute("INSERT INTO t_wuliu_information_pay_statistic (var_title,var_type_name,var_company_name,var_source,dt_add_time,var_user_name,var_succeed_cause) VALUES (?,?,?,?,?,?,'单条付费')",(var_title,var_type_name,var_company_name,var_source,dt_add_time,var_user_name))这样写对吗?
根据你提供的代码和参数,这个 SQL 语句看起来是正确的,可以将这个语句改为:
```
sqlserver_cursor.execute("INSERT INTO t_wuliu_information_pay_statistic (var_title,var_type_name,var_company_name,var_source,dt_add_time,var_user_name,var_succeed_cause) VALUES (?,?,?,?,?,?,'单条付费')",(var_title,var_type_name,var_company_name,var_source,dt_add_time,var_user_name))
```
其中,问号代表需要插入的参数,这些参数将在执行 SQL 语句时按顺序进行替换。如果这些字段中的某些字段是可以为空的,需要在插入时进行判断,避免插入 NULL 值出现异常。
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]))这样写正确吗
这段代码存在一些问题:
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))
```
希望能够帮助你。
阅读全文