Android使用JTDS连接SQL Server 2008 EXPRESS数据库实战
3星 · 超过75%的资源 需积分: 12 122 浏览量
更新于2024-09-10
1
收藏 4KB TXT 举报
"本教程介绍如何在Android应用中通过JTDS驱动程序连接到SQL Server 2008 EXPRESS数据库。开发环境包括Windows XP、SQL Server 2008 EXPRESS(混合认证模式)、Eclipse Luna、JDK 1.7、最新版Android SDK以及jtds 1.3.0版本。设备是运行Android 4.4.2系统的三星S4,并使用WiFi网络进行连接。"
在Android应用开发中,有时需要与后端数据库进行交互,例如SQL Server 2008 EXPRESS。JTDS(Java Type 4 JDBC Driver for SQL Server and Sybase)是一个开源的JDBC驱动程序,它允许Java应用程序直接连接到Microsoft SQL Server和Sybase数据库。在这个示例中,我们将使用JTDS驱动程序实现Android应用与SQL Server 2008 EXPRESS的通信。
首先,你需要从SourceForge下载jtds 1.3.0版本的驱动包(http://sourceforge.net/projects/jtds/files/jtds/1.3.0)。将下载的`jtds-1.3.0.jar`文件添加到你的Android项目的`libs`目录中。接下来,在Eclipse中,右键点击项目,选择"Build Path" -> "Configure Build Path" -> "Libraries" -> "Add External JARs",然后选择刚刚添加的`jtds-1.3.0.jar`文件,将其添加到项目的类路径中。
在代码实现上,你需要导入以下Java和Android相关的库:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import android.database.SQLException;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
```
接下来,创建一个`ConnectTask`类,继承自`AsyncTask`,用于在后台线程执行数据库连接操作,避免阻塞UI线程。在`onCreate`方法中,实例化`ConnectTask`并调用`execute()`方法启动任务。
```java
private class ConnectTask extends AsyncTask<Void, Void, String> {
@Override
protected String doInBackground(Void... voids) {
String result = "";
try {
Class.forName("net.sourceforge.jtds.jdbc.Driver");
Connection conn = DriverManager.getConnection(
"jdbc:jtds:sqlserver://<your_server_address>:<port>/<database_name>", // 替换为实际服务器地址、端口和数据库名
"sa", // SQL Server用户名
"123"); // SQL Server密码
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM <your_table_name>"); // 替换为实际表名
while (rs.next()) {
result += "Row: " + rs.getString(1) + ", " + rs.getString(2) + "\n"; // 假设你的表有两列
}
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException e) {
Log.e("DBConnect", "ClassNotFoundException: ", e);
} catch (SQLException e) {
Log.e("DBConnect", "SQLException: ", e);
}
return result;
}
@Override
protected void onPostExecute(String result) {
TextView textView = (TextView) findViewById(R.id.textView); // 假设你的布局中有名为textView的控件
textView.setText(result);
}
}
```
在`doInBackground`方法中,首先加载JTDS驱动,然后使用`DriverManager.getConnection()`建立连接。一旦连接成功,你可以创建一个`Statement`对象来执行SQL查询。在这个例子中,我们简单地查询了表的所有行。在`onPostExecute`方法中,将查询结果显示在界面上。
确保你的Android设备或模拟器可以访问SQL Server所在的网络,并且配置了正确的服务器地址、端口、数据库名、用户名和密码。在运行应用之前,确保SQL Server配置为允许远程连接,并开启了混合认证模式,以便使用SQL Server身份验证。
这个简单的示例展示了如何在Android应用中使用JTDS驱动连接到SQL Server 2008 EXPRESS数据库并执行基本的查询操作。在实际项目中,你可能需要处理更复杂的查询、事务管理、错误处理以及优化性能等问题。同时,为了提高安全性,建议不要在代码中硬编码敏感信息如用户名和密码,而是采用更安全的方式存储和获取这些信息。
2019-03-01 上传
180 浏览量
2008-10-11 上传
2020-09-04 上传
2019-05-06 上传
2018-04-07 上传
点击了解资源详情
goldgenty
- 粉丝: 0
- 资源: 2
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录