2012-06-19 17 views
8

MySQLのテーブルからデータを取得してTextViewに表示したいのですが、データベースに接続しようとするといくつかの問題があります。
私はAndroid用Eclipseを使用しています.Java ProjectでMySQLからデータを取得しようとすると動作しますが、Android Projectを使用すると機能しません。
MySQL JDBCドライバを使用してAndroidプロジェクトとMySQLをどのように接続できますか?
Android ProjectとMySQLを接続する方法を教えてください。Mysql JDBCドライバを使用してMySQLとAndroidを接続する方法

+3

"AndroidプロジェクトとMySQLの接続方法を教えてください。 - あなたのMySQLデータベース用のWebサービスを作成し、あなたのAndroidアプリがそのWebサービスと通信するようにします。 – CommonsWare

+0

"Webサービスの作成"では、Restletを使用できます。 – Christine

答えて

4

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

もう一度この質問を繰り返したので、これらの解決策を確認できます。

11

あなたは、AndroidからMySQLデータベースに接続する場合は、単にこれらの手順を実行する必要があります。

  • 貼り付けドライバのmysql-コネクタのjava-3.0.17-GA-bin.jarをダウンロードそれはあなたのアンドロイドプロジェクトのフォルダ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"); 
    } 
    

アドバイス:ドライバのインスタンスはすべてのエラーを与えるものではありませんが、接続の例外を取得する場合は、ターゲットを削除しようとする必要がありますマニフェストのSDKバージョン。いくつかのバージョンでは問題があります。

関連する問題