尝试使用JDBC和Eclipse for Android连接到数据库时出错

时间:2012-09-11 17:26:35

标签: android eclipse sql-server-2005 jdbc

我正在尝试使用JDBC和Eclipse IDE以及Java

从我的android连接到数据库

这是我写的代码

package Android_SQL.Package;

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Properties;

import Android_SQL.Package.R;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
import android.util.Log;

public class Android_SQLActivity 
extends Activity 
implements OnClickListener
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Button My_Button = (Button) this.findViewById(R.id.button1);
        My_Button.setOnClickListener(this);        
    }


    @Override
    public void onClick(View arg0) {

        (new Thread(new Runnable() 
        {
            @Override
            public void run() 
            {
                // Connect
                try {               
                    String cs = "jdbc:sqlserver://192.168.0.29:1433;databaseName=ODB0336;user=sa;password=savage";
                    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");        
                    Connection con = DriverManager.getConnection(cs);
                    //String sql="insert into Categories(CategoryName, Description) values(?,?)";
                    String sql="insert into Colors(ColorId, ColorEName, ColorName) values(?,?,?)";
                    PreparedStatement prepared = con.prepareStatement(sql);
                    prepared.setString(1, "ABCD");
                    prepared.setString(2, "ABCDEF");
                    prepared.setString(2, "XYZ");                   
                    prepared.executeUpdate();           
                } catch (Exception e) 
                {
                    e.printStackTrace();
                    Log.i("Error", e.getMessage());
                }

            }
        }
        )
        ).start();                      
    }
}

但是当我连接时,我收到以下异常:

“com.microsoft.sqlserver.jdbc.SQLServerException:recvfrom failed:ECONNRESET(由对等方重置连接)”

如何解决?是什么问题。

JDBC版本是:Microsoft SQL Server JDBC Driver 3.0

请帮忙。

2 个答案:

答案 0 :(得分:1)

不要为Android Applicat使用JDBC概念。 JDBC适用于Web和网络应用程序,不适用于移动应用程序开发。

这是在android

中学习数据库连接的链接

DB EXAMPLE 1

DB EXAMPLEV2

答案 1 :(得分:1)

看看这个例子,您将了解如何连接远程数据库:

Example 1