PlayFramework MSSQL数据库错误

PlayFramework MSSQL数据库错误,playframework,Playframework,我试图在我的application.conf中使用MSSQL服务器和Play Framework db.url=jdbc:microsoft:sqlserver://localhost\SQL2008:1433;DatabaseName=testDB db.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver db.user=sa db.pass=sa # If you need a full JDBC c

我试图在我的application.conf中使用MSSQL服务器和Play Framework

    db.url=jdbc:microsoft:sqlserver://localhost\SQL2008:1433;DatabaseName=testDB
    db.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver
    db.user=sa
    db.pass=sa
   # If you need a full JDBC configuration use the following :
   db.url=jdbc:jtds:sqlserver://localhost:1433/testDB;instance=SQL2008
   db.driver=net.sourceforge.jtds.jdbc.Driver
   db.user=sa
   db.pass=sa
我得到下面这个错误

Database error
A database error occured : Cannot connected to the database, [Microsoft][SQLServer    
2000 Driver for JDBC]Error establishing socket.

play.exceptions.DatabaseException: Cannot connected to the database, [Microsoft]   
[SQLServer 2000 Driver for JDBC]Error establishing socket.
at play.db.DBPlugin.onApplicationStart(DBPlugin.java:132)
at play.plugins.PluginCollection.onApplicationStart(PluginCollection.java:425)
at play.Play.start(Play.java:495)
at play.Play.detectChanges(Play.java:599)
at play.Invoker$Invocation.init(Invoker.java:186)
at Invocation.HTTP Request(Play!)
 Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error    
 establishing socket.
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
数据库错误
发生数据库错误:无法连接到数据库[Microsoft][SQLServer]
2000 JDBC驱动程序]建立套接字时出错。
play.exceptions.DatabaseException:无法连接到数据库[Microsoft]
[SQLServer 2000 JDBC驱动程序]建立套接字时出错。
atplay.db.DBPlugin.onApplicationStart(DBPlugin.java:132)
正在运行的.plugins.PluginCollection.onApplicationStart(PluginCollection.java:425)
play.play.start(play.java:495)
play.play.detectChanges(play.java:599)
Invoker$Invocation.init(Invoker.java:186)
在Invocation.HTTP请求时(播放!)
原因:java.sql.SQLException:[Microsoft][SQLServer2000 JDBC驱动程序]错误
建立套接字。
位于com.microsoft.jdbc.base.BaseExceptions.createException(未知源)
位于com.microsoft.jdbc.base.BaseExceptions.getException(未知源)
位于com.microsoft.jdbc.base.BaseExceptions.getException(未知源)
位于com.microsoft.jdbc.sqlserver.tds.TDSConnection。(来源未知)
位于com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(未知源代码)
位于com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(未知源)
我已经将sqljdbc4.jar添加到lib文件夹中。
即使尝试使用mssqlserver.jar、msutil.jar、msbase.jar

看起来也无法连接到运行在localhost:1433端口上的ms sql server。您可能会检查以下几点:

  • 您是否在本地主机上运行ms sql server

  • 您的ms sql server上是否启用了TCP/IP

  • 您是否让ms sql server侦听1433端口


  • 您可以按照以下步骤诊断问题

    尝试从URL中删除SQL2008部件

    db.url=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testDB
    

    可能是有用的人,寻找MSSQL与发挥

    首次下载

    将jtds jar文件复制到

       play-1.2.3\framework\lib
    
    以及您的应用程序库文件夹

    重新开始播放

    在application.conf中

        db.url=jdbc:microsoft:sqlserver://localhost\SQL2008:1433;DatabaseName=testDB
        db.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver
        db.user=sa
        db.pass=sa
    
       # If you need a full JDBC configuration use the following :
       db.url=jdbc:jtds:sqlserver://localhost:1433/testDB;instance=SQL2008
       db.driver=net.sourceforge.jtds.jdbc.Driver
       db.user=sa
       db.pass=sa
    
    开始播放:)

    播放2的更新

    Build.scala
    添加播放依赖项,如下所示

     val appDependencies = Seq(
        "net.sourceforge.jtds" % "jtds" % "1.2"
      )
    
    Play2中的
    conf
    文件中有更改

       db.default.url="jdbc:jtds:sqlserver://localhost:1433/testDB;instance=SQL2008"
       db.default.driver=net.sourceforge.jtds.jdbc.Driver
       db.default.user=sa
       db.default.pass=sa
    

    重新启动播放
    SBT
    将为您下载依赖项。开始播放:)

    对于play framework 2.5,以下是我的配置

     db.default.driver=net.sourceforge.jtds.jdbc.Driver
     db.default.url="jdbc:jtds:sqlserver://ipaddress:1433/TESTDB"
     db.default.username=USER
     db.default.password="Password"
     db.default.hikaricp.connectionTestQuery="SELECT 1"
    
    并添加了一个依赖项作为

    val appDependencies = Seq(
        "net.sourceforge.jtds" % "jtds" % "1.2"
      )
    
    此外,如果您使用的是Ebean,则在plugin.sbt中添加Ebean pluging作为

    addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "1.0.0")
    
    最后在conf中作为

    ebean.default = ["models.*"]
    

    您好,格林,是的,它已安装。我的机器中的另一个基于JEE的应用程序使用了相同的mssqlserver。这发生在Play上。您好,emt,SQL2008是实例名。有两个SQL实例正在运行。无论如何都使用了jtds。您应该使用双引号将每个键值括起来(例如:
    db.default.driver=“net.sourceforge.jtds.jdbc.driver”