Ошибка подключения к базе данных в Java - Eclipse IDE - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь установить соединение с MSSQL-сервером на Java с помощью Eclipse. Я недавно начал использовать Eclipse, и я все еще пытаюсь освоить его. Что касается диска mssql, я добавил его в качестве внешнего jar-файла в моем проекте eclipse, интересно, стоит ли мне добавлять путь диска к переменным среды ?? Вот мой код:

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class ConnectionTest {
    public static void main(String[] args){
        try{

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

            String userName = "sa";
            String password = "123";
            String url = "jdbc:sqlserver://localhost:56650"+";databaseName=healthcareDB";
            Connection con = DriverManager.getConnection(url, userName, password);
            Statement s1 = con.createStatement();
            ResultSet rs = s1.executeQuery("SELECT * FROM [User]");
            String[] result = new String[20];
            if(rs!=null){
                while (rs.next()){

                    for(int i = 0; i <result.length ;i++)
                    {
                        for(int j = 0; j <result.length;j++)
                        {
                            result[j]=rs.getString(i);
                            System.out.println(result[j]);
                        }
                    }
                }
            }

            //String result = new result[20];

        } catch (Exception e)
        {
            e.printStackTrace();
        }
    }
}

И я получаю эту ошибку:

com.microsoft.sqlserver.jdbc.SQLServerException: The index 0 is out of range.
    at mssql.jdbc@7.2.1.jre8/com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:228)
    at mssql.jdbc@7.2.1.jre8/com.microsoft.sqlserver.jdbc.SQLServerResultSet.verifyValidColumnIndex(SQLServerResultSet.java:570)
    at mssql.jdbc@7.2.1.jre8/com.microsoft.sqlserver.jdbc.SQLServerResultSet.getterGetColumn(SQLServerResultSet.java:2012)
    at mssql.jdbc@7.2.1.jre8/com.microsoft.sqlserver.jdbc.SQLServerResultSet.getValue(SQLServerResultSet.java:2041)
    at mssql.jdbc@7.2.1.jre8/com.microsoft.sqlserver.jdbc.SQLServerResultSet.getValue(SQLServerResultSet.java:2027)
    at mssql.jdbc@7.2.1.jre8/com.microsoft.sqlserver.jdbc.SQLServerResultSet.getString(SQLServerResultSet.java:2489)
    at ConnectionTest.main(ConnectionTest.java:25)
...