0

我创建了一个应用程序,它将与我的服务器上的本地数据库同步数据,我使用 jdbc 代码实现了这一点。它在我的模拟器上运行良好。

这是我用来连接到我的数据库的示例代码。我正在使用 jtds.jdbc 添加的 jar 文件来访问本地数据库。

String driver = "net.sourceforge.jtds.jdbc.Driver";
            Class.forName(driver).newInstance();
            Connection conn = DriverManager
                    .getConnection(
                            "jdbc:jtds:sqlserver://195.169.100.1:1433/dbname",
                            "username", "password");
            Log.w("Connection", "open");
            Statement stmtUserDetails = conn.createStatement();
            //Fetching Data From Tbl
            ResultSet resetUserDetails = stmtUserDetails
                    .executeQuery("select UserName,Password,Priviledges from TblmyTable");

当我尝试在调试模式下使用设备连接时。我的 LogCat 出现以下错误

11-02 13:19:05.249: D/SntpClient(73): request time failed: java.net.SocketException: Address family not supported by protocol

请帮我解决这个问题。

4

1 回答 1

0

dbname 似乎不是有效的套接字。

尝试修复 jdbc 连接字符串

    .getConnection( "jdbc:jtds:sqlserver://195.169.100.1:1433/dbname",
                        "username", "password");

更新

你在评论中给我的数据库连接

 //192.165.100.3:1433/myTestDatabase", "aadi", "test123"

无法从普通互联网访问(我只是试图打开数据库),因此不能从物理设备访问。是否有防火墙阻止访问?

于 2012-11-02T12:58:47.757 回答