要从Android的ListView中删除MySQL数据库中的数据,你需要进行以下步骤:
String url = "jdbc:mysql://your_mysql_server:port/your_database_name";
String username = "your_username";
String password = "your_password";
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, username, password);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
ArrayList dataList = new ArrayList<>();
try {
Statement statement = conn.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM your_table_name");
while (resultSet.next()) {
String data = resultSet.getString("your_column_name");
dataList.add(data);
}
statement.close();
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
ArrayAdapter adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, dataList);
listView.setAdapter(adapter);
其中,this
是指当前的Activity,android.R.layout.simple_list_item_1
是一个简单的列表项布局。
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView> adapterView, View view, int position, long id) {
String dataToRemove = dataList.get(position);
try {
Statement statement = conn.createStatement();
String query = "DELETE FROM your_table_name WHERE your_column_name = '" + dataToRemove + "'";
statement.executeUpdate(query);
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
dataList.remove(position);
adapter.notifyDataSetChanged();
}
});
在这段代码中,我们首先获取用户点击的项目的数据,然后执行一个删除查询来从数据库中删除相应的数据。最后,我们从ArrayList中移除该数据,并通知适配器数据发生了变化。
这就是从Android的ListView中删除MySQL数据库中的数据的解决方法。请注意,这只是一个示例,你可能需要根据你的具体需求进行适当的修改。