h2 数据库“mem:MyDB”未找到 [90013-192]

Posted

技术标签:

【中文标题】h2 数据库“mem:MyDB”未找到 [90013-192]【英文标题】:h2 Database "mem:MyDB" not found [90013-192] 【发布时间】:2018-01-03 00:35:27 【问题描述】:

我正在尝试使用 h2 创建数据库,我为它运行并连接到 Generic H2 (Server) 与以下位置

驱动类:org.h2.jdbcx.JdbcDataSource

JDBC URL:jdbc:h2:mem:MyDB

用户名:sa

密码:sa

这是我使用它的代码

package MainPac
import io.getquill._
object DataBaseService  extends App 
  lazy val ctx = new H2JdbcContext(SnakeCase, "db")
  case class TEST(ID:Int,NAME :String)

  import ctx._
  var thisistest= quote 
    query[TEST].map( r => r.NAME)
  
   ctx.run(thisistest)

在配置文件中

 `db 
 dataSourceClassName : "org.h2.jdbcx.JdbcDataSource"
 dataSource.url : "jdbc:h2:mem:MyDB;IFEXISTS=TRUE;DB_CLOSE_DELAY=-1"
 dataSource.user : "sa"

`

【问题讨论】:

【参考方案1】:

上下文定义

lazy val ctx = new H2JdbcContext(SnakeCase, "ctx")

application.properties

ctx.dataSourceClassName=org.h2.jdbcx.JdbcDataSource
ctx.dataSource.url=jdbc:h2:mem:yourdbname
ctx.dataSource.user=sa

试试 yourdbname 小写。

【讨论】:

以上是关于h2 数据库“mem:MyDB”未找到 [90013-192]的主要内容,如果未能解决你的问题,请参考以下文章

h2 持久存储:未找到数据库

H2数据库用户定义的java函数类未找到

org.h2.jdbc.JdbcSQLException:在使用 H2 数据库进行测试期间未找到列“Id”

尝试连接时未找到 H2 驱动程序

未找到 Hibernate H2 数据库

带有 H2 和 data.sql 的 Spring Boot Data JPA - 未找到表