Tag: derby

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

前几天我问了一个类似的问题 ,但后来我意识到自己已经超前了。 我正在寻找有关处理以下方案的正确方法的建议。 我正试图以最快的方式为给定的地址和城市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 […]

在Tomcat中的其他Web应用程序之前加载derby.war(derby servlet服务器)

Apache Derby可以选择将其“网络服务器”作为servlet容器( derby.war )中的Web应用程序运行。 问题是如何在同一容器中部署依赖于derby的其他应用程序,以便在derby加载后加载(最好在Tomcat容器中)。 据我所知,没有办法控制Tomcat中Web应用程序初始化的顺序。 有没有人让derby.war在多个Web应用程序环境中工作?

Hibernate创建不需要的映射表

我正在创建一个架构。 我的架构如下 @Entity @Table(name = “PROMOTION”) public class Promotion { @Id @Column (name = “promotion_id”) private String promotionId; @JoinColumn(name = “seller_id”) private List sellerList; }; @Entity @Table(name = “SELLER”) public class Seller { @Id @Column (name = “seller_id”) private String sellerId; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = “promotion_id”) private Promotion promotion; @ManyToMany(fetch = FetchType.LAZY) @JoinColumn(name = […]

如何以小写名称创建表 – JavaDB / Derby?

是否可以使用JavaDB / Derby以小写forms创建表及其名称? 要检查表是否存在,我正在使用: ResultSet rs = dbmd.getTables(null, “APP”, “user_properties”, null); if (!rs.next()) {/*do something*/}; 但是表名’user_properties’必须在目录中加工。

Hibernate / JPA + Derby – SELECT语句在GROUP BY,ORDER BY或选择列表中包含太多项

我使用Hibernate与Derby DB进行JPA DB映射。 对于复杂的对象结构,我得到“org.apache.derby.client.am.SqlException:SELECT语句在GROUP BY,ORDER BY或选择列表中有太多项”: org.apache.derby.client.am.SqlException: SELECT statement has too many items in GROUP BY, ORDER BY or select list. org.apache.derby.client.am.Statement.completeSqlca(Unknown Source) org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown Source) org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown Source) org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unknown Source) org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown Source) org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown Source) org.apache.derby.client.am.Statement.readPrepareDescribeOutput(Unknown Source) org.apache.derby.client.am.PreparedStatement.readPrepareDescribeInputOutput(Unknown Source) org.apache.derby.client.am.PreparedStatement.flowPrepareDescribeInputOutput(Unknown Source) org.apache.derby.client.am.PreparedStatement.prepare(Unknown Source) org.apache.derby.client.am.Connection.prepareStatementX(Unknown Source) org.apache.derby.client.am.Connection.prepareStatement(Unknown Source) org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:505) org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:423) org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139) org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1547) org.hibernate.loader.Loader.doQuery(Loader.java:673) org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236) org.hibernate.loader.Loader.loadEntity(Loader.java:1860) org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48) org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42) org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3044) […]

在插入derbyDB varchar字段之前,搜索“特殊”字符的java字符串

我试图从MS Access转换为DerbyDB。 但是,某些varchar字段具有“特殊”字符,例如换行符,制表符,百分号,外来字符等。 我创建了一个快速方法…… public String charCheck(String s) { errLog.add(1, “converting string from ” + s); s.replaceAll(“‘”, “””);//an apostrophe is escaped with an apostrophy in Derby… s.replaceAll(“%”, “\\%”);//a percent sign s.replaceAll(“\\s+n”, ” “);//whitespace characters (newlines and tabs etc) s.replaceAll(“/”, “\\/”);//the ‘divide’ \ character, s.replaceAll(“<", "\\”, “\\>”);//mathematical symbol greater than errLog.add(1, “to ” + s); return […]

BoneCP和Derby – 如何正确关闭

我有: BoneCP CONNECTION_POOL = …; CONNECTION_POOL.getConfig().setJdbcUrl(“jdbc:derby:database…;shutdown=true”); Connection connection = CONNECTION_POOL.getConnection(); connection.close(); CONNECTION_POOL.shutdown(); 但是,这会导致以下exception: 3274 [com.google.common.base.internal.Finalizer] ERROR com.jolbox.bonecp.ConnectionPartition – Error while closing off internal db connection java.sql.SQLException: Cannot close a connection while a transaction is still active. at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source) at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source) at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source) at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.checkForTransactionInProgress(Unknown Source) at […]

尝试将JPA与Derby一起使用时ClassNotFoundException:org.apache.derby.jdbc.EmbeddedDriver

我问过一个相关的查询: 如何配置和打包一个简单的Java应用程序来使用JPA 我有一个简单的Derby数据库,我可以通过WebLogic中托管的EJB连接到该数据库。 现在我想使用JPA从命令行Java应用程序连接到它。 到目前为止,这个Java代码+ persistence.xml文件引发了以下错误。 我究竟做错了什么? 我的目录布局: C:. │ Registrar.class │ Registrar.java │ TxnClient.class │ TxnClient.java │ └───META-INF persistence.xml 独立客户端: import javax.persistence.*; public class TxnClient { public static void main(String[] args) throws Exception { EntityManagerFactory factory = Persistence.createEntityManagerFactory(“SRS-EM”); EntityManager manager = factory.createEntityManager( ); try { } finally { manager.close( ); factory.close( ); } } […]

如何将德比改为READ / WRITE模式

我有一个Derby数据库,它给我一个只读错误。 数据库工作正常,直到上周磁盘空间不足时: Caused by: java.io.IOException: No space left on device at java.io.RandomAccessFile.writeBytes0(Native Method) at java.io.RandomAccessFile.writeBytes(RandomAccessFile.java:520) at java.io.RandomAccessFile.write(RandomAccessFile.java:550) at org.apache.derby.impl.store.raw.log.LogAccessFile.writeToLog(Unknown Source) at org.apache.derby.impl.store.raw.log.LogAccessFile.flushDirtyBuffers(Unknown Source) … 23 more 我清理了磁盘,有80%的磁盘被释放为德比。 但是德比仍处于只读模式: java.sql.SQLException: An SQL data change is not permitted for a read-only connection, user or database. org.apache.derby.impl.jdbc.EmbedSQLException: An SQL data change is not permitted for a read-only connection, […]

JavaDB(derby)数据库的路径?

使用嵌入式驱动程序,我可以使用JDBC URL连接到我的derby数据库: jdbc:derby:mydbname 但是,我通常把db的完整路径放在: jdbc:derby:/Users/oreyes/dbs/mydbname 有没有办法我可以只指定数据库名称,并有类似“db_path”之类的东西?