Maison  >  Article  >  base de données  >  Que faire si Android ne parvient pas à se connecter à MySQL

Que faire si Android ne parvient pas à se connecter à MySQL

藏色散人
藏色散人original
2020-11-06 10:37:242562parcourir

La solution au problème selon lequel Android ne peut pas se connecter à MySQL : personnalisez d'abord l'événement d'écoute dans Activivty ; puis ouvrez un sous-thread dans l'événement d'écoute personnalisé ; enfin changez la définition de coonection en "DriverManager.getConnection ; (...)".

Que faire si Android ne parvient pas à se connecter à MySQL

Recommandé : "Tutoriel vidéo MySQL"

Connexion d'Android Studio à MySQL : Résolution de problèmes : La machine virtuelle ne peut pas connectez-vous au SQL local, coon est toujours vide

Connectez la base de données dans un thread enfant

Personnalisez d'abord l'événement d'écoute dans Activivty

//写在Activity中
private Button mBtn;
  @Override
 protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        SetListener();//自定义监听事件
        }

Ouvrez un fil enfant dans le personnalisé événement d'écoute, faites attention au dernier .start()

private void SetListener()
    {
        mBtnadmin.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View view) {
                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        Connection conn=null;//创建连接
                        Statement stmt=null;//用以执行SQL语句
                        try{
                        //注册驱动
                            Class.forName("com.mysql.jdbc.Driver");
                        //数据库的执行语句
                            String sql="insert into demo values(6666,6666)";
 //获取connection对象,这里使用localhost如果无法成功,则改成10.0.2.2,这是虚拟机上电脑的地址,注意是虚拟机,用于虚拟机的测试
                            conn=DriverManager.getConnection("jdbc:mysql://10.0.2.2:3306/logindata","root","666666");
                            stmt=conn.createStatement();
                            stmt.executeUpdate(sql);
                            }
                        }catch (Exception e)
                        {
                            e.printStackTrace();
                        }finally {
                     stmt.close();
                     conn.close();
                           // JDBCUtils .Close(stmt,conn);
                        }
                    }
                }).start();
             }
        });
    }

Parce que j'utilise une machine virtuelle pour les tests, la définition de la connexion a toujours été

 conn= DriverManager.getConnection("jdbc:mysql://localhost/logindata","root","666666");

Chaque fois que le résultat de la connexion est signalé : coon=null, Enfin, plusieurs parties de débogage ont découvert ce problème. L'adresse IP de l'ordinateur correspondant à la machine virtuelle devrait être 10.0.2.2. Autrement dit, la modification de la définition de coonection en

conn= DriverManager.getConnection("jdbc:mysql://10.0.2.2:3306/logindata","root","666666");

a réussi. ! J'ai toujours eu peur qu'il s'agisse d'un problème de code, donc je n'ai pas essayé de me connecter à MySQL sur le serveur. Maintenant, je peux l'essayer !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn