Tag: java stored procedures

使用预准备语句在循环中高效查询嵌入式数据库

前几天我问了一个类似的问题 ,但后来我意识到自己已经超前了。 我正在寻找有关处理以下方案的正确方法的建议。 我正试图以最快的方式为给定的地址和城市SELECT正确的经度和纬度。 我的COORDINATES表有25,000行,看起来像这样: 我有一个Java HashMap<Integer, List> ,它包含一个Integer作为键,以及一个包含2个条目,一个地址和一个城市的ArrayList 。 HashMap的大小为500。 我需要使用4种不同类型的SELECT语句,因为每种语句都比以前更宽松,如下所示: SELECT LATITUDE, LONGITUDE FROM coordinates WHERE(address::text = ? AND community::text = ?) UNION ALL SELECT LATITUDE, LONGITUDE FROM coordinates WHERE (address::text = ? AND community::text LIKE ?) UNION ALL SELECT LATITUDE, LONGITUDE FROM coordinates WHERE (address::text LIKE ? AND community::text = ?) UNION […]

在Oracle数据库中将byte 数组作为blob插入ORA-01460:请求未实现或不合理的转换

我有一个java存储过程,我试图将byte []数组插入表中的oracle blob字段。 我创建一个准备好的语句如下,但是当我执行预准备语句时它会随机失败。 我已经缩小了问题来自pstmt.setBytes(4,content)。 我得到的错误是: ORA-01460:请求未实现或不合理的转换。 private static void insertFile(Connection connOracle, int zipFileId, byte[] data, String filepath, String filename ) throws SQLException { try { String QUERY = “INSERT INTO files(file_id, zip_file_id, filename, file_path, content) VALUES(SEQ_FILE_ID.nextval,?,?,?,?)”; PreparedStatement pstmt = connOracle.prepareStatement(QUERY); pstmt.setInt(1,zipFileId); pstmt.setString(2, filename); pstmt.setString(3, filepath); pstmt.setBytes(4, data); System.out.println(“INSERTING file_id ” + filepath + “, […]

如何从MySQL调用Java代码?

我在2008年发现了一篇文章,讨论如何从MySQL调用Java代码 。 有很多警告和免责声明,因为这个过程涉及使用MySQL的实验分支。 对于我想到的项目,能够访问MySQL中的Java库非常有用,类似于Oracle的Java存储过程 。 此function现在是否作为MySQL的标准function存在? 如果没有,哪些开源RDBMS支持类似于Oracle的Java存储过程的东西?