Android APP 连接电脑SQL Server数据库

1. 原理
首先要使APP连接到电脑的数据库就要明白为什么能连接以及该怎么连接。Android为什么一直说自己是一个平台呢,因为它没有自己的内核,不是一个完整的OS,它最开始是“借用”Linux实现的,然后就借用至今。这样看来手机就可以理解为一个微型电脑,所以电脑连接另一台电脑的数据库,肯定是可以实现的。说到这里肯定很多人还是不懂为啥能连接,嗯嗯其实我自己也不太懂反正我成功了,嘻嘻。
相信大家都听过一些连接数据库的接口,比如什么odbc、jdbc等等。这里我就使用的是在jdbc基础上封装的jtds,它的具体内容大家可以百度。
2.具体实现
首先在网上下载jtds的压缩包,我用的版本是jtds-1.2.7。下载好了后在自己新建的工程下新建一个文件夹命名为libs ,大致的位置是在app文件夹下。然后把下载的压缩包放入到新建的libs文件夹中。好了准备好了之后我们就可以开始尝试连接了。
我们首先封装一个getSQLConnection(String ip, String user, String pwd, String db)类型的函数,用于获取Connection对象。第一个参数ip是你的电脑当前连接的网络的ip地址(可以通过打开cmd然后输入ipconfig查看)。因为是远程连接数据库,所以要使用ip,不同于连接本地数据库。第二个参数user是你的数据库的用户名称,一般SQL Server默认的是sa,第三个参数则是你的登录数据库的密码,第四个是你要连接到的自己建立的数据库名称。详细代码如下:

public static Connection getSQLConnection(String ip, String user, String pwd, String db){Connection con = null;try{Class.forName("net.sourceforge.jtds.jdbc.Driver");//int t=1;con = DriverManager.getConnection("jdbc:jtds:sqlserver://" + ip + ":1433/" + db + ";useunicode=true;characterEncoding=UTF-8", user, pwd);//加上 useunicode=true;characterEncoding=UTF-8 防止中文乱码//int j=0;} catch (ClassNotFoundException e){e.printStackTrace();} catch (SQLException e){e.printStackTrace();}return con;}

现在我们就可以写一个testSQL()函数来测试是否可以连接。代码如下:

public static String testSQL(){String result = "字段1  -  字段2\n";try{Connection conn = getSQLConnection("你的ip", "数据库登录名", "数据库登录密码", "数据库名");//远程连接的端口一定要查看电脑的,而不是手机的String sql = "select * from 数据库中的表名";Statement stmt = conn.createStatement();ResultSet rs = stmt.executeQuery(sql);while (rs.next()){// <code>ResultSet</codeString s1 = rs.getString("数据库中的字段名");String s2 = rs.getString("数据库中的字段名");result += s1 + "  -  " + s2 + "\n";System.out.println(s1 + "  -  " + s2);}rs.close();stmt.close();conn.close();} catch (SQLException e){e.printStackTrace();//result += "查询数据异常!" + e.getMessage();}return result;//return bool;}

此时我们可以写一个main函数来看看是否可以连接成功。

public static void main(String[] args){String result = testSQL();System.out.println(result);}

可以看到输出结果为:

与数据库中存储的信息一致。这里只是一个查询相关的示例,如果大家要执行插入、删除的操作可以在网上查查,这种有很多教程。
今天就写这么多,下一篇是加载百度地图实现定位。

Android APP连接电脑数据库(以SQL Server为例)相关推荐

  1. android app数据电脑,Android APP连接电脑数据库(以SQL Server为例)

    Android APP 连接电脑SQL Server数据库 1. 原理 首先要使APP连接到电脑的数据库就要明白为什么能连接以及该怎么连接.Android为什么一直说自己是一个平台呢,因为它没有自己的 ...

  2. Mendix一练一动: Mendix Studio Pro连接外围数据库(SQL Server)实现增删改查

    一. 环境准备 1: 连接外围数据库是Mendix的内置功能,不同数据库的连接方式都大同小异,本文以SQL Server为例讲解: 2:本文假设读者是Mendix初级学者,因此对每一步骤作者都尽量表述 ...

  3. sql server配置连接oracle数据库,MS SQL Server连接Oracle

    MS SQL Server连接Oracle 1.  安装oracle 10G客户端 要访问oracle数据库必须安装oracle客户端.安装oracle客户端有两种方式,即完整安装和立即安装,这两种方 ...

  4. 利用花生壳实现B电脑远程连接或程序访问A电脑上的数据库,并将图片音频从B电脑存储至A电脑上的SQL Server数据库并读出

    想必大家都有这样的疑问,A电脑上安装了SQL Server并创建了数据库,B电脑上也安装有SQL Server,现在需要用B电脑上的SQL Server连接A电脑上SQL Server里的数据库并进行 ...

  5. Java连接SQL Server 2012【查看自己电脑上的SQL Server端口号;附:jar包】

    目   录 1.查看自己电脑上的SQL Server端口号 2.Java连接SQL Server数据库 2.1.jar包下载 2.2.Java项目:导入jar包 2.3.Java连接SQL Serve ...

  6. mysql2005备份_创建完整数据库备份 - SQL Server | Microsoft Docs

    完整数据库备份Create a Full Database Backup 09/12/2019 本文内容 适用于:Applies to: SQL ServerSQL Server(所有支持的版本)SQ ...

  7. 升级SharePoint数据库到SQL Server 2005的一点心得

    之前数据库服务器我用的是SQL Server 2000 Standard Edition+SP4.SharePoint Portal Server 2003更新到了SP2. 早就听说2005比2000 ...

  8. 数据库服务器(SQL SERVER)的安全设置

    数据库服务器(SQL SERVER)的安全设置 一.开发注点意 1.写好代码,运行拼接式的SQL语句要打醒12分精神,尽量用存储过程,或者是参数式的SQL语句,比如  [csharp] string ...

  9. db2 删除存储过程_数据库教程-SQL Server存储过程使用及异常处理

    SQL Server存储过程 存储过程(Procedure)是数据库重要对象之一,也是数据库学习的重点之一.本文,我们以SQL Server为例对存储过程的概念.定义.调用.删除及存储过程调用异常等通 ...

最新文章

  1. 计算机系统加固方法有哪些,计算机系统的加固 .doc
  2. [渝粤教育] 西南科技大学 建筑制图 在线考试复习资料(1)
  3. OpenCV学习——矩阵操作总结(转)
  4. 以太坊智能合约Java_以太坊:调用已部署的智能合约
  5. php更新数据步骤,Thinkphp5模型更新数据方法
  6. 微信小程序 3 岁:日活超 3 亿,交易额超 8000 亿
  7. 2.高性能MySQL --- MySQL 基准测试
  8. 普中28335开发攻略_DSP28335汇编教程
  9. 学习日记-wps表格 工资条的制作
  10. 华为终端穿戴软件测试,【华为终端测试面试】说说群面,可谓是 最...-看准网...
  11. latex-符号和长度
  12. jsp手机h5页面出现了 微信链接带打开何新浪uc打开格式都显示css起作用,但是用谷歌浏览器显示css没起作用
  13. C语言的一些基础语法
  14. RFID与物联网的关系
  15. BIGO 的数据管理与应用实践
  16. 技术改变生活--切换固定IP和自动分配IP地址的脚本
  17. UIFont字体大全
  18. 源代码服务器管理员保密协议6,用户名管理,密码123456可以登录到管理员
  19. OICQ通讯协议_详述
  20. java计算机毕业设计计算机类在线学习管理系统MyBatis+系统+LW文档+源码+调试部署

热门文章

  1. Android获取IMEI和MEID
  2. 从算法上解读自动驾驶是如何实现的?
  3. 工作组模式下Windows共享分析
  4. Pytorch CNN 手写数字识别 0-9
  5. 面试必问的 Java 字节流与字符流
  6. matlab 多边形 自相交,怎么判断多边形是否自相交的算法
  7. 小白的学习之路--IDEA安装及使用
  8. 网络通讯学习(1)---TCP通讯
  9. React Native之React Navigation踩坑
  10. Cesium中billboard广告牌使用PinBuilder创建的自定义样式地图图钉