首次使用带有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:这是我的信息开始
10-31 16:13:41.486 9918-9918 / com.jacksteel.comp4 D / myTag: 这是我的留言2
答案 0 :(得分:1)
不是直接的答案,但您永远不想将您的应用直接连接到您的数据库。相反,您应该在服务器上编写一些脚本来执行INSERT,SELECT,UPDATE,DELETE。
然后,您的应用会向这些脚本发送请求以执行查询。