繁体   English   中英

连接到 H2 数据库

[英]connecting to H2 database

我有一个名为 xxx.h2.db 的文件我的目标是能够执行查询以删除/编辑记录(最好在 C# 应用程序中)。

海狸

我尝试使用 H2 嵌入式选项使用 DBeaver 打开文件。 这导致2个模式:

  • INFORMATION_SCHEMA
  • 上市

不幸的是,公共模式没有表。 考虑到文件大小约为 150mb,我没想到会有这个结果。 打开数据库时,我注意到它在 H2 数据库的目录中创建了另外两个文件:

  • xxx.h2.db.mv.db
  • xxx.h2.db.trace.db

C#

尝试使用本文中提到的 ODBC 驱动程序时: https://wiki.postgresql.org/wiki/Using_Microsoft_.NET_with_thePostgreSQL

我遇到了这一步,我不确定要输入什么信息。 ODBC 数据源管理员图片

安装 ODBC 驱动程序后,您需要添加新的用户数据源。 这是通过转到“控制面板”、“管理员”来实现的。 工具”、“数据源 (ODBC)”。 然后选择“添加用户 DSN”。 [注意:这些名称和位置可能会因不同的 Win 操作系统而略有不同。]

Select PostgreSQL 驱动程序,并填写您的服务器和数据库详细信息。 您还必须指定唯一的 DSN 名称; 在 Windows 2000 中,令人困惑的是,该字段在数据输入对话框中标记为“数据源”,而不是更合适的“数据源名称”。 您稍后将在程序中使用此名称来指定要使用的数据库连接。 当然,对于不同的数据库、服务器和用户,您可以拥有任意数量的用户 DSN 条目。

问题

  1. 为什么我在 DBeaver 中看不到任何公共表?
  2. 我是否在正确的轨道上让它通过 ODBC 工作? 我应该输入哪些信息?

谢谢

  1. 看起来您在连接 URL ( xxx.h2.db ) 中包含了文件扩展名,但您需要指定不带扩展名的数据库路径 ( xxx )。

    另请注意, .h2.db扩展名属于旧存储引擎(PageStore),仍然支持,但有一些限制。

    此外,您需要确保使用与创建数据库文件时使用的 H2 版本相同的版本,使用不同版本可能会导致其损坏。

  2. 通过 ODBC 与用于 PostgreSQL 的 ODBC 驱动程序连接到 H2 只是实验性的,它可能根本不起作用。 自上一个版本以来,这方面有一些改进,但即使 H2 是从其当前来源编译的,这也不是一件可靠的事情。 此外,与此驱动程序的 ODBC 连接现在使用 H2 的 PostgreSQL 兼容模式,因此它们可能与您现有的数据库不兼容。 您还可以尝试使用一些第三方(可能是商业)桥接 JDBC 来代替该功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM