草庐IT

h2database

全部标签

java - 使用 H2 数据库的 JDBC 中的年份从负 -509 变为正 510

-509对比510我看到使用JDBC时发生了某种更改或错误的数据。所以我观察使用H2DatabaseJava8更新151上的版本1.4.196。这是一个完整的例子。请注意我们如何检索日期值三次,第一次作为LocalDate对象,第二次作为文本,第三次作为从转换中提取的int年份数字>LocalDate对象。在文字版中我们可以看到年份确实是负数。奇怪的是,LocalDate有一个不同的年份,它是正数而不是负数。似乎是一个错误。privatevoiddoIt(){System.out.println("BASIL-RunningdoIt.");try{Class.forName("org.

java - 为什么 ‘No database selected’ SQLException?

这个问题在这里已经有了答案:java.sql.SQLException:Nodatabaseselected-why?(4个答案)关闭3年前。为什么这个程序在第二次进入dowhile循环时没有执行,为什么它给出异常“Exceptionjava.sql.SQLException:[MySQL][ODBC5.1Driver][mysqld-5.0.51a-community-nt]没有选择数据库”//importjava.io.InputStream;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.

java - 续行 Spring SQL ScriptUtils(使用 H2)

我有以下SQL脚本(initDB.sql)CREATETABLEFFShareHistorical(IDintNOTNULLAUTO_INCREMENT,PX_LASTDoubleDEFAULTNULL,PX_OPENDoubleDEFAULTNULL,PX_HIGHDoubleDEFAULTNULL,PX_LOWDoubleDEFAULTNULL,PRIMARYKEY(ID))并希望使用Spring的ScriptUtils(4.1.4.RELEASE)来执行它,即Resourcerc=newClassPathResource("initDB.sql");ScriptUtils.exe

java - 如何在 Spring Boot 应用程序启动时启动 H2 TCP 服务器?

通过将以下行添加到SpringBootServletInitializermain方法中,我可以在将应用程序作为SpringBoot应用程序运行时启动H2TCP服务器(文件中的数据库):@SpringBootApplicationpublicclassNatiaApplicationextendsSpringBootServletInitializer{publicstaticvoidmain(String[]args){Server.createTcpServer().start();SpringApplication.run(NatiaApplication.class,args)

java - 如何使用 Hibernate 将 java.time.LocalDateTime 映射到 H2 数据库中的 TIMESTAMP?

我有一个基于Java8构建的项目。我有一个实体和java.time.LocalDateTimecreationDate属性。在数据库中,该列是TIMESTAMP以与Oracle保持一致。不幸的是,默认情况下H2数据库将LocalDateTime视为BINARY值。当查询被触发时,应用程序失败并在LocalDateTime属性和TIMESTAMP列之间进行转换。如何强制H2将LocalDateTime转换为TIMESTAMP列而不是BINARY?编辑:看起来这不是H2问题,而是来自Hibernate(v.5.0.12)。即使在这里:https://www.thoughts-on-java

java - Apache Derby - java.sql.SQLException : Failed to start database

首先,这是我第一次使用ApacheDerby。我正在使用netbeans,愿意使用嵌入式apachederby,并且我按照以下教程配置和安装数据库。然后,我使用项目属性将derby.jar文件附加到我的项目。http://netbeans.org/kb/docs/ide/java-db.html#starting所附图片将显示我在netbeans中的数据库状态我的数据库名称是“联系人”。表名为“FRIENDS”。以下是我的测试代码**DatabaseConnector.java**importjava.sql.*;publicclassDataBaseConnector{private

java - H2 数据库 : referring to a table in root schema from a foreign key constraint

给定根架构中的表:CREATETABLEuser(usernameVARCHAR(50),passwordVARCHAR(50));和Quiz模式中的表:CREATETABLEQuiz.Results(usernameVARCHAR(50),pointsINT,FOREIGNKEY(username)REFERENCESuser(username));我无法实际创建外键,因为数据库声称表user实际上并不存在。我也不能随后添加外键:ALTERTABLEQUIZ.RESULTSADDFOREIGNKEY(username)REFERENCESuser(username)当然,这两个表都存

java - 在 h2 中重置自动增量

我正在测试一个返回json响应的Controller,但是测试第一次失败,因为h2数据库没有重置自动递增ID。使用夹具或手动创建对象有同样的问题。@BeforepublicvoidsetUp(){Fixtures.deleteAllModels();Fixtures.loadModels("data.yaml");}如何解决这个问题? 最佳答案 启动您的play应用程序,使用此url启动浏览器(如果您在本地运行play应用程序):http://localhost:9000/@db输入您的h2数据库,然后键入以下命令并运行:ALTER

java - hibernate h2 可嵌入列表预期为 "identifier"

我正在尝试在我的员工实体中关联一个函数列表(可嵌入),而H2似乎对这种期望“标识符”的说法不满意Causedby:org.h2.jdbc.JdbcSQLException:SyntaxerrorinSQLstatement"CREATETABLEEMPLOYEE_FUNCTIONS(EMPLOYEE_EMPLOYEEIDVARCHAR(255)NOTNULL,ACTIVEBOOLEANNOTNULL,DEPARTMENTNUMBERINTEGERNOTNULL,DESCRIPTIONVARCHAR(255),ORDER[*]INTEGERNOTNULL)";expected"ident

java - org.h2.jdbc.JdbcSQL异常 : Schema "MYAPP" not found; SQL statement

我正在尝试将H2数据库与sprintjunit测试一起使用,如下所示:1-SpringTestingConfig:@Configuration@ComponentScan(basePackages="com.myapp.data",excludeFilters={@Filter(Configuration.class)})@PropertySource("classpath:/test.properties")@Profile("test")publicclassSpringTestingConfig{@BeanpublicDataSourcedataSource(){DriverMa