10

MySQLのテーブルからデータを取得してTextViewに表示したいのですが、データベースに接続しようとすると問題が発生します。
Eclipse for Androidを使用しており、Java ProjectでMySQLからデータを取得しようとすると機能しますが、AndroidProjectを使用すると機能しません。
MySQL JDBCドライバーを使用してMySQLをAndroidプロジェクトに接続する方法を知っている人はいますか?
または、AndroidプロジェクトをMySQLに接続する方法について他のアドバイスを教えてください。

4

2 に答える 2

11

AndroidからMysqlデータベースに接続する場合は、次の手順に従う必要があります。

  • ドライバーmysql-connector-java-3.0.17-ga-bin.jarをダウンロードします
  • Androidプロジェクトのlibsフォルダーに貼り付けます。
  • ConfigureBuildPath-> add jarをクリックして、jarをプロジェクトに含めます。
  • これでドライバーができましたが、インターネット用のandroidManifest.xmlでアクセス許可を与える必要もあります。
  • 接続には次のコードを使用します。

    try{
        Class.forName("com.mysql.jdbc.Driver").newInstance();
    }catch(Exception e){
        System.err.println("Cannot create connection");
    }
    try{
        connection = DriverManager.getConnection("jdbc:mysql://192.168.xx.xx:3306/dbname","root","password");
        Statement statement = connection.createStatement();
    
        String query = "SELECT column1, column2 FROM table1 WHERE column3 = ";
        query = query +"'" +variable+"'";           
        ResultSet result = statement.executeQuery(query);
    }catch(Exception e){
        System.err.println("Error");
    } 
    

アドバイス:ドライバーのインスタンスでエラーが発生しないが、接続で例外が発生した場合は、マニフェストからTarget SDKバージョンを削除してみてください。一部のバージョンでは、問題が発生します。

于 2013-02-20T14:29:51.227 に答える
7

AndroidはデフォルトでMySQLをサポートしていません。それは作り付けのデータベース、すなわちSQLiteを持っています。MySQLデータベースにリモートでアクセスしようとしている場合は、標準のWebサービスを使用してこのデータベースへのインターフェイスを公開する必要があります。たとえば、Java/PHPなどとMySQLコネクタを使用して記述されたRESTfulWebサービスをサーバー側で作成できます。(これはすでに行っています!)そして、Androidアプリは、このWebサービスを使用して生成されたURLを使用してこのサービスと通信できます。

繰り返しになりますが、この質問は以前に繰り返されているため、これらの解決策を確認できます。

于 2012-06-19T18:13:20.090 に答える