У нас в настоящее время есть такая же проблема, как здесь: How to connect Android Studio with SQL Server database, но на нее не ответил.Как подключить Android Studio к базе данных SQL Server?
Мы также добились успеха в подключении к Eclipse, используя файл sqljdb4.jar
, мы пробовали на android тот же код, что и в Eclipse, но он работает только на Eclipse.
Мы также попробовали другой драйвер, jtds1.3.1.jar
, но это не сработало
Мы заменили логин и пароль по х и у;)
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_flux_sequence);
String url = "jdbc:jtdc:sqlserver://vps342074.ovh.net/IZY309";
//String url = "jdbc:jtdc:sqlserver://vps342074.ovh.net/MSSQLSERVER;databaseName=IZY309";
//String url = "jdbc:sqlserver://vps342074.ovh.net\\MSSQLSERVER;databaseName=IZY309";
String user = "x";
String pass = "y";
try {
//TextView textViewToChange = (TextView) findViewById(R.id.textViewCol5);
//textViewToChange.setText("Hello");
Class.forName("net.sourceforge.jtds.jdbc.Driver");
Connection con = DriverManager.getConnection(url, user, pass);
Statement statement = con.createStatement();
ResultSet resultat = statement.executeQuery("SELECT CATEGORIE FROM dbo.PPROFIL WHERE CATEGORIE = 'ac' ");
while (resultat.next()) {
String result = resultat.getString(1);
TextView textViewToChange = (TextView) findViewById(R.id.textViewCol5);
textViewToChange.setText(result);
Log.d("My Custom Tag", result);
}resultat.close();
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
private static void close(Connection con) {
// TODO Auto-generated method stub
close(con);
}
Вот возвращаемые ошибки:
W/System.err: java.sql.SQLException: No suitable driver
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at java.sql.DriverManager.getConnection(DriverManager.java:186)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at java.sql.DriverManager.getConnection(DriverManager.java:213)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at
com.example.gaetan.fluxsequence.flux_sequence.onCreate(flux_sequence.java:32)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.Activity.performCreate(Activity.java:6876)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3207)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3350)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.ActivityThread.access$1100(ActivityThread.java:222)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1795)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.os.Looper.loop(Looper.java:158)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7229)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at java.lang.reflect.Method.invoke(Native Method)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
02-15 14:34:01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Как точно все, что вы пробовали, не работает? Он падает? дает исключения? Если это так, где исключение stacktrace? –
Ваш адрес неправильного формата. Правильный должен быть 'String url =" jdbc: jtds: sqlserver: // [SERVER_ADDRESS]/[DB_NAME] ";' –
Благодарим за помощь! @Prerak Sola: Этот синтаксис не меняет ничего, что мы думаем, но мы должны начинать следующие ошибки (@Vlad Matvienko): W/System.err: java.sql.SQLException: Нет подходящего драйвера 02-15 14: 34: 01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at java.sql.DriverManager.getConnection (DriverManager.java:186) 02-15 14: 34: 01.896 4180-4180/com.example.gaetan.fluxsequence W/System.err: at java.sql.DriverManager.getConnection (DriverManager.java:213) 02-15 14: 34: 01.896 4180-4180/com.example.gaetan.fluxsequence Do у вас есть советы? – mhyeah