Android远程连接SQL Server 2008数据库

Android通过JTDS直接连接SQL Server 2008数据库

首先下载JTDS(http://sourceforge.net/projects/jtds/files/jtds/),这里有JTDS的各种版本,起初下的是jtds-1.3.1,但在使用中总出现

ClassNotFound:net.sourceforge.jtds.jdbc.Driver 错误,后来下载了1.2.7版本,解决了这个问题,可能jdk需要7.0的。


import java.sql.Connection;  
import java.sql.DriverManager;  
import java.sql.ResultSet;  
import java.sql.SQLException;  
import java.sql.Statement;  
  
import android.app.Activity;  
import android.os.AsyncTask;  
import android.os.Bundle;  
import android.util.Log;  
  
  
public class MainActivity extends Activity   
{  
      
    private String UserName = "sa";  
    private String Password = "sa";  
      
    @Override  
    public void onCreate(Bundle savedInstanceState)  
    {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
          
        ConnectTask dt = new ConnectTask();  
        dt.execute();  
  
    }  
      
    class ConnectTask extends AsyncTask<Integer, Integer, String>  
    {  
        Connection con = null;  
        @Override  
        protected void onPreExecute() {  
            //第一个执行方法  
            super.onPreExecute();  
        }  
          
        @Override  
        protected String doInBackground(Integer... params) {              
            //建立于数据库的连接   
            try {  
                Class.forName( "net.sourceforge.jtds.jdbc.Driver");  
                con = DriverManager.getConnection( "jdbc:jtds:sqlserver://10.0.2.2:1433/AndroidSample", UserName, Password);    //10.0.2.2是使用模拟器是用的本机(pc)的IP,androidSample是我的数据库名称  
                testConnection(con);//测试数据库连接  
            } catch (ClassNotFoundException e1) {  
                // TODO Auto-generated catch block  
                e1.printStackTrace();  
                Log.e("Class.forName::ClassNotFoundException", e1.getMessage());  
            }catch (SQLException e) {  
                    // TODO Auto-generated catch block  
                    e.printStackTrace();  
            }  
              
            return "执行完毕";  
        }  
  
        @Override  
        protected void onPostExecute(String result) {  
            super.onPostExecute(result);  
        }  
          
        public void testConnection(Connection con) throws java.sql.SQLException {               
            try {      
                String sql = "SELECT * FROM Seed.Person";//查询表名为“Seed.Person”的所有内容     
                Statement stmt = con.createStatement();//创建Statement     
                ResultSet rs = stmt.executeQuery(sql);//ResultSet类似Cursor     
                    
                while (rs.next()) {//<CODE>ResultSet</CODE>最初指向第一行     
                    Log.e("&&&&&", rs.getString("NameChs"));  
                    Log.e("&&&&&", rs.getString("OperateUserName"));                        
                }      
                rs.close();    
                stmt.close();    
            } catch (SQLException e) {    
                System.out.println(e.getMessage().toString());    
            } finally {    
                if (con != null)    
                    try {    
                        con.close();    
                    } catch (SQLException e) {    
                    }    
            }    
        }     
    }  
  
}  


  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Android Studio连接数据库,您可以使用以下步骤: 1. 在项目中添加数据库驱动程序库。 2. 在项目中创建一个数据库连接类。 3. 在连接类中编写代码以连接数据库。 4. 在应用程序中使用连接类来执行数据库操作。 具体步骤和代码实现可以参考以下链接: https://www.jianshu.com/p/1b5a2d9c8f3d https://www.cnblogs.com/zhengyuhong/p/Android-Studio-MySQL.html 希望对您有所帮助! ### 回答2: Android Studio可以通过多种方式连接数据库,最常用的方法是使用SQLite数据库SQLite是一种轻量级的数据库引擎,它可以嵌入到Android应用程序中,提供了可靠的数据存储和检索功能。 在Android Studio连接SQLite数据库,需要进行以下几个步骤: 1. 在build.gradle文件中添加依赖项: ```java implementation 'androidx.sqlite:sqlite:2.1.0' implementation 'androidx.room:room-runtime:2.2.6' annotationProcessor 'androidx.room:room-compiler:2.2.6' ``` 这些依赖项将引入SQLite和Room库,Room库是Android官方推荐的SQLite数据库持久化解决方案。 2. 创建一个实体类表示数据库中的表,并使用注解定义表结构和字段名,例如: ```java @Entity(tableName = "users") public class User { @PrimaryKey(autoGenerate = true) public int id; public String name; } ``` 3. 创建一个数据访问对象(DAO)接口,用于定义对数据库进行CRUD操作的方法,例如: ```java @Dao public interface UserDao { @Insert void insert(User user); @Query("SELECT * FROM users") List<User> getAllUsers(); } ``` 4. 创建一个数据库类,继承自RoomDatabase,并使用注解指定数据库版本和包含的表,例如: ```java @Database(entities = {User.class}, version = 1) public abstract class AppDatabase extends RoomDatabase { public abstract UserDao userDao(); } ``` 5. 在应用程序中使用数据库,例如: ```java AppDatabase db = Room.databaseBuilder(getApplicationContext(), AppDatabase.class, "database-name").build(); UserDao userDao = db.userDao(); ``` 现在,就可以通过userDao对象来执行对数据库的操作,如插入、查询等。这样,Android Studio就成功连接数据库。当然,除了SQLite,还可以使用其他数据库,比如SQL Server、MySQL等,连接方法和步骤略有不同。 ### 回答3: Android Studio连接数据库通常采用以下步骤: 1. 添加依赖库:在项目的build.gradle文件中添加相应的依赖库。常用的数据库库有SQLite,可以在文件中添加以下代码: dependencies { implementation 'androidx.sqlite:sqlite:2.1.0' } 2. 创建数据库帮助类:在项目的java目录下创建一个继承自SQLiteOpenHelper的类,例如MyDatabaseHelper。在该类中重写onCreate()和onUpgrade()方法,实现数据库的创建和升级逻辑。 3. 定义数据模型:创建一个Java类,定义所需的数据模型,例如User类表示用户信息。 4. 执行数据库操作:在需要操作数据库的代码中,创建MyDatabaseHelper的实例,并获取一个可以写入和读取数据库SQLiteDatabase对象。可以使用该对象执行插入、查询、更新、删除等数据库操作。例如: MyDatabaseHelper helper = new MyDatabaseHelper(context); SQLiteDatabase db = helper.getWritableDatabase(); 5. 执行数据库操作:通过SQLiteDatabase对象执行具体的数据库操作。例如,插入一条用户信息: ContentValues values = new ContentValues(); values.put("name", "John"); values.put("age", 25); db.insert("user", null, values); 6. 关闭数据库连接:在数据库操作完毕后,务必关闭数据库连接,释放资源。例如: db.close(); 以上就是使用Android Studio连接数据库的基本步骤。值得注意的是,Android Studio还支持其他数据库连接方式,比如使用第三方ORM框架(如GreenDAO、Room等)或者WebService技术连接远程数据库。根据实际需求,可以选择合适的方式连接数据库

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值