Android Studio连接Mysql数据库步骤以及常见错误

1.先把Mysql给下好,环境变量也配置好,这里我就不说了

2.下载好Navicat for Mysql软件,管理数据库

3.进入Android Studio创建一个类,写好连接数据库的代码

我们采用的是常用的JDBC方法来连接,需要的jar包有mysql-connector-java-5.1.49.jar,其他版本的下载地址在这里。
代码如下:

package com.example.linktest;

import android.util.Log;

import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Connection;
public class DBUtils {
    private String url="jdbc:mysql://a.b.c.d:3306/user_info?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8";
    /*a.b.c.d是你电脑的IP地址,可以在命令行里输入ipconfig查看*/
    /*user_info是你的数据库名字*/
    private String user="root";/*数据库用户名*/
    private String password="666666";/*进入数据库的密码*/
    private Connection conn=null;
    public void linkDatabase()
    {
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    Log.i("msg","连接");
                    Class.forName("com.mysql.jdbc.Driver");
                    conn = (DriverManager.getConnection(url,user,password));
                    if(conn!=null)
                    {
                        Log.i("msg","连接成功");
                        //Toast.makeText(this,"连接成功",Toast.LENGTH_LONG).show();
                    }
                    else
                    {
                        Log.i("msg","连接失败");
                        //Toast.makeText(this,"连接失败",Toast.LENGTH_LONG).show();
                    }
                }catch (ClassNotFoundException e)
                {
                    Log.i("msg","出错了");
                    e.printStackTrace();
                }catch (SQLException e)
                {
                    Log.i("msg",e.getMessage());
                }catch (Exception e)
                {
                    Log.i("error","我错了");
                    e.printStackTrace();
                }
            }
        }).start();
    }
}

然后就连接成功了!!这也是我花了一天多的时间才搞好的,太难了!!!

我遇见的错误:

1.可能会遇到java.lang.unsupportOperation错误

这是因为mysql-connector版本过高导致的,我之前是8.0.23,结果出错了,后来换成5.0.29就可以了,但要注意不能超过Mysql的版本号

2.communication Link Failure

我是因为加了useSSL=true才出现的,改成false就行了

3.重启mysql后报错 Public Key Retrieval is not allowed

在url引用后面加allowPublicKeyRetrieval=true就行。

你可能感兴趣的:(我的笔记,数据库,mysql,java,jdbc)