转自:http://blog.csdn.net/yuanzeyao/article/details/38777557
在学习android连接Mysql 数据库前,我们先来复习一下java如何通过jdbc连接Mysql
JDBC程序开发的几个步骤:
0、在工程的libs文件夹下放置jar包
按照:Project Structure — Denpendencies — “+”— Jar dependency 的步骤导入jar包到工程里
jar包下载地址:http://download.csdn.net/download/qq_36113598/9979455
1、注册驱动程序
Class.forName(“com.mysql.jdbc.Driver”);
JAVA规范中明确规定:所有的驱动程序必须在静态初始化代码块中将驱动注册到驱动程序管理器中。
2、建立数据库连接对象(Connection)
Connection conn=DriverManager.getConnection(“jdbc:mysql://192.168.8.21:3306/test”, ” User”,” Pasword”);
3、创建Statement对象
Statement stm = con.createStatement();
4、发送SQL语句
stm.executeUpdate()或者stm.executeQuery()
5、如果有结果集,处理结果集(ResultSet)
6、关闭相应的流资源
那么开始在android中开始通过Jdbc连接Mysql数据库吧
public void onClickQuery(View view)
{
//在android中操作数据库最好在子线程中执行,否则可能会报异常
new Thread()
{
public void run() {
try {
//注册驱动
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://10.0.2.2:3306/gjun";
Connection conn = DriverManager.getConnection(url, "root", "gavin");
Statement stmt = conn.createStatement();
String sql = "select * from t_user";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
//do
}
rs.close();
stmt.close();
conn.close();
Log.v("final", "success to connect!");
}catch(ClassNotFoundException e)
{
Log.v("final", "fail to connect!"+" "+e.getMessage());
} catch (SQLException e)
{
Log.v("final", "fail to connect!"+" "+e.getMessage());
}
};
}.start();
}
注意,我这个是在模拟器上运行的,如果在真机上运行,那么Ip地址就需要换成真实Ip地址,在虚拟机中,10.0.2.2指的就是电脑的Ip 地址
在运行过程中一定要注意:
1、关闭防火墙
2、在配置文件中加入网络访问权限android.permission.INTERNET ,不然一直失败
3、mysql数据库运行远程用户访问(下一篇博文里有介绍)