【问题标题】:Connect MS SQL database from Java in ubuntu environment在 ubuntu 环境中从 Java 连接 MS SQL 数据库
【发布时间】:2014-11-04 09:50:17
【问题描述】:

我正在使用 ubuntu 12.04 并希望连接到托管在同一网络中的 MS SQL 服务器数据库。 我能够使用 Squirrel 连接它,但无法从 java 程序连接。这些是我使用的工具和 .jars。 Intellij Idea 是工具 jar 是 jtds-1.3.1.jar 和 sqljdbc4.jar Java 1.7 版

我希望在 Ubuntu 环境中开发一个 Web 应用程序,但我的数据库将在 Ms Sql windows 表中。这可行吗? 请逐步指导我,以及连接在wondows环境中托管的ms sql数据库的示例代码

拉申

【问题讨论】:

  • 显示您的代码。您是如何创建 JDBC 连接的,您遇到了什么错误?
  • "我可以使用 Squirrel 连接它,但无法从 Java 程序连接" - SQuirrel 一个 Java 程序。所以你的问题(你没有指定)是在你的程序代码中,而不是在连接本身。

标签: java sql-server ubuntu jtds


【解决方案1】:

微软的驱动和jTDS都可以在linux上运行。

他们的网站有示例 jdbc url。

【讨论】:

  • 确实有效,实际上创建的用户只有 Windows 身份验证,但创建了一个使用 SQLAuthentication 的用户,这确实有效。
【解决方案2】:

只要您可以通过网络访问它,它就不会改变您的数据库托管在 Linux/Windows 上的任何内容。

有一篇文章,您可以在其中了解如何使用 jTDS 从 Java 连接到您的数据库: Connect to SQL Server 2012 using jTDs

如果它不能解决你的问题,你能告诉我们你的确切错误信息吗?

【讨论】:

  • 数据库不是托管在 Linux 上。客户是。
  • 正如我刚才所说,它不会改变您的数据库不在 Linux 中的任何内容。
【解决方案3】:

不关心操作系统。 您是否尝试过使用 MS SQL JDBC 驱动程序推荐的连接方式?

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String dbHostName = "windowsHostName";
String dbName = "myDb";
String dbUserName = "myUserName";
String dbPassword = "topSecret";

String connectionUrl = "jdbc:sqlserver://" + dbHostName + ":1433;" +
   "databaseName=" + dbName + ";user=" + dbUserName + ";password=" + dbPasword + ";";
Connection con = DriverManager.getConnection(connectionUrl);

【讨论】:

    猜你喜欢
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    • 2016-12-07
    • 2016-11-18
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 2019-10-10
    相关资源
    最近更新 更多