第一次在Android中使用外部数据库,而我正在尝试建立数据库连接。我在数据库中创建了一个基本表,仅用于测试目的,并且试图连接和插入一些数据。这是我的代码:

public class DBInterface {
//TODO: Fix the database connections

    private Connection conn = null;
    private  Statement statement = null;



    public void connectToDatabase(){
        Log.d("myTag", "This is my messagestart");
        try {

            Class.forName("com.mysql.jdbc.Driver").newInstance();
            conn = DriverManager.getConnection("jdbc:mysql://mysql.**.***.***.***:3306", "DB_USER", "DB_PASSWORD");
            statement = conn.createStatement();
            statement.executeUpdate("INSERT INTO test (test) VALUES (15)");
            Log.d("myTag", "This is my message");


        } catch (SQLException ex) {
            Log.d("myTag", "SQLException: " + ex.getMessage());
            Log.d("myTag","SQLState: " + ex.getSQLState());
            Log.d("myTag","VendorError: " + ex.getErrorCode());
        }catch(Exception e){e.printStackTrace();}
    }


我在MainActivity的onCreate中称它为:

         DBInterface db = new DBInterface();
         db.connectToDatabase();
         Log.d("myTag", "This is my message2");


没有插入任何数据,但我也没有收到任何错误,我将日志消息放入其中以尝试查看其到达的位置,并且日志的唯一输出是:


  10-31 16:13:41.481 9918-9918 / com.jacksteel.comp4 D / myTag:这是我的messagestart
  
  10-31 16:13:41.486 9918-9918 / com.jacksteel.comp4 D / myTag:
  这是我的留言2

最佳答案

这不是直接的答案,但是您永远不想将应用程序直接连接到数据库。相反,您应该在服务器上编写一些脚本来执行INSERT,SELECT,UPDATE和DELETE。

然后,您的应用程序将向这些脚本发送请求以执行查询。

07-24 18:22
查看更多