Tag: h2

连接有一个远程数据库

我从远程计算机使用H2数据库作为DBMS,因此我启用了从浏览器远程访问,如下所示: webAllowOthers=true 但是当我尝试从我的java应用程序连接到服务器时,我从H2获得此错误: remote connections to this server are not allowed 截图: 并且已经在查看代码分析器(错误代码:90117): REMOTE_CONNECTION_NOT_ALLOWED = 90117 如果不允许远程连接,则尝试从另一台计算机连接到TCP服务器时会引发代码90117的错误。 要允许远程连接,请使用选项-tcpAllowOthers启动TCP服务器,如下所示: java org.h2.tools.Server -tcp -tcpAllowOthers 或者,从应用程序启动服务器时,使用: Server server = Server.createTcpServer(“ – tcpAllowOthers”); server.start(); 我不明白如何激活tcpAllowOthers ,它在.h2.server.properties中不存在?

使用基于Java的配置在服务器模式下设置H2

我有spring XML,使我能够使用以下配置在服务器模式下启动H2数据库: create-drop true 我想转换为基于java的配置。 我在这里似乎是一个post: 使用Spring启动和设置内存数据库,询问一些相同的问题,我查看了http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/ html / jdbc.html#jdbc-embedded-database-support for Embedded Database但它没有说明如何将H2模式设置为服务器模式。 它只在“mem”模式下为我启动服务器。 我有以下代码: EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder(); builder.setType(EmbeddedDatabaseType.H2); builder.setName(DATABASE_NAME); builder.addScript(H2_SCHEMA); builder.addScript(H2_TEST); return builder.build(); 也许使用EmbeddedDatabaseBuilder(ResourceLoader)可能会起作用。 有人有一些示例代码吗?

在Jar内部打包并使用嵌入式数据库(H2.db文件)?

我在我的应用程序中使用H2嵌入式数据库。 我想在它自己的Jar中包含应用程序所需的一切,如果可能的话, 包括它的数据库 。 我的应用程序不需要创建临时文件或任何东西,所以基本上用户只运行Jar。 是否可以在Jar中嵌入数据库,并且能够INSERT新记录以及SELECT out? 编辑:只是为了澄清,我不打算将H2驱动程序jar嵌入到我的可分发jar中,我希望将h2数据库文件( someDatabase.h2.db文件)嵌入到Jar中并且仍然可以写入/从该数据库中读取。

如何在localhost:8082查看我的h2数据库中的所有表?

我使用JDBC并从sql脚本创建名为usaDB的h2数据库。 然后我用jdbc填充所有表。 问题是我在localhost:8082连接到usaDB后,我在左边的树上看不到我的表。 我只指定了创建usaDB的INFORMATION_SCHEMA数据库和rootUser。 如何在h2数据库中查看表的内容? 我尝试查询SELECT * FROM INFORMATION_SCHEMA.TABLES 。 但它返回了许多表名,除了我创建的名称。 我的快照:

有H2数据库的真实世界经验吗?

有没有人有H2数据库的真实世界经验? 我对……感兴趣: 性能 稳定性 虫子

Spring的嵌入式H2数据源和DB_CLOSE_ON_EXIT

对于unit testing(如果需要,可以调用它们进行集成测试)我在Spring配置中配置了一个嵌入式数据库,如下所示: 现在,当从命令行运行测试时,它们工作正常,但最后我得到一些错误(无害,但令人恼火): WARN 2013-03-25 12:20:22,656 [Thread-9] osjdeH2EmbeddedDatabaseConfigurer ‘Could not shutdown embedded database’ org.h2.jdbc.JdbcSQLException: Database is already closed (to disable automatic closing at VM shutdown, add “;DB_CLOSE_ON_EXIT=FALSE” to the db URL) [90121-170] at org.h2.message.DbException.getJdbcSQLException(DbException.java:329) ~[h2-1.3.170.jar:1.3.170] … at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryBean.destroy(EmbeddedDatabaseFactoryBean.java:65) [spring-jdbc-3.2.1.RELEASE.jar:3.2.1.RELEASE] at org.springframework.beans.factory.support.DisposableBeanAdapter.destroy(DisposableBeanAdapter.java:238) [spring-beans-3.2.1.RELEASE.jar:3.2.1.RELEASE] 现在,exception中包含的提示一般很好,但是如何将此属性添加到嵌入式数据源? 我是否必须扩展它,手动配置它可以说,添加这样的“高级”function?

如何将H2控制台连接到嵌入式Spring H2 DB

好的,我正在开发简单的应用程序,它有Spring Ebedded H2数据库用于开发。 database.xml bean conf看起来像这样: H2数据库正在初始化,我的应用程序正在运行,我正在创建实体,并且它们在Tomcat启动时存储在H2 db中(我知道它因为我使用并检索它们)。 但是,当我查看H2控制台时,我的实体表不存在。 我想H2控制台指向另一个H2数据库,而Spring Embedded H2 Db与那个H2控制台无关。 如何解决? 编辑:我通过在我的网络浏览器中输入http:// localhost:8082来访问H2控制台。

H2数据库中的存储过程

我是数据库的新手,最近开始编写H2数据库的测试用例。 我想知道如何在Eclipse中测试存储过程。 我见过以下内容: http://www.h2database.com/html/features.html#user_defined_functions 如何在H2中创建程序 h2database链接中给出的示例代码, “CREATE ALIAS NEXT_PRIME AS $$ String nextPrime(String value) { return new BigInteger(value).nextProbablePrime().toString(); } $$; ” 应该在哪里宣布?以及如何运行它? PS – 我有H2 JAR文件并正在测试它。 如果有人可以告诉我如何在Java中为H2编写一个简单的存储过程,那将会有很大的帮助。 在H2中还有以下任何等价物吗? “开始dbms_output”? 谢谢。

在Web控制台中看不到我的H2数据库

我用我的代码用这个URL创建了一个H2数据库: JDBC:H2:C:/data/fixed.db 我的代码可以创建表,执行查询。 如果我手动打开文件,我可以成功查看其内容并查看创建查询等 但是,当我尝试使用H2控制台和Web界面时,我看不到数据库。 相反,Web控制台会在此处创建另一个空数据库C:/data/fixed.db.mv.db 。 我只是无法加载我的数据库。 我错过了什么? 编辑 我的代码使用H2 1.3.175 Web控制台H2 1.4.178

无法在H2 DB中调用触发器

我尝试运行一个简单的类从Java代码调用TRIGGER,我使用H2 DB,你能帮助我吗? 这是我的简单代码(如H2中的示例代码): public class TriggerTest { public static void main(String[] args) throws Exception { System.out.println(TriggerTest.MyTrigger.class.getName()); Class.forName(“org.h2.Driver”); Connection conn = DriverManager.getConnection(“jdbc:h2:tcp://localhost/~/chap1”, “sa”, “sa”); Statement stat = conn.createStatement(); stat.execute(“Drop Table if exists INVOICE”); stat.execute(“Drop Table if exists INVOICE_SUM”); stat.execute(“CREATE TABLE INVOICE(ID INT PRIMARY KEY, AMOUNT DECIMAL)”); stat.execute(“CREATE TABLE INVOICE_SUM(AMOUNT DECIMAL)”); stat.execute(“INSERT INTO INVOICE_SUM VALUES(0.0)”); stat.execute(“CREATE TRIGGER […]