2017-04-26 12 views
0

jar JDBCファイルをダウンロードし、アプリケーション/ src/libファイルに正常に追加しました。Android AppのJDBCに適切なドライバがありません

  1. ネットワーク例外が127.0.0.1/1433 ECOREFUSED

  2. に接続することはできません。 はさらに、私はまた、JTDS-JDBCライブラリを試してみましたが、私はされたのと同じ正確な例外を得ていました

    ます。java.sql.SQLException:いいえ、適切なドライバ

例外の場合#1この例外が発生する主な理由はメモリが不足しているため、SQLServerのメモリを4GBに増やして問題を解決できないという記事を検索しました。

Class.forName("net.sourceforge.jtds.jdbc.Driver")) 

私は次のことを実行している:私はJTDS-JDBCのために、私は次のように使用することを唯一の違いと私のSQLServerデータベースへの挿入を達成するために、接続を確立しようとした両方のライブラリについては

コード:

try { 
    /*Declare the JDBC objects.*/ 
    Connection con = null; 
    Statement stmt = null; 
    ResultSet rs = null; 


    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 

    String constring = "jdbc:sqlserver://localhost:1433;databaseName=bumpit;integratedSecurity=true;"; 

    con = DriverManager.getConnection(constring); 

    /*Create and execute an SQL statement.*/ 
    stmt = con.createStatement(); 
    String SQL = "INSERT INTO BumpItUsers (name,address,mobile,password) VALUES ('" + name + "','" + address + "','" + address + "','" + password + "')"; 
    rs = stmt.executeQuery(SQL); 


    con.close(); 
    return true; 

    } catch (Exception e) { 
    e.printStackTrace(); 
    return false; 
    } 
} 

解決方法はありません。

+0

なぜsrc/libディレクトリですか? libは決してsrcではありません。それはバイナリであり、クラスパスに追加する必要があります。 – Jens

+0

スマートフォン側でSQL Serverを使いたくないといいですね。 – Jens

+0

私はGrandleにライブラリを単にコンパイルしてみましょう。 'compile 'net.sourceforge.jtds :jtds:1.3.1 ''、しかし違いは見られませんでした – HelloIT

答えて

1

まず、localhostは、Androidデバイスの観点からは、のAndroidデバイスです。これはどこでもlocalhostが動作する方法です。コードが実行されているマシンを参照します。 SQL ServerはAndroid上では動作しません。 SQL Serverを実行しているマシンの実際のIPアドレスまたはドメイン名を参照するようにコードを変更する必要があります。

第2に、信頼性とセキュリティ上の理由から、Android上でJDBCを使用する開発者はほとんどありません。

+0

私はどのDBMSを使用すべきですか? – HelloIT

+0

@HelloIT:Webサービスなど、安全でないクライアントや不安定なネットワーク接続を考慮して設計されたものを使用してください。 SQL Serverを使用してデータを格納する場合は、そのようにしても構いませんが、データベースと直接通信するモバイルアプリケーションはありません。 – CommonsWare

関連する問題