Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.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
Java 需要更新点并将其向西移动_Java_Mysql_Spatial_Nashorn - Fatal编程技术网

Java 需要更新点并将其向西移动

Java 需要更新点并将其向西移动,java,mysql,spatial,nashorn,Java,Mysql,Spatial,Nashorn,我有一个MySQL空间表,有数百万个点。其中一些点偏离某个恒定的分数度数。我可以这样选择有问题的点 SELECT AsText(Point) as point FROM records WHERE ST_CONTAINS(GeomFromText(?), point); 其中,我的GeomFromText是一个包含我要移动的点的多边形。将大量的学位点向西转移的最佳方式是什么?我的第一个想法是迭代我的结果集并分别更新每个点,但当我进入数百万行区域时,我担心性能 有没有更好的方法来完成大量地理空间

我有一个MySQL空间表,有数百万个点。其中一些点偏离某个恒定的分数度数。我可以这样选择有问题的点

SELECT AsText(Point) as point FROM records WHERE ST_CONTAINS(GeomFromText(?), point);
其中,我的GeomFromText是一个包含我要移动的点的多边形。将大量的学位点向西转移的最佳方式是什么?我的第一个想法是迭代我的结果集并分别更新每个点,但当我进入数百万行区域时,我担心性能

有没有更好的方法来完成大量地理空间点的移动


顺便说一句,我目前正在通过Nashorn/Java访问数据库,但我也可以在数据库终端上运行一些东西。

您可以使用批更新,即,而不是逐个发送更新。刚刚批量发送更新查询,例如

statement.addBatch("your update query1");
statement.addBatch("your update query2);
int[] recordsAffected = statement.executeBatch();
您还可以使用(表示预编译SQL语句的对象)执行批处理更新,这使您能够使用不同的参数重用相同的SQL语句

您还可以创建存储过程并从java调用它