当前位置: 首页 > 知识库问答 >
问题:

Spring和H2迁移

阚英武
2023-03-14

SQL语句“create TABLE LANGUAGES(
ID INT无符号主键AUTO_INCREMENT,
WELCOMEMSG VARCHAR(100)NOT NULL,
CODE VARCHAR(3),
)[*]”中的语法错误;预期的“标识符”;SQL语句:
创建表语言(
id int无符号主键auto_increment,
welcomeMsg varchar(100)not null,
code varchar(3),
)[42001-200]
位置:db/migration/v1__create_languages_table.SQL(C:\users\ja\downloads\hello
(1)\hello\target\classes\db\migration\v1_create_languages_table.SQL)
行:1
语句:创建br>代码varchar(3),)
只是为了确保,有问题的代码

create table languages (
id int unsigned primary key auto_increment,
welcomeMsg varchar(100) not null,
code varchar(3),

);

我只是一个Java/编程的初学者,对我来说都有点陌生。任何帮助都非常感谢

共有1个答案

督飞羽
2023-03-14

您需要删除无效逗号之前关闭括号;它不再被H2默默地忽略,只有旧版本的H2可以解析它。1.4.200更加严格。

我还建议您删除无符号修饰符,常规模式下1.4.201不允许使用该修饰符。它只在MySQL兼容模式下被接受(并被忽略,就像在1.4.200中一样)。

 类似资料:
  • 我只是试图查看嵌入式H2数据库的H2数据库内容,当我没有在中指定任何内容并从mvn spring:run开始时,spring-boot创建了嵌入式H2数据库。我可以看到hibernate JPA正在创建表,但是如果我试图访问下面URL处的h2控制台,数据库没有表。 我看到这样的建议:查看Spring启动的嵌入式H2数据库的内容 但是我不知道将建议的XML放入spring-boot的何处,即使我放了

  • 问题内容: 当我未在application.properties中指定任何内容并以mvn spring:run开头时,我只是想查看spring-boot创建的嵌入式H2数据库的H2数据库内容。我可以看到hibernate的JPA正在创建表,但是如果我尝试在数据库下面的URL下访问h2控制台,则该表没有表。 我看到这样的建议: 查看由Spring启动的嵌入式H2数据库的内容 但是我不知道在Sprin

  • 问题内容: 对于单元测试(如果需要,可将其称为集成测试),我已经在Spring配置中配置了嵌入式数据库,如下所示: 现在,从命令行运行测试时,它们可以正常工作,但是最后我得到一些错误(无害,但很烦人): 现在,包含在异常中的提示通常很好,但是如何将此属性添加到嵌入式数据源?我是否必须扩展它,手动配置它以添加此类 “高级” 功能? 问题答案: 在JDBC网址jdbc:h2:〜/ test中 指定参数

  • 从升级到时,我收到以下错误,尽管SQL脚本没有改变: Spring Boot建议 为确保架构升级顺利进行,请按照以下说明操作: > < li> 首先将您的1.5.x Spring Boot应用程序升级到Flyway 4(撰写本文时为4.2.0),请参见Maven和Gradle的说明。 将架构升级到 Flyway 4 后,升级到Spring启动 2 并再次运行迁移以将应用程序移植到 Flyway 5

  • 我正在使用SpringBoot2,我正在尝试使用H2 Liquibase JUNIT配置一个单元测试。 我认为liquibase没有执行更改日志文件并应用SQL命令,单元测试不识别我的表。 我在文件中放入了错误的sql,以查看是否执行了changelog文件,但似乎没有执行。 为什么我的应用程序不能访问表?也许liquibase没有执行? 在src/test/resource中,我有一个文件:ap

  • 我想在状态设置为“过去”时保存投票结果。我有一个H2 db,想添加一个只存储结果的mongoDB。我如何用Spring boot实现这一点? 到目前为止,我有一个投票程序,您可以在其中创建投票、编辑投票、投票等。 我添加了mongoDB,Spring引导,Springmvc和H2 db等依赖项。 这是我的应用程序属性: 我尝试过做一个接口mongoRepository: 投票类别: