实现
局域网场景下,Android客户端连接数据库,并可进行增删改查。
直接连接
项目工程引入JDBC驱动,直接连接。
JDBC是Java Data Base Connectivity的缩写,即“java数据库连接”,一组Java语言编写的类和接口,为Java层直接操作关系型数据库提供标准API。原理很简单,主要是服务器DBMS发送SQL(结构化查询语言)指令实现各种数据库操作。
间接连接
服务器上用PHP+DBMS做服务器端,PHP通过json或xml封装DBMS数据后返给Android客户端。
JDBC方式安全性不高且访问数据量过多易出问题。另外,Android系统本身提供对json或xml直接解析API,所以建议采用第PHP+DBMS方式,实用性与安全性较高。
驱动
MySQL mm.mysql-2.0.2-bin.jar
Connection con = null;
Class.forName( "org.gjt.mm.mysql.Driver" );
con = DriverManager.getConnection( "jdbc:mysql://DbComputerNameOrIPAddr:3306/DatabaseName", UserName, Password );
PostgreSQL pgjdbc2.jar
Connection con = null;
Class.forName( "org.postgresql.Driver" );
con = DriverManager.getConnection( "jdbc:postgresql://DbComputerNameOrIPAddr/DatabaseName", UserName, Password );
Oracle classes12.zip
Connection con = null;
Class.forName( "oracle.jdbc.driver.OracleDriver" );
con = DriverManager.getConnection( "jdbc:oracle:thin:@DbComputerNameOrIPAddr:1521:DatabaseName", UserName, Password );
Sybase jconn2.jar
Connection con = null;
Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" );
con = DriverManager.getConnection( "jdbc:sybase:Tds:DbComputerNameOrIPAddr:2638/DatabaseName", UserName, Password );
//(Default-Username/Password: "dba"/"sql")
Microsoft SQLServer
Connection con = null;
Class.forName( "net.sourceforge.jtds.jdbc.Driver" );
con = DriverManager.getConnection( "jdbc:jtds:sqlserver://DbComputerNameOrIPAddr:1433/DatabaseName", UserName, Password);
Microsoft SQLServer
Connection con = null;
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" );
con = DriverManager.getConnection( "jdbc:microsoft:sqlserver://DbComputerNameOrIPAddr:1433;databaseName=master", UserName, Password );
连接SQLite
通过开源库sqlite-jdbc实现连接通信。
连接SQL Server
方式一
通过Microsoft的JDBC驱动连接。此JDBC驱动一共有三个文件,分别是mssqlserver.jar、msutil.jar、msbase.jar。但Microsoft官网已找不到这些文件,其提供的sqljdbc.jar和sqljdbc4.jar并不支持SQL Server 2000。
驱动程序名
com.microsoft.jdbc.sqlserver.SQLServerDriver
数据库连接URL
jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=dbname
方式二
通过jTDS驱动连接。
驱动程序名
net.sourceforge.jtds.jdbc.Driver
数据库连接URL
jdbc:jtds:sqlserver://localhost:1433/dbname
Demo
AndroidSQLServerCommunication