Połącznie z bazą danych MysQl

0

Chcę połączyć się z bazą danych w Android Studio (java) za pomocą kodu:

try{
            Connection conn = null;
            Statement stmt = null;

            String host = "dbc:mysql://localhost:3306/test";
            String uzytkownik = "user";
            String haslo = "haslo";
            String pdriver = "com.mysql.jdbc.Driver";
            Class.forName(pdriver).newInstance();
            Connection con = DriverManager.getConnection(host,uzytkownik,haslo);
            Toast.makeText(MainActivity.this, "Connected!",
                    Toast.LENGTH_SHORT).show();

            conn = DriverManager.getConnection(host, uzytkownik, haslo);
            String query = "CREATE TABLE IF NOT EXISTS `" + "123" + "` (" +
                    "  `index` int(5) NOT NULL," +
                    "  `station` int(5) NOT NULL," +
                    "  PRIMARY KEY (`index`)," +
                    "  UNIQUE KEY `station` (`station`)" +
                    ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci";
            stmt = conn.createStatement();
            stmt.executeUpdate(query);

        } catch(SQLException err){
            Toast.makeText(MainActivity.this, err.getMessage(),
                    Toast.LENGTH_SHORT).show();
            System.out.println(err.getMessage());
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            Toast.makeText(MainActivity.this, "1!",
                    Toast.LENGTH_SHORT).show();
        } catch (InstantiationException e) {
            e.printStackTrace();
            Toast.makeText(MainActivity.this, "2!",
                    Toast.LENGTH_SHORT).show();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
            Toast.makeText(MainActivity.this, "3!",
                    Toast.LENGTH_SHORT).show();
        }

Lecz po ruchomieniu aplikacji na telefonie pokazuje się "1!", czyli Class Not Found Exception. Jak to naprawić, aby poprawnie łączyło się z bazą danych? Z góry dziękuję za odpowiedź.

0

Generalnie odpowiedź na twoje pytanie powinna brzmieć:

"nie łącz się z zewnętrzną bazą danych pod Androidem"

Jest to rozwiązanie bardzo gówniane z wielu względów.

Postaw sobie lokalnie prosty serwis CRUD restowy i tak się łącz jeżeli chcesz żeby Twoja aplikacja była zwykłym interfejsem bazy danych

1 użytkowników online, w tym zalogowanych: 0, gości: 1