1. 引言
随着Web应用程序的广泛使用,连接数据库成为了程序员必须掌握的技能之一。在当前的技术环境下,使用Android移动开发成为了主流开发方式之一,然而,在Android Studio中使用Java语言连接MSSQL数据库却成为了一道难关。本文将介绍如何利用E4A连接MSSQL数据库,并提供一个简单的实例。
2. E4A简介
2.1 什么是E4A
E4A(Easy For Android)是一个基于Basic语言的Android app开发工具,可以用简单且易于理解的Basic代码完成Android应用程序的编写,E4A兼容大部分的BASIC语句,可以轻松进行开发。目前,E4A已经由8.0.1版更新至13.02版,支持多线程编程。
2.2 E4A的特点
相对于其他Android应用开发工具而言,E4A有着以下几个特点:
基于BASIC语言,易于学习
开发容易,使用方便
支持开箱即用,拥有大量的可用组件和模板
可以像其他Java Android库一样使用
E4A可以与Java(Android)混合编程
3. E4A连接MSSQL数据库
3.1 数据库的准备
本文以Windows Server 2012操作系统为例,介绍如何在SQL Server Management Studio(SSMS)中创建并填充一个名为"TestDB"的测试数据库。首先,打开SSMS并连接到目标服务器。
3.1.1 创建数据库
在SQL Server Management Studio中,选择"New Query"并在弹出的窗口中输入以下的SQL语句,点击"Execute"按钮即可完成数据库创建。
CREATE DATABASE TestDB;
GO
3.1.2 创建表
输入以下的SQL语句创建一个名为"Persons"的表,并添加姓名、电话和生日三个字段:
USE TestDB;
GO
CREATE TABLE Persons (
PersonID int PRIMARY KEY,
LastName varchar(255),
FirstName varchar(255),
Phone varchar(255),
Birthday date
);
GO
3.1.3 填充表
输入以下SQL语句,为"Persons"表添加数据:
INSERT INTO Persons (PersonID, LastName, FirstName, Phone, Birthday)
VALUES
(1, 'Smith', 'John', '12345678', '1990-05-06'),
(2, 'Johnson', 'Lily', '23456789', '1995-08-03'),
(3, 'Brown', 'Tom', '34567890', '1987-01-11'),
(4, 'Davis', 'Ben', '45678901', '1999-11-11'),
(5, 'Wilson', 'Linda', '56789012', '1994-02-18');
GO
3.2 E4A代码实现
3.2.1 导入库
通过以下代码将JDBC库导入E4A项目中(库来源:http://www.java2s.com ):
#AdditionalJar:?mysql-connector-java-5.1.35-bin.jar
3.2.2 连接MSSQL数据库
通过以下代码建立与MSSQL数据库的连接:
Sub?Process_Globals
????Dim?driver?As?String?=?"net.sourceforge.jtds.jdbc.Driver"
????Dim?server?As?String?=?"192.168.1.222"?'你的数据库服务器IP地址
????Dim?port?As?Int?=?1433??'数据库服务器默认端口号
????Dim?db?As?String?=?"TestDB"
????Dim?user?As?String?=?"sa"
????Dim?password?As?String?=?"password"?'你的数据库密码
????Dim?sql?As?StringBuilder
????Dim?conn?As?Connection
????sql.Initialize
????sql.Append("jdbc:jtds:sqlserver://")
????sql.Append(server?&?":"?&?port?&?"/")
????sql.Append(db?&?";user="?&?user?&?";password="?&?password)
????conn.Initialize("net.sourceforge.jtds.jdbc.Driver",?sql.ToString)
End?Sub
注意:此处的用户名和密码为MSSQL的登录名和密码,不是Windows系统的帐户名和密码。
3.2.3 执行SQL语句
以下代码可以查询"Persons"表中所有记录:
Dim?qry?As?String?=?"SELECT?*?FROM?Persons"
Dim?stmt?As?Statement
Dim?rs?As?ResultSet
stmt=conn.CreateStatement
rs=stmt.executeQuery(qry)
Do?While?rs.NextRow
????Log("PersonID:"?&?rs.GetInt(1))
????Log("LastName:"?&?rs.GetString(2))
????Log("FirstName:"?&?rs.GetString(3))
????Log("Phone:"?&?rs.GetString(4))
????Log("Birthday:"?&?rs.GetString(5))
Loop
rs.Close
stmt.Close
conn.Close
注意:根据查询结果的数据类型,可以通过ResultSet中的方法获取相应字段的值。
4. 总结
本文主要介绍了如何利用E4A连接MSSQL数据库,并提供了一个简单的实例来演示E4A对MSSQL数据库的查询操作。总的来说,对于初学者而言,E4A对于连接MSSQL数据库与Java的混合编程都非常容易理解和上手,同时E4A拥有一系列的组件和模板,可以用于开发各类Android应用。