【Android-连接数据库】 直接连接SqlServer数据库
一、测试过的开发环境
Eclispse + SqlServer2008R2
二、下载支持Android的SQL驱动
只能下载1.2.7版本的,将 jtds-1.2.7.jar 包放在android项目 libs 目录下。 下载地址:http://sourceforge.net/projects/jtds/files/
三、实现步骤
1、创建数据库连接类 DBUtil.java
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- public class DBUtil {
- private static String IP = "192.168.1.1";
- private static String DBName = "Test";
- private static String USER = "sa";
- private static String PWD = "123";
- /** 创建数据库对象 */
- private static Connection getSQLConnection() {
- Connection con = null;
- try {
- Class.forName("net.sourceforge.jtds.jdbc.Driver");
- //加上 useunicode=true;characterEncoding=UTF-8 防止中文乱码
- con = DriverManager.getConnection("jdbc:jtds:sqlserver://" + IP + ":1433/" + DBName + ";useunicode=true;characterEncoding=UTF-8", USER, PWD);
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return con;
- }
- /** 查询数据库 */
- public static String Query() {
- String result = "";
- try {
- Connection conn = getSQLConnection();
- String sql = "select * from SysUser";
- Statement stmt = conn.createStatement();//
- ResultSet rs = stmt.executeQuery(sql);
- while (rs.next()) {
- String s1 = rs.getString("UserCode");
- String s2 = rs.getString("RealName");
- result += s1 + " - " + s2 + "\n";
- }
- rs.close();
- stmt.close();
- conn.close();
- } catch (SQLException e) {
- e.printStackTrace();
- result += "查询数据异常!" + e.getMessage();
- }
- return result;
- }
- }
2、创建一个布局文件,activity_main.xml
一个Buttton控件,用来点击查询。
一个TextView控件,用来显示查询到的信息。
代码省略。。。
3、具体代码调用 MainActivity.java
- import android.app.Activity;
- import android.os.Bundle;
- import android.os.Handler;
- import android.os.Message;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.TextView;
- public class MainActivity extends Activity {
- Button button;
- TextView textview;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- button = (Button) findViewById(R.id.button);
- textview = (TextView) findViewById(R.id.textview);
- // 按钮点击事件
- button.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- textview.setText("");
- test();
- }
- });
- }
- // 查询
- private void test() {
- Runnable run = new Runnable() {
- @Override
- public void run() {
- String ret = DBUtil.Query();
- Message msg = new Message();
- msg.what = 1001;
- Bundle data = new Bundle();
- data.putString("result", ret);
- msg.setData(data);
- mHandler.sendMessage(msg);
- }
- };
- new Thread(run).start();
- }
- // 消息显示到控件
- Handler mHandler = new Handler() {
- public void handleMessage(android.os.Message msg) {
- switch (msg.what) {
- case 1001:
- String str = msg.getData().getString("result");
- textview.setText(str);
- break;
- default:
- break;
- }
- };
- };
- }
4、在AndroidManifest.xml 加上权限
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
5、问题
- 如何捕获连接数据库失败?
- 如何连接其它的数据库?
- 能使用的Android版本有哪些?
【Android-连接数据库】 直接连接SqlServer数据库的更多相关文章
- 使用 IIS 新建WebService站点供Android访问远程sqlserver数据库
新增网站 打开IIS控制台,找到服务根目录,右键,新建网站 网站设定 浏览测试 使用刚才生成的默认HelloWorld的服务1页面,记得加上端口号 http://localhost:8090/serv ...
- jsp连接sqlServer数据库教程
一.首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar 下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 下载地址:点击进入 开发IDE工 ...
- ubuntu系统下配置php支持SQLServer数据库
最近在做一个项目,该项目的数据库是微软公司的的SQLserver ,数据库安装在另一台windows服务器上,而项目却部署在ubuntu server上.那么这样就会涉及到项目在linux上如何链接S ...
- 基于4.5Framework web程序、SQLSERVER数据库打包
原文:基于4.5Framework web程序.SQLSERVER数据库打包 估计很多朋友和我一样,对于C/S程序打包很熟悉,但对于B/S程序打包一头雾水... 最近公司要求我们把项目和数据库(SQL ...
- JavaWeb程序连接SQLserver数据库
声明:一直以来都以为javaweb程序连接数据库是一个很高大上很难的问题,结果今天学习了一下,不到两个小时就解决了,所以总结一篇博客. JavaWeb程序连接SQLserver数据库分为一下步骤: 1 ...
- .net 连接SqlServer数据库及基本增删改查
一.写在前面 因为这学期选修的 .net 课程就要上机考试了,所以总结下.net 操作 SqlServer 数据的方法.(因为本人方向是 Java,所以对.net 的了解不多,但以下所写代码均是经过测 ...
- 【转载】微软官方提供的Sqlserver数据库操作帮助类SQLHelper类
在.NET平台中,C#语言一般使用ADO.NET组件来操作Sqlserver数据库,通过ADO.NET组件可以实现连接数据库.查询数据集.执行SQL语句以及关闭数据库连接等操作,为此网上有很多开发者自 ...
- python连接sqlserver数据库
1.准备工作 python3.6连接sqlserver数据库需要引入pymssql模块 pymssql官方:https://pypi.org/project/pymssql/ 没有安装的话需要: pi ...
- JavaWeb连接SQLServer数据库并完成一个登录界面及其功能设计。
一.JDBC连接SQLserver数据库的步骤: 1.下载SQLserver的JDBC驱动文件——Microsoft JDBC Driver 4.0 for SQL Server 2.例如下载得到的文 ...
随机推荐
- *#【Python】【基础知识】【模块】【tkinter】【学用tkinter画图/制作窗口】
Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 . Tk ...
- oracle建表字段包含关键字注意事项
SQL建表时最好不要把表定义成关键字字段 1 若不小心把表定义成关键字了,比如option, desc等等,oracle版本查询会有问题,短期内无法修改字段名称的,暂时用字段名+双引号解决: SELE ...
- Apache + PHP Yii框架跨域访问API
其实不用在Yii框架中设置任何东西,直接用Ajax调用不同域名的API即可 但是Apache中要这么设置: 首先编辑httpd.conf 去掉这一句的注释:LoadModule headers_ ...
- Nginx部署前后端分离的单页应用配置
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #erro ...
- 【第一季】CH05_FPGA设计Verilog基础(二)Enter a post title
[第一季]CH05_FPGA设计Verilog基础(二) 5.1状态机设计 状态机是许多数字系统的核心部件,是一类重要的时序逻辑电路.通常包括三个部分:一是下一个状态的逻辑电路,二是存储状态机当前状态 ...
- Microsoft SQL Server 2008 R2 Express and Management Studio Express
https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads Microsoft SQL Server 2008 R2 RTM - E ...
- C#字典转对象
/// <summary> /// Assign parameters to specified objects /// </summary> /// <typepara ...
- hdu 5446 lucas+crt+按位乘
http://acm.hdu.edu.cn/showproblem.php?pid=5446 题意:题目意思很简单,要你求C(n,m)mod p的值 p=p1*p2*...pn; 题解:对于C(n,m ...
- JDK + Tomcat 安装 + 制作自定义镜像【第 2 篇 Tomcat】
[第 1 篇 JDK]:https://www.cnblogs.com/del88/p/11842387.html[第 2 篇 Tomcat]:https://www.cnblogs.com/del8 ...
- 对数据库ID进行散裂化计算
import basehash class Hasher: """ 对数据库ID进行散列化计算 """ base36 = basehash. ...