这个代码怎么了?

时间:2017-12-10 16:54:57

标签: android mysql database

String query="INSERT INTO ogrenciler(OGR_NO) VALUES(?)";
                Intent i = new Intent(LoginAct.this,dersSec.class);

                try {

                    Connection Conn = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/yoklama","root" , "1234");
                    PreparedStatement PS = (PreparedStatement) Conn.prepareStatement("SELECT OGR_NO,PASS FROM ogrenciler where OGR_NO=? AND PASS=?");
                    PS.setString(1, String.valueOf(ET.getText()));
                    PS.setString(2, String.valueOf(ET.getText()));
                    ResultSet RS = PS.executeQuery();
                    if(RS.next()){
                        startActivity(i);
                    }
                    else {
                        //ID OR PASS WRONG
                    }

我在没有php的情况下使用Android Studio和MySQL连接。我添加了mysql连接器。当我写连接conn时,我得到错误PrepareStatement它的红色。当我修复java.sql.Connection时,我没有看到任何错误,但无法连接到数据库

1 个答案:

答案 0 :(得分:0)

红色的代码,你需要看看具体的错误是什么,但是从来没有,当你在Android中运行这个代码时,localhost是Android设备而不是托管Mysql数据库的设备。所以你不会得到你期望的连接。

如果你想继续这个,我假设是为了一些测试,而不是生产中的任何东西,你必须用托管mysql服务器的计算机的ip替换localhost,该服务器与Android在同一网络上设备连接到(很可能是WiFi网络)。并确保mysql服务器接受该接口上的连接(不是127.0.0.1或localhost),并且该端口可通过防火墙访问。