【问题标题】:What is the jTDS JDBC Connect URL to MS SQL Server 2005 Express什么是到 MS SQL Server 2005 Express 的 jTDS JDBC 连接 URL
【发布时间】:2009-06-25 20:06:32
【问题描述】:

我正在尝试从 java 程序连接到在本地主机上运行的 MS SQL Server 2005 Express 数据库。

我尝试了在另一个运行 MS SQL Server 2000 的系统(相同的 java 代码)上使用的相同连接 URL(如下)。但这不起作用。

jdbc:jtds:sqlserver://127.0.0.1:1433/Finance

有什么想法吗?

【问题讨论】:

    标签: java sql-server sql-server-2005 jdbc jtds


    【解决方案1】:

    你确定它是正确的实例吗? SQL Express 倾向于安装为命名实例,例如“localhost\SQLExpress”,而不是标准实例。所以它会是这样的:

    jdbc:jtds:sqlserver://127.0.0.1:1433/Finance;instance=<instance_name>
    

    如果这不起作用,请尝试删除实例名称,并将端口更改为命名实例使用的端口:

    jdbc:jtds:sqlserver://127.0.0.1:<instance_port>/Finance
    

    否则,请先尝试通过 OSQL.exe 工具检查您的连接。您也可以在此查看jTDS FAQ

    【讨论】:

    • 第二个选项对我有用(如果您指定主机和端口,则不需要指定实例......)
    【解决方案2】:

    我建议 MicSim 的网址:

    jdbc:jtds:sqlserver://localhost/Finance;instance=sqlexpress
    

    查看this 获取 jTDS 网址信息。

    This 也有一些有趣的信息可以帮助解决 jtds to sql express 之类的问题。

    祝你好运。让我们知道进展如何。

    【讨论】:

    • 感谢您的反馈。这是我第一次使用 SQLServer Express,我发现它与 SQLServer 有很大不同。我仍然无法正确连接,但现在取决于用户权限而不是 URL。我一回到家就会回来(这是我正在开发的家庭系统)。
    【解决方案3】:

    要检查是否启用了 TCP/IP 并且端口没有被阻止,您可以使用“telnet 1433”。在 telnet 没有连接之前,jTDS 也不会。

    e.g, c:>telnet servername 1433
    

    在 Windows 上启用 telnet 客户端

    http://social.technet.microsoft.com/wiki/contents/articles/910.how-to-enable-telnet-client-in-windows-7.aspx

    【讨论】:

      【解决方案4】:

      默认情况下禁用 SQL Server Browser 服务。如果您正在开发 .Net 应用程序,则不需要启动 SQLBrowser,但如果您在 Java 中使用 JTDS,则需要启动它。 示例(无需指定 sql server 端口)。

      <property name="connection.url">jdbc:jtds:sqlserver://localhost/yourDbName;instance=SQLEXPRESS</property> 
      <property name="connection.username">yourDbUser</property>
      <property name="connection.password">yourDbPassword</property>
      

      【讨论】:

        【解决方案5】:

        你可以使用这个::

        <bean id="dataSource"
            class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
            <property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=Test1" />
            <property name="username" value="sa" />
            <property name="password" value="vic123" />
        </bean>
        

        【讨论】: