У меня много проблем с отправкой базовых данных в базу данных sql из приложения для Android, которое я разработал. У меня есть базовый класс подключения, а затем то, что я считаю очень простым запросом, который должен выполняться при нажатии кнопки, например ....
public void onUploadTest(View v) {
try{
Connection con = connectionClass.Conn();
String query = "INSERT INTO photo (photoID, userID, date, title, description, location, selected) VALUES ("
+ 100 + ", "
+ 2 + ", "
+ "4/17/2018" + ", "
+ "awesome" + ", "
+ "yeppp" + ", "
+ "google.com" + ", "
+ 1
+ ");";
Statement stmt = con.createStatement();
stmt.execute(query);
con.close();
} catch(SQLException e) {
Log.d("sql", e.toString());
} catch(IllegalStateException e) {
Log.d("sql", e.toString());
}
}
но независимо от того, что я пытаюсь, я продолжаю получать IllegalStateException, которое указывает на `строку с 'con.createStatement ();' Мой класс подключения
public class ConnectionClass {
String ip = "206.212.36.194";
String db = "DroneInspDB";
String un = "aksenov";
String password = "Datapass123";
//String ConnURL = null;
@SuppressLint("NewApi")
public Connection Conn() {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Connection conn = null;
//String ConnURL = null;
try {
Class.forName("net.sourceforge.jtds.jdbs.Driver");
String ConnURL = "jdbc:jtds:sqlserver://" + db + ";user = " + un + ";password = " + password + ";";
conn = DriverManager.getConnection(ConnURL);
} catch(SQLException se) {
Log.d("sql ", se.toString());
} catch(ClassNotFoundException e) {
Log.d("sql ", e.toString());
} catch(NullPointerException e) {
Log.d("sql", e.toString());
} catch(Exception e){
Log.d("sql ", e.toString());
}
return conn;
}
}
База данных находится на телефоне или на удаленном сервере? Если он на телефоне, попробуйте новую базу данных ROOM, которую Google рекомендует для приложений Android, developer.android.com/topic/libraries/architecture/room.html
пожалуйста, уточните, чего вы на самом деле пытаетесь достичь. Вы пытаетесь отправить данные на сервер или хотите записать данные в локальную базу данных на телефоне?
Извините, пытаюсь отправить в удаленную базу данных с помощью JDBC. Базы нет в телефоне. @PeppermintPaddy




Пожалуйста, прочтите: JDBC против веб-службы для Android