2017-04-26 6 views
0

jar JDBC 파일을 다운로드하고 내 app/src/lib 파일에 성공적으로 추가했습니다.안드로이드 앱에 JDBC 용으로 적합한 드라이버 없음

  1. 네트워크 예외가 127.0.0.1/1433 ECOREFUSED

  2. 에 연결할 수 없습니다 : 는 또한 나는 또한 JTDS - JDBC 라이브러리를 시도했지만 내가했던 똑같은 예외를 얻고 있었다

    은 java.sql.SQLException : 아니오 적합한 드라이버

For Exception #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 서버를 사용하지 않으려합니다 – Jens

+0

나는 단순히 Grandle이 자체적으로 라이브러리를 간단히 컴파일하도록 시도했습니다. 'compile 'net.sourceforge.jtds : jtds : 1.3.1'',하지만 차이점을 보지 못했습니다. – HelloIT

답변

1

먼저 Android 기기의 측면에서 localhost이며, Android 기기는입니다. 이것은 localhost이 모든 곳에서 작동하는 방식입니다. 코드가 실행되는 컴퓨터를 나타냅니다. SQL Server는 Android에서 실행되지 않습니다. SQL Server를 실행하는 컴퓨터의 실제 IP 주소 또는 도메인 이름을 참조하도록 코드를 변경해야합니다.

둘째, 안정성 및 보안상의 이유로 Android에서 JDBC를 사용하는 개발자가 거의 없습니다.

+0

어떤 DBMS를 사용해야합니까? – HelloIT

+0

@HelloIT : 불안한 클라이언트와 불안정한 네트워크 연결을 염두에두고 설계된 웹 서비스 또는 다른 것을 사용하십시오. SQL Server를 사용하여 데이터를 저장하려면 데이터베이스에 직접 액세스하는 모바일 앱이 없어도됩니다. – CommonsWare