问题标签 [h2]
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 - H2 控制台 - 通过浏览器查看数据库会显示旧数据
我将H2 数据库用于一个简单的 Web 应用程序。
当我尝试通过 H2 控制台 Web 浏览器查看数据时,它似乎没有使用数据库中的最新数据进行更新。
例如:
我使用我的网络应用程序向表中添加了一条新记录,当我select *
从表中添加记录时,它不显示新记录。
当我通过浏览器连接到 H2 控制台时,我有以下登录设置:
保存的设置:通用 H2(嵌入式)
设置名称:Generic H2(嵌入式)
驱动类:org.h2.Driver
JDBC URL:jdbc:h2:file:/Develops/Databases/snowy_db;FILE_LOCK=NO
关于如何使用 H2 控制台浏览器访问数据库中的最新数据的任何想法?
提前致谢。
编辑
补充一点:我可以在我的网络应用程序中看到新记录,但在我使用 H2 控制台浏览器时看不到。
java - 在 h2 数据库中插入视图
编辑:我想将值添加到使用该表的视图(viewPaziente)而不是直接使用该表的表(paziente)。
edit2:在代码中发现了一个愚蠢的错误,现在它确实给了我一个错误,但它没有帮助:
org.h2.jdbc.JdbcSQLException:不支持功能:“VIEW”;SQL 语句:INSERT INTO "viewPaziente" values(?,?,?,?,?,?,?,?,?,?,?,?,?) [50100-147]
是否可以在表格视图中插入一行?
我的意思是......我有一个包含许多字段的表“paziente”,我创建了一个 Paziente 视图,我想通过该视图向 paziente 添加一行。可以在H2中做到这一点吗?
我正在使用以下代码
embedded-database - 内存模式下的H2数据库不能被Console访问
我在 servlet 上下文启动时通过以下代码在 H2 数据库中创建内存数据库
我稍后在jdbc:h2:mem:db1
同一个 JVM 中通过 url 访问,这也在工作。但是当我想通过jdbc:h2:tcp://localhost/mem:db1
它访问它时,它在同一个 JVM 或不同的 JVM 中都不起作用。
我实际上想以嵌入式模式运行系统并使用控制台查看内容。如果我以相同的 servlet 上下文启动方法启动网络服务器,我可以看到控制台,但它仍然没有使用 url 连接到内存数据库jdbc:h2:tcp://localhost/mem:db1
。
如果我使用命令行启动服务器
然后尝试连接,令人惊讶的是它连接但没有数据。似乎它正在自己创建一个单独的服务器和一个不同的数据库。所以没有数据。
hsqldb - HSQLDB 相当于 H2 自动混合模式
有吗?显然不是。此处介绍 H2 自动混合模式 。
java - 如何从 CSV 文件的某些字段创建 h2 数据库
我想从 CSV 文件创建一个新的嵌入式 h2 数据库。这是csv文件的片段
国家、城市、口音城市、地区、人口、纬度、经度
广告,aixovall,Aixovall,06,,42.4666667,1.4833333
ad,andorra,Andorra,07,,42.5,1.5166667
广告,安道尔城,安道尔城,07,20430,42.5,1.5166667
ad,andorra-vieille,Andorra-Vieille,07,,42.5,1.5166667
ad,andorre,Andorre,07,,42.5,1.5166667
我不想检索 csv 文件的所有字段。实际上,我想要它们,除了City和Region字段。
此外,我想仅当POPULATION的内容不为空时才将 csv 文件的内容插入数据库。
因此,在上面的 csv 示例中,我们必须只将第 3 行插入到 h2 表 WORLDCITIES 中,因为它的“人口”字段已被指示。
这是我写的一段代码。但是,如您所见,这还不够:
如果我理解正确,CSVREAD 使用 VARCHAR 类型创建字段,但我想要这样的东西:
COUNTRY VARCHAR(3)、ACCENTCITY VARCHAR(40)、人口浮点数、纬度浮点数、经度浮点数
提前感谢您的帮助。
database - 如何在 H2 的查询结果中显示字段的隐藏字符?
我在 h2 数据库中有一个 varchar 字段,我希望能够看到每个字符(包括新行和回车等特殊字符)。
基本上,我需要知道Oracle 的 dump()的 h2 等价物。
sql - 创建 EntityManager (JPA + SPRING + H2) 时 INFORMATION_SCHEMA 不存在错误
我对 JPA (OpenJPA) + Spring (Web Flow using Spring Web MVC) + H2 数据库引擎有疑问。我为我的简单 Web 应用程序提供了简单的 RegisterDAO。我正在使用依赖注入将 EntityManagerFactory(通过 @PersistentUnit 注释)注入我的 RegisterDAO。一切看起来都很好(EntityManagerFactory 不为空,它似乎被注入了)但是当我试图从这个工厂创建 EntityManager 时出现问题。GlassFish(我使用的)抛出类似这样的异常(无法以原始形式打印,因为消息是波兰语:)):
这很奇怪,因为当我使用 H2 控制台并输入“SELECT SEQUENCE_SCHEMA, SEQUENCE_NAME FROM INFORMATION_SCHEMA.SEQUENCES”时,一切正常(我看到这组名为 INFORMATION_SCHEMA 的表)。当然,我将这个 sql 语句称为登录用户名,我在 persistence.xml 文件中使用它。
有任何想法吗?
编辑:我的配置:persistence.xml:
春季的applicationCotext.xml:
网络配置:
我使用 Maven,我的依赖项:
java - 我可以让 H2 在内存数据库中自动创建模式吗?
(我已经在内存中看到了 H2 数据库 - Init schema via Spring/Hibernate question;它在这里不适用。)
我想知道 H2 中是否有一个设置可以让我在连接到它时自动创建一个模式。如果有帮助,我只对内存中的情况感兴趣。
H2 在 URL 末尾支持各种以分号分隔的修饰符,但我没有找到用于自动创建模式的修饰符。有这样的功能吗?
java - 基本的 ORMLite 数据库问题
关于ORMLIte 网站上列出的示例,我有两个问题。
- 我在哪里放置数据库以及如何导入它?
- 我将DAO和连接工厂放在哪个类?