【发布时间】:2015-11-18 06:20:09
【问题描述】:
我需要每天更新 sql 数据库,以了解点击次数和转化次数列的变化。我有每一列的数组。在这个语句中有一个错误。我也找不到错误。请帮助
for(int j=1;j<row;j++){
pst= conn.prepareStatement("INSERT INTO babum_test.l2ttracker SET Clientid='"+Customer_ID[j]+"',Accountname='"+Account[j]"',Dates='"Day[j]"',Clicks='"Clicks[j]"',Impressions='"Impressions[j]"',CTR='"CTR[j]"',Avg_CPC='"Avg_CPC[j]"',Cost='"Costs[j]"',Conversions='"Conversions[j]"',Converted_clicks='"Converted_clicks[j]"',Avg_position='"Avg_position[j]"',Revenue='"Total_Conv_value[j]+"' ON DUPLICATE KEY UPDATE'"+ "'Clicks='"+Clicks[j]"',Impressions='"Impressions[j]"',CTR='"CTR[j]"',Avg_CPC='"Avg_CPC[j]"',Cost='"Costs[j]"',Conversions='"Conversions[j]"',Avg_position='"Avg_position[j]"',Converted_clicks='"Converted_clicks[j]"',Revenue='"Total_Conv_value[j]);
}
【问题讨论】:
-
1/ 引号 2/ sql 注入 3/ 误用。请阅读prepared statement
-
我们可以在 INSERT 语句中使用 SET 关键字吗?我从没用过,SET 是 UPDATE 语句,而 INSERT 语句有一个 VALUES 关键字。
-
除了滥用准备好的语句之外,您使用的是什么 dbms,您遇到了什么错误?看起来您正在使用 IIRC 完全错误的语法
INSERT INTO table SET column = value。 -
他们已经用 R 语言开发了这段代码。现在我需要将其转换为 Java 以作为批处理文件运行。在 R 语言中,他们使用了这个 SQL 命令。 Sql 命令对所有语言都是通用的。所以我在这里用它来插入和更新