1

I am finding exception on "conn = DriverManager.getConnection(connString, username, password); Line.

public void query2() {
    Log.i("Android", " MySQL Connect Example.");
    Connection conn = null;
    try {
        String driver = "net.sourceforge.jtds.jdbc.Driver";
        System.out.println("*************inside class 1**************");
        Class.forName(driver).newInstance();

       // test = com.microsoft.sqlserver.jdbc.SQLServerDriver.class;
        System.out.println("*************inside class 2**************");
        String connString = "jdbc:jtds:sqlserver://localhost:1433;" +
                "DatabaseName=test;user=sa;password=sa1;";
        System.out.println("*************inside class 3**************");
        String username = "sa";
        String password = "sa1";
        conn = DriverManager.getConnection(connString, username, password);
        Log.w("Connection", "open");
        Statement stmt = conn.createStatement();
        ResultSet reset = stmt.executeQuery("select * from titles");

        // Print the data to the console
        while (reset.next()) {
            Log.w("Data:", reset.getString(3));
            // Log.w("Data",reset.getString(2));

        }
        conn.close();

    } catch (Exception e) {
        Log.w("Error connection", "" + e.getMessage());
    }
}

My Log cat display:

  02-01 06:42:36.845: I/Android(1187):  MySQL Connect Example.
  02-01 06:42:39.365: I/System.out(1187): *************inside class 1**************
  02-01 06:42:40.843: I/System.out(1187): *************inside class 2**************
  02-01 06:42:42.396: I/System.out(1187): *************inside class 3**************
  02-01 06:42:45.220: D/dalvikvm(1187): GC_CONCURRENT freed 161K, 10% free 2606K/2888K, paused 74ms+72ms, total 233ms
  02-01 06:43:00.970: W/Error connection(1187): null                                        
4

1 回答 1

0

您的连接字符串看起来格式不正确。MySQL 默认端口也是 3306。除非您更改端口号,否则您应该使用 3306。从 Connstring 中提取用户名和密码。如果您正在使用

getConnection (ConnStr, User, Password) 

你不需要在 conn 字符串中设置它,因为你在调用中传递它。

试试这个 conn 字符串,它是裸露的,但应该连接。确保使用 getConnection 并传入用户名/密码

jdbc:jtds:sqlserver://localhost:3306/test

如果这不起作用,您将需要向 Logcat 输出更多信息和错误。看这里了解如何使用 Logcat。您的帖子中的 Logcat 中没有任何错误消息,只有 Info 和 Warning

于 2013-02-01T07:59:43.227 回答