You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot连接SQL Server报错求助:DialectResolutionInfo为空问题

解决Spring Boot连接SQL Server 2014 Express的启动错误

从你的报错信息和配置来看,核心问题出在数据库连接配置错误以及无效的JPA配置,导致Hibernate无法正确获取方言信息,下面是具体的修复步骤:

1. 修正JDBC URL格式

你的SQL Server URL格式有误,SQL Server JDBC URL的端口应该用**冒号(:)**分隔,而不是斜杠(/),正确的格式应该是:

spring.datasource.url=jdbc:sqlserver://PCXXXXX\\SQLEXPRESS:1433;databaseName=mohan

注意:如果你的SQLEXPRESS实例使用的不是默认1433端口,需要替换成实际端口,可以在SQL Server配置管理器中查看TCP/IP的端口号。

2. 修复JPA的ddl-auto配置

你配置的spring.jpa.hibernate.ddl-auto =ddl-auto是无效值,Hibernate不识别这个选项,需要替换为合法值,比如:

# 根据你的需求选择:update(更新表结构)、create(每次启动创建表)、none(不操作表结构)等
spring.jpa.hibernate.ddl-auto=update

3. 确认SQL Server实例的基础配置

即使配置文件正确,也需要确保你的SQL Server 2014 Express满足以下条件:

  • 开启了TCP/IP协议:在SQL Server配置管理器 -> SQL Server网络配置 -> SQLEXPRESS的协议中,启用TCP/IP。
  • 防火墙允许1433端口(或你实际使用的端口)的入站连接。
  • 你的mohan用户拥有访问mohan数据库的权限,并且SQL Server的混合认证模式已开启。

4. 升级JDBC驱动版本适配Java 11

你使用的mssql-jdbc:6.1.0.jre8是针对Java 8的版本,而你的Java版本是11,可能存在兼容性问题,建议升级到兼容Java 11的驱动版本,比如:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>9.4.1.jre11</version>
</dependency>

这个版本和你的Spring Boot 2.2.2.RELEASE版本兼容性良好。

完成以上修改后,重新启动应用,应该就能正常连接到SQL Server数据库了。

内容的提问来源于stack exchange,提问作者Mohan vel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 09:27:39