我正在使用derby作为嵌入式数据库.此外,我正在使用它的内存数据库选项进行单元测试.
我无法弄清楚的是如何正确关闭(快速查看代码) Derby数据库.我相信我让它适用于标准数据库但我在内存数据库中尝试类似代码时会遇到不同的异常.
我将省略细节,如果需要其他感觉,我会添加它们.
基本上,我试图在这两种方式中关闭我的数据库,我的内存数据库一直被称为"呃":
DriverManager.getConnection("jdbc:derby:memory:eh;shutdown=true");
Run Code Online (Sandbox Code Playgroud)
然后:
DriverManager.getConnection("jdbc:derby:eh;shutdown=true");
Run Code Online (Sandbox Code Playgroud)
前者导致异常但不是预期的异常.细节是:
java.sql.SQLNonTransientConnectionException:数据库'内存:呃'关闭.
后者导致
java.sql.SQLException:找不到数据库'呃'.
根据我能够弄清楚的,我们想要一个SQLException但不是我们收到的那个.另一方面,SQLNonTransientConnectionException错误似乎更合适,但不是正确的类型(虽然它是派生的SQLException),也没有正确的状态代码.州代码最终是:08006.
我的示例代码说明了SQLException一个SQL状态为"XJ015"的代码.
注意:我引用的示例是:WwdEmbedded Program(Java Code).
我正在使用Derby ij来查看我的本地Apache Derby数据库.它只是一个文件夹,我这样连接到它:
connect 'jdbc:derby:C:\Users\Torben\MyDatabase' USER 'me' PASSWORD 'secret';
Run Code Online (Sandbox Code Playgroud)
它可以工作,但我真的不想在控制台中查看数据库.还有其他工具吗?最好的是GUI.
我在spark-shell使用时开始看到错误spark-1.6.0-bin-hadoop2.6.这是刚刚出现的新行为.
下面的日志消息中显示的失败的结果是sqlContext不可用(但sc是).
是否有某种可以释放的Derby锁? Another instance of Derby may have already booted the database /root/spark-1.6.0-bin-hadoop2.6/bin/metastore_db.
<console>:16: error: not found: value sqlContext
import sqlContext.implicits._
^
<console>:16: error: not found: value sqlContext
import sqlContext.sql
16/05/25 11:00:00 ERROR Schema: Failed initialising database.
Failed to start database 'metastore_db' with class loader org.apache.spark.sql.hive.client.IsolatedClientLoader$$anon$1@c2191a8, see the next exception for details.
org.datanucleus.exceptions.NucleusDataStoreException: Failed to start database 'metastore_db' with class loader org.apache.spark.sql.hive.client.IsolatedClientLoader$$anon$1@c2191a8, see the next exception for details.
16/05/25 11:06:02 WARN Hive: Failed to access …Run Code Online (Sandbox Code Playgroud) 我为Hibernate + MySQL编写了一个项目.现在我将它移植到德比(出于多种原因).
现在我发现在查询中使用LIKE时,Derby区分大小写.这可以使用Restrictions.ilike(...)Criteria查询来解决...但我有许多使用它的复杂 HQL查询.有没有办法ilike在HQL中使用类似的功能?
我想在独立的应用程序中使用嵌入式德比的hibernate,我有一些问题:
如果你也可以建议我这个方法的一些好的教程,这将是更好的,提前谢谢.
我正在给Apache Derby,也就是JavaDB.在插入可能已存在的记录时,我似乎无法解决重复的关键问题.是否有相当于" insert if not exists"或" merge" 的Derby ?
同样,有没有办法做" drop table foo if exists" 这样的事情?
我打算将GlassFish v3开源版本部署到生产环境中.它带有JavaDB(Apache Derby),这正是我需要的.唯一的问题是GlassFish启动时默认情况下不启动JavaDB.我必须转到命令行并输入:
asadmin start-database
Run Code Online (Sandbox Code Playgroud)
有没有办法让数据库在服务器(GlassFish)启动时自动启动?我讨厌每次在开发应用程序时手动执行此操作,我当然不希望在生产中执行此操作.
提前致谢
美好的一天!
Derby/Java DB与MySQL的CONCAT功能的等效功能是什么?
我尝试将CONCAT用于Derby,但它提交了一个错误.
在过去的几年里,我一直主要使用Oracle,并且习惯于将单字符varchar列用作布尔值.
我也可以看到(每个堆栈溢出答案),MySQL的建议类型是TINYINT.
现在我接受了我的小方案项目 - 使用DerbyDB,它支持BOOLEAN列,但直到10版左右才开始.
所以,问题是,为什么在设计关系数据库时合并BOOLEAN列如此困难?我是否遗漏了某些内容,或者它只是将待办事项列表推到了不重要的位置,因为您可以同时使用其他列类型?