Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如果任何单个记录由于某些限制而失败,整个批处理将中止?_Mysql_Postgresql_Jdbc_Batch Processing_Jdbc Postgres - Fatal编程技术网

Mysql 如果任何单个记录由于某些限制而失败,整个批处理将中止?

Mysql 如果任何单个记录由于某些限制而失败,整个批处理将中止?,mysql,postgresql,jdbc,batch-processing,jdbc-postgres,Mysql,Postgresql,Jdbc,Batch Processing,Jdbc Postgres,我使用PostgreSQL作为后端。我正在使用PostgreJDBC驱动程序连接。我正在执行一批5条记录。我在一列中列出了唯一的constantins。现在,在将5条记录添加到批处理中之后,我正在执行批处理。现在,当我执行此操作时,在第三批中,由于唯一的contsratins,一条记录出错,整个批将中止。其余所有3(第一、第二、第四)批将执行。在MySQl中,只有失败的记录将被中止,包含错误记录的批处理将被正确执行。那么为什么在PostgreSQL中会发生这种情况呢?这是预期的行为还是错误?使用

我使用PostgreSQL作为后端。我正在使用PostgreJDBC驱动程序连接。我正在执行一批5条记录。我在一列中列出了唯一的constantins。现在,在将5条记录添加到批处理中之后,我正在执行批处理。现在,当我执行此操作时,在第三批中,由于唯一的contsratins,一条记录出错,整个批将中止。其余所有3(第一、第二、第四)批将执行。在MySQl中,只有失败的记录将被中止,包含错误记录的批处理将被正确执行。那么为什么在PostgreSQL中会发生这种情况呢?这是预期的行为还是错误?

使用事务时,发生错误时,所有内容都应回滚。否则,请使用保存点并回滚到此保存点。您在MySQL中使用什么引擎?大多数MySQL引擎不支持事务。我在MySQL中使用innodb引擎。顺便说一下,我的用例是从文件中读取数据并将数据插入数据库。这些数据将接近50万。因此,即使一条记录失败,也应该插入另一条记录。这是我的要求。