第一次在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。
然后,您的应用程序将向这些脚本发送请求以执行查询。