繁体   English   中英

在Java中连接到SQL Server时发生预登录错误

[英]Prelogin error while connecting to SQL server in java

我试图在Java中连接SQLserver。 我在春季无法做到这一点,因此在同一项目中创建了主要功能,但仍未成功。 我收到以下错误:

Oct 22, 2015 12:07:05 PM com.microsoft.sqlserver.jdbc.SQLServerConnection Prelogin
WARNING: ConnectionID:1 Prelogin error: host **DB-NAME** port 3306 Unexpected response type:78

我的主要方法如下。

public static void main(String[] args) throws ClassNotFoundException, SQLException{    
    Connection conn = null;
    String dbName = "envtracker";
    String serverip=**"DB-NAME"**;
    String serverport="3306";
    String url = "jdbc:sqlserver://"+serverip+":"+serverport+";databaseName="+dbName+"";
    Statement stmt = null;
    ResultSet result = null;
    String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    String databaseUserName = "user-id";
    String databasePassword = "paswd";
    System.out.println("here-1");
    try {
        Class.forName(driver).newInstance();
        conn = DriverManager.getConnection(url, databaseUserName, databasePassword);

        System.out.println("here-2");
        stmt = conn.createStatement();
        result = null;
        String pa,us;

        System.out.println("here-3");
        result = stmt.executeQuery("select * from table-1 ");
        System.out.println("here-4");
        while (result.next()) {
            us=result.getString("uname");
            pa = result.getString("pass");              
            System.out.println(us+"  "+pa);
        }
        System.out.println("here-5");
        conn.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

有人可以帮我吗 我试图在多个地方搜索解决方案。 但找不到任何相关内容。

我找到了2个解决此问题的方法:

  1. 检查您的DBA是否使用正确的端口号实际安装了Sql服务器,或者该人员是否来自mysql背景并且以sql配置文件结尾。 以我为例

  2. 检查您是否实际使用SQL Server。 将驱动程序类更改为我的sql,反之亦然,这可能会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM