问题标签 [derby]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 管理对 Apache Derby 数据库的并发访问
我有一个 Apache Derby 数据库在 java swing 应用程序中运行(以网络模式),我通过 java 客户端应用程序通过直接 JDBC 调用连接到它。
这一切都很好,而且效果很好,但是我知道为这个客户端/服务器应用程序实现并发许可证还有一个额外的要求。
理想情况下,具有单用户许可证的用户应该能够在笔记本电脑上运行 1 个客户端应用程序,并在台式机上运行第二个客户端应用程序,并且能够从两者连接到服务器。
我没有网络服务器的奢侈,所以我想知道我唯一的选择是否是在 Derby 中使用“maxthreads”运行时属性,并从本质上强制用户必须注销笔记本电脑,说他们是否想然后使用从他们的桌面应用程序。
如果我将时间片属性保留为 0,那么将调用 getConnection 超时,以便我可以向用户显示一条消息,说明他们需要断开其中一个客户端应用程序的连接。
连接线程是一种可靠的方法吗?
我错过了另一个解决方案吗?
database - 列出 Apache Derby 活动连接
是否可以查询 Apache Derby 以获取当前连接/活动会话的列表?任何系统表等?
database - 哪个嵌入式数据库具有最大的 SQL 合规性和并发支持?
我的应用程序目前使用 Microsoft Access,但现在可能托管在 Linux 机器上。此外,当从多台计算机访问时,其中一台可能会更新记录(当其他用户读取时)。
我还要求嵌入式数据库应该支持复杂的 SQL 查询——比如内部 SQL、Join 等。
我试过SQLite,但许多现有的查询都失败了,或者需要修复(比如在一个简单的查询中,使用内连接 FROM 之后的括号对 SQLite 来说是不可接受的,必须删除)。也不支持右连接。
我开始了解Apache Derby和H2,但首先希望得到您的宝贵意见。
编辑:
我忘了提到我的应用程序完全是用 Java 编写的。
编辑:
在预设中,我使用 Microsoft Access mdb,在网络驱动器上共享,从远程计算机建立无 DSN 连接。
更新
我用 Firebird 进行了试验,它确实看起来非常好,零管理员,并且符合 SQL。它很快,而且我可以尝试的任何典型查询都没有问题。我对它非常满意,并希望将它用于我提出这个问题的项目。
希望 Advantage Server 也会很好,但没有时间审查它。在查看/使用 Firebird 后,觉得没有必要尝试其他任何东西。
java - JavaDB 连接错误(网络协议)
我正在尝试使用以下方法连接到 derby:
但我得到一个错误:
无法建立连接,因为数据库名称 (...) 大于网络协议允许的最大长度。
有没有办法增加这个长度?
java - java - 如何在休眠中使用Java DB(名为Derby)?
我可以通过 Eclipse Database Development 连接 Derby,但我无法通过 Hibernate 将具有相同 url 的 Derby 与 Eclipse Database Development 连接。
错误:
“引起:java.sql.SQLException:另一个 Derby 实例可能已经启动了数据库”
java - 限制 Derby 日志文件大小
每当 Apache Derby 在我们的应用程序中抛出 SQLException 时,我们的应用程序就会将 derby.log 文件的内容发送到我们的服务器。
为了获得详细的日志,我们将 'derby.infolog.append' 属性设置为 true。
但是,我们注意到日志文件非常大,因为每次连接到数据库时日志还包含启动输出。
注意:我们在嵌入式模式下使用 Derby。
有没有办法让 derby 限制它记录到 derby.log 文件的总行数?
例如,只记录最近的 1000 行日志,然后开始覆盖最旧的条目。
我们的目标是从最终用户那里获得有用的调试信息,但要防止日志文件增长到无法管理的大小。
提前致谢,
吉姆
sql - 仅使用通配符 (%) 作为值的 SQL LIKE 性能
我想知道与根本没有 where 子句相比,使用 LIKE 关键字和通配符作为值的查询性能如何。
考虑一个 where 子句,例如“WHERE a LIKE '%'”。这将匹配列“a”的所有可能值。这与根本没有 where 子句相比如何。
我问这个的原因是我有一个应用程序,其中有一些用户可以指定要搜索的值的字段。在某些情况下,用户想要所有可能的结果。我目前正在使用这样的单个查询:
可以提供 '%' 和 '%' 的值以匹配 a 和或 b 的所有可能值。这很方便,因为我可以在我的应用程序中为此使用单个命名查询。我想知道对此的性能考虑是什么。查询优化器是否会减少 LIKE '%' 以简单地匹配所有?我意识到,因为我使用的是命名查询(准备好的语句),这也可能会影响答案。我意识到答案可能是特定于数据库的。那么具体来说,这将如何在 Oracle、MS SQL Server 和 Derby 中工作。
另一种方法是根据用户输入通配符使用 3 个单独的查询。
A 是通配符查询:
B 是通配符查询:
A 和 B 是通配符:
没有通配符:
显然,只有一个查询是最简单和最容易维护的。如果性能仍然很好,我宁愿只使用一个查询。
java - SQLite,德比与文件系统
我正在开发一个从/向不同文件读取和写入的 Java 桌面应用程序。我认为更好的解决方案是用 SQLite 数据库替换文件系统。迁移到这个系统并在我的应用程序中嵌入数据库有多难?有真正的性能提升吗?非常感谢
java - ClassNotFoundException
当我尝试运行与 Java DB 交互的 Java 类时,出现以下错误。
我尝试加载驱动程序:
在库中,确实存在“derby.jar”。我正在使用 NetBeans IDE 6.0。
谁能帮我解决这个问题?
java - 是否可以通过 MS Access/ExcelP 等程序访问嵌入式 Derby 数据库以进行分析
我想通过我的 Java 应用程序从 MS Access/Excel、Open Office 等程序访问存储在嵌入式 Derby 数据库中的数据?
有没有办法做到这一点?我想这可以实现的唯一方法是如果 Apache Derby 带有 ODBC 驱动程序,对吗?