Подключение приложения Android к серверу sql с помощью jtds

Я устал безрезультатно искать, я не знаю, откуда взялась проблема, я пытаюсь подключить свое приложение для Android к локальному серверу SQl 2008, теперь я не могу получить информацию с сервера sql. пожалуйста, помогите, это мой код:

String url = "jdbc:jtds:sqlserver://10.0.2.2:1433/lear_db;instance=SQLEXPRESS;";
TextView coucou = new TextView(this);

    try {
        Class.forName("net.sourceforge.jtds.jdbc.Driver");
        java.sql.Connection connexion =               
        DriverManager.getConnection(url,"kamal","kamal1234"); 

        coucou.setText("Connection successful");

    } catch ( SQLException e) {
        // TODO Auto-generated catch block
        coucou.setText("error1" + e.getMessage());
        e.printStackTrace();
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        coucou.setText("error2" + e.getMessage());
        e.printStackTrace();

    } catch (Exception e) {
        // TODO Auto-generated catch block
        coucou.setText("error0" + e.getMessage());
        e.printStackTrace();
    }   
    setContentView(coucou);

person Mohamed ELJ    schedule 07.03.2013    source источник
comment
проверьте мой ответ, чтобы узнать, есть ли JAR или нет. Если она все еще сохраняется, вставьте стек ошибок с трассировкой.   -  person RainMaker    schedule 07.03.2013


Ответы (2)


Это строка подключения, которая сработала для меня:

"jdbc:jtds:sqlserver://"+ IP-адрес +":1433/lear_db;пользователь=вашпользователь;пароль=вашпароль"

чем я получил другую ошибку: android.os.NetworkOnMainThreadException

решение состоит в том, чтобы использовать AsyncTask, это учебник: http://droidapp.co.uk/2011/05/12/android-dev-pre-loading-with-asynctask/

теперь у меня новая ошибка (эти ошибки никогда не заканчиваются):

Unknow server host name 'unable to resolve host  

Чем это сработало, по Wi-Fi с IP-адресом хоста.

person Mohamed ELJ    schedule 08.03.2013

Обычно в этом случае я использую jdbc:sqlserver.

String url = "jdbc:sqlserver://10.0.2.2:1433/lear_db;instance=SQLEXPRESS;";

или, альтернативно, при использовании jtds попробуйте:

String url = "jdbc:jtds://10.0.2.2:1433/lear_db;instance=SQLEXPRESS;";
person extofer    schedule 07.03.2013
comment
Для первого 1: я не получаю подходящего драйвера, а для второго я получаю, что синтаксис URL-адреса соединения недействителен - person Mohamed ELJ; 07.03.2013
comment
jdbc:sqlserver — это драйвер Microsoft, я надеюсь, что он работает с Android, попробуйте microsoft.com/en-us/download/details.aspx?id=11774 - person extofer; 09.03.2013