2017-12-10 22 views
-1
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を書くとき、私はエラーPreparedStatementの赤い色を持っています。 java.sql.Connectionを修正すると、エラーは表示されませんでしたが、データベースに接続できません。このコードは何が間違っていますか?

答えて

0

コードが赤い場合、このコードを実行すると特定のエラーの内容を確認する必要がありますAndroidでは、localhostはAndroidデバイスで、Mysqlデータベースがホストされているデバイスではありません。だからあなたはあなたが期待している接続を得ることはできません。

私が前提としているのは、本番環境でのテストではなく、いくつかのテストのためのものです。ローカルホストと同じネットワーク上にあるmysqlサーバをホストしているコンピュータのipにlocalhostを置き換える必要があります。 Androidデバイスが(ほとんどの場合、WiFiネットワークに接続されています)また、mysqlサーバがそのインタフェース(127.0.0.1でもlocalhostでもない)で接続を受け付けていること、そしてそのポートがファイアウォールを介してアクセス可能であることを確認してください。

+0

java.sql.Connection Conn = DriverManager.getConnection( "jdbc:mysql://192.168.1.184:3306/yoklama"、 "root"、 "1234"); 私はこれを前に試しましたが、うまくいきませんでした。 –

+0

私の答えの残りの項目をチェックしましたか? – Juan

関連する問題