Sql server java.sql.SQLException:用户登录失败

Sql server java.sql.SQLException:用户登录失败,sql-server,hibernate,Sql Server,Hibernate,我正在尝试将Hibernate配置为连接到MS SQL Server 2005 Management Studio Express,但无法登录。我到处寻找解决办法,但找不到任何有帮助的 我知道密码和用户名是正确的,但它们似乎不起作用。如果有人能帮忙,我将不胜感激 这是我的配置文件: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibe

我正在尝试将Hibernate配置为连接到MS SQL Server 2005 Management Studio Express,但无法登录。我到处寻找解决办法,但找不到任何有帮助的

我知道密码和用户名是正确的,但它们似乎不起作用。如果有人能帮忙,我将不胜感激

这是我的配置文件:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
 "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
 "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
 <session-factory>
  <!-- Database connection settings -->
  <property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
  <property name="connection.url">jdbc:jtds:sqlserver://***********/**********; databaseName=Scores</property>
  <property name="connection.username">*****</property>
  <property name="connection.password">******</property>

  <!-- JDBC connection pool (use the built-in) -->
  <property name="connection.pool_size">1</property>

  <!-- SQL dialect -->
  <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>

  <!-- Enable Hibernate's automatic session context management -->
  <property name="current_session_context_class">thread</property>

  <!-- Disable the second-level cache -->
  <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

  <!-- Echo all executed SQL to stdout -->
  <property name="show_sql">true</property>

  <!-- Drop and re-create the database schema on startup -->
  <property name="hbm2ddl.auto">update</property>

  <!-- Mapping files -->
  <mapping resource="player.hbm.xml"/>

 </session-factory>
</hibernate-configuration>

试试另一个驱动程序,检查它是否工作,也许。我使用这个,它可以工作:

com.microsoft.sqlserver.jdbc.SQLServerDriver
要连接:

jdbc:sqlserver://SERVER[\\INSTANCE];DatabaseName=dbname

如果仍然无法工作,请检查您是否错过了任何配置或拼写错误的内容,但它似乎应该可以工作。

感谢您的回复。只有一个问题,实例名称是否必要?星号中的名称只是一个名称,没有指定实例名称。老实说,我不知道是否需要,但我认为需要。如果您使用SQL Management Studio连接到数据库,并且使用类似于//LOCALHOST\INSTANCENAME\的东西,并且一切正常,那么如果您从未使用过,请尝试使用它。它说它是可选的,但将使用默认实例名。正如我所说的,如果您使用一个实例通过SQL Management Studio进行连接,并且它可以正常工作,我建议您尝试使用相同的实例名称。它可以正常工作!我想是换了司机,但不确定。也可能是连接url中的错误。谢谢,欢迎光临我很高兴它能起作用。祝您愉快。您的配置显示databaseName=names,但您的错误显示databaseName=Scores,您是否选择了正确的配置?已更改,配置文件现在读取databaseName=Scores。
3447 [http-bio-8080-exec-10] WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 18456, SQLState: 28000
3447 [http-bio-8080-exec-10] ERROR org.hibernate.util.JDBCExceptionReporter - Login failed for user '*****'.
org.hibernate.exception.GenericJDBCException: Cannot open connection
    at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:126)
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:114)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)
    at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)
    at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
    at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:142)
    at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:85)
    at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1354)
    at database.ScoreDB.addPlayerScore(ScoreDB.java:17)
com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc:sqlserver://SERVER[\\INSTANCE];DatabaseName=dbname