2016-09-12 23 views
0

私はアンドロイドからMicrosoft SQLサーバーのデータベースに接続しようとしています。しかし、私はそれを行うことができません。助けてください。私はとても多くのことを試みました。私はjtdsを使っていた - 1.3.1私は1.3.0バージョンも使ってみた。しかし、まだ失敗しました。助けてください。エラーアンドロイドからMS SQLデータベースへの接続

public class ConnectionClass { 
String ip = "192.168.0.101\\SQLEXPRESS:1433"; 
String classs = "net.sourceforge.jtds.jdbc.Driver"; 
String db = "dictionary"; 
String un = ""; 
String password = ""; 

@SuppressLint("NewApi") 
public Connection CONN() { 
    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder() 
      .permitAll().build(); 
    StrictMode.setThreadPolicy(policy); 
    Connection conn = null; 
    String ConnURL = null; 
    try { 

     Class.forName(classs); 
     ConnURL = "jdbc:jtds:sqlserver://" + ip + ";" 
       + "databaseName=" + db + ";user=" + un + ";password=" 
       + password + ";"; 
     conn = DriverManager.getConnection(ConnURL); 
    } catch (SQLException se) { 
     Log.e("ERRO", se.getMessage()); 
    } catch (ClassNotFoundException e) { 
     Log.e("ERRO", e.getMessage()); 
    } catch (Exception e) { 
     Log.e("ERRO", e.getMessage()); 
    } 
    return conn; 
} 
} 

、私はこのエラーを取得しています:

E/ERRO: Unknown server host name 'Host is unresolved: 192.168.0.101\SQLEXPRESS'.

私も(このような:192.168.0.101:1033)SQLEXPRESSを削除しようとした行の上からではなく、その後、別のエラーが来ています。

私はMS SQLからTCP/IPを有効にしました。また、ファイアウォールからポート1433を許可しました。また、MS SQLもファイアウォールから許可しました。 MS SQLの許可リモート接続もチェックされます。

助けてください。ありがとう..

+0

192.168.0.101 \ SQLEXPRESS、portnumberを試すことができますか? – TheGameiswar

+0

モバイルからデータベースに直接接続しない理由:http://stackoverflow.com/questions/15853367/jdbc-vs-web-service-for-android –

+0

私は試しました。それは同じエラーです。 @TheGameiswar –

答えて

1

これは有効なURLではありません。 IPだけかscheme:// ipのどちらかを使う必要があります。ただし、携帯端末から直接データベースに接続することはお勧めしません。そのため、パスワードをアプリに含める必要があります。つまり、アプリを使用するすべてのユーザーが自分のパスワードにアクセスできます。代わりにWebサービスを使用し、サーバーのセキュリティを保つためにパスワードを保持してください。

また、厳密モードを設定しないでください。まずはハックを外してください。第二に、すべてのデバイスで動作しません。第三に、必要な場合は、アプリを応答しないままにしておき、ウォッチドッグタイマーのためにクラッシュする可能性があります。あなたがそれを使って見たサイトは、彼らが何をしているのか分かりません。

+0

今のようなエラーを与えています:E/ERRO:シングルサインオンはWindowsでのみサポートされています。ユーザー名を指定してください。 –

+0

それからユーザー名が必要です。私はまだ携帯から直接接続することを提案していませんが、ユーザー名を入力すればうまくいくはずです。 –

+0

私はどのユーザ名を入力する必要がありますか? @ Gabe Sechan –

0

これが本当のアドレス「192.168.0.101 \ SQLEXPRESS:1433」ではありません はちょうどあなたのデバイス上でそれをしようとしないでくださいこの「192.168.0.101」のよう

を上に行く(時にはそれが、サーバーのIPを参照してくださいカント)、まず 'Emulator'で試してください VirtualBoxでネットワーク設定をするのを忘れないでください

関連する問題