如何在Android中使用JTDS驱动程序连接sql server

时间:2011-10-03 06:39:25

标签: android sql-server jtds

我是android的新手.. 我想使用JTDS驱动程序连接sql server。 任何人都可以告诉我..

提前thnx ......

4 个答案:

答案 0 :(得分:6)

在ANDROID上使用JTDS直接访问SQLSERVER时获取错误“ClassNotFoundException”?

3小时后RND,找到相同的上述错误的解决方案。我没有得到代码中没有错误,我也有导入“jtds-1.3.0”库正常继续调试代码仍然一次又一次地得到相同的错误。

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

 Connection conn = DriverManager.getConnection(
 db_connect_string, db_userid, db_password);
}

我尝试替代,改变行

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

...... (new Driver()).getClass();

...... (new Driver())

当我尝试所有这些时,我认为jtds-1.3.0库中可能存在问题,而我所做的只是下载旧版本的jtds-1.2.5并导入它;问题解决了。

所以,那里的朋友如果你得到同样的错误并尝试了不同的方法,试试这个。

答案 1 :(得分:3)

jTDS网站上没有示例代码,这很奇怪。我找到了这个,它可能会有所帮助:

http://www.java-tips.org/other-api-tips/jdbc/how-to-connect-microsoft-sql-server-using-jdbc-3.html

import java.sql.*;

public class testConnection
{
    public static void main(String[] args) 
    {
        DB db = new DB();
        db.dbConnect("jdbc:jtds:sqlserver://localhost:1433/tempdb","sa","");
    }
}

class DB
{
    public DB() {}

    public voidn dbConnect(String db_connect_string, String db_userid, String db_password)
    {
        try
        {
            Class.forName("net.sourceforge.jtds.jdbc.Driver");
            Connection conn = DriverManager.getConnection(
            db_connect_string, db_userid, db_password);
            System.out.println("connected");
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
};

修改
当找不到主类时,您将获得ClassNotFoundException异常。在AndroidManifest.xml中找到以下行,确保它们正确无误:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.ezee.app"  
/*...*/
<activity android:name=".connect12" 

还要确保该类存在于your_project_folder/src/com/ezee/app/connect12(我认为区分大小写)

答案 2 :(得分:0)

根据我的经验,如果您使用Android与SQL Server的独立安装,则必须使用10.0.2.2地址而不是“localhost”或“127.0.0.1”,根据用于访问localhost服务器的Android细节

我试过了,并且已成功连接到我的SQL Server。

答案 3 :(得分:0)

Exception in thread "main" java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at com.test.objectref.GroupBy.main(GroupBy.java:12)

要解决此问题,必须添加Jtds lib