当前位置: 首页 > 知识库问答 >
问题:

串联sql语句insert[重复]

韶亮
2023-03-14

我有一个脚本需要在一个语句中插入多个内容,比如

sql = "INSERT INTO `table` (something, something) VALUES (smth,smth); INSERT INTO `table` (something, something) VALUES (smth,smth)";
Statement stmt = connection_db.createStatement();  
 boolean update = stmt.execute(sql);

长sql是基于条件串联的,并且需要这么长。在phpmyadmin中使用这种sql语句是有效的,并且插入它没有问题,但是JAVA会吐出一个错误。

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSERT INTO `

我可以做些什么来插入这种sql,或者我应该重做我的代码来启动几次以达到相同的结果吗?

共有1个答案

浦思源
2023-03-14

一种简单的方法是使用批处理SQL插入

  sql = "INSERT INTO `table` (something, something) 
          VALUES (smth,smth), (smth,smth)";

这是一个标准的sql weay,用于在单个查询中插入更多行

 类似资料:
  • 主要内容:1.不指定列名,2.通过指定列名称SQL INSERT语句用于在表中插入单个或多个数据。 在SQL中,可以通过以下两种方式插入数据: 不指定列名称 通过指定列名称 假设有一个表: 的结构和数据记录如下 - EMP_ID EMP_NAME CITY SALARY AGE 1 Angelina Chicago 200000 30 2 Robert Austin 300000 26 3 Christian Denver 100000 4

  • 在 T-SQL 中,INSERT 语句用于向表中添加新行。 INSERT INTO SELECT 需要源中的数据类型,目标匹配表。 表中的现有记录不受 INSERT 语句的影响。 语法: 以下是 的两种语法。 第一种语法: 其中 是表中的列名。 当为列添加值时,无法在 SQL 查询中指定列名。值的顺序与下面指定的顺序相同。 INSERT 语句的语法,第二种语法如下: 例子: 以下语句将在 CUST

  • INSERT INTO 语句用于向表中插入新记录。 SQL INSERT INTO 语句 INSERT INTO 语句用于向表中插入新记录。 SQL INSERT INTO 语法 INSERT INTO 语句可以有两种编写形式。 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:INSERT INTO table_name VALUES (NULL,value2,value3,...);

  • 我当前有一个Get变量 我正尝试将其添加到sql语句中,如下所示: 然后运行 我得到一个无效的列名。但这是没有意义的,因为如果我手动将请求这样放入 我获取列数据,只是当我将其作为get变量输入时没有。我做错了什么。我对PDO比较陌生。 更新:现在我有以下内容: 而且 但我得到了

  • 通过 SQL,您可以从一个表复制信息到另一个表。 INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。 SQL INSERT INTO SELECT 语句 INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。目标表中任何已存在的行都不会受影响。 SQL INSERT INTO SELECT 语法 我们可以从一个表中

  • INSERT INTO 语句 添加一个或多个记录至一个表。这叫作追加查询. 语法 多重记录追加查询: INSERT INTO target [(field1[, field2[, ...]])][IN外部数据库] SELECT field1[, field2[, ...]] FROM tableexpression 单一记录追加查询: INSERT INTO target [(field1[, f