Android开发实战之SQL Server

1. SQL Server简介

Microsoft SQL Server是一种关系型数据库管理系统,常用于存储和检索数据。

与许多其他RDBMS(如MySQL,PostgreSQL)不同,SQL Server只能在Windows操作系统上运行。 它是一种商业性质的软件,但也提供了免费的Express版本。

--创建一个表

CREATE TABLE Persons (

PersonID int,

LastName varchar(255),

FirstName varchar(255),

Address varchar(255),

City varchar(255)

);

2. Android应用程序如何使用SQL Server

2.1 SQL Server数据源

Android应用程序可以使用多种数据源,包括SQLite,Web服务和Microsoft SQL Server。

可以使用Java JDBC驱动程序从Android应用程序连接到SQL Server。 要使用JDBC连接到SQL Server,需要Microsoft JDBC驱动程序的最新版本。 驱动程序可从微软下载站点下载。

以下是与SQL Server建立连接的基本代码。

public class SqlConnection {

public static Connection getConnection() {

Connection connection = null;

String jdbcUrl = "jdbc:sqlserver://hostname:portNumber/databaseName";

String user = "username";

String password = "password";

try {

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

connection = DriverManager.getConnection(jdbcUrl, user, password);

} catch (Exception ex) {

ex.printStackTrace();

}

return connection;

}

}

通过上面的代码,就可以连接到指定的SQL Server数据库中。

2.2 执行SQL查询

Android应用程序需要执行各种SQL查询,包括插入,更新和删除数据。 这里提供了一些常见的SQL查询。

2.2.1 插入数据

下面是向SQL Server表中插入新数据的代码。

public boolean insertPerson(Person person) {

boolean result = false;

String sql = "INSERT INTO Persons (LastName, FirstName, Address, City) VALUES (?, ?, ?, ?)";

try {

Connection connection = SqlConnection.getConnection();

PreparedStatement preparedStatement = connection.prepareStatement(sql);

preparedStatement.setString(1, person.getLastName());

preparedStatement.setString(2, person.getFirstName());

preparedStatement.setString(3, person.getAddress());

preparedStatement.setString(4, person.getCity());

int rowsInserted = preparedStatement.executeUpdate();

if (rowsInserted > 0) {

result = true;

}

} catch (Exception ex) {

ex.printStackTrace();

}

return result;

}

2.2.2 更新数据

下面是更新SQL Server表中数据的代码。

public boolean updatePerson(Person person) {

boolean result = false;

String sql = "UPDATE Persons SET LastName = ?, FirstName = ?, Address = ?, City = ? WHERE PersonID = ?";

try {

Connection connection = SqlConnection.getConnection();

PreparedStatement preparedStatement = connection.prepareStatement(sql);

preparedStatement.setString(1, person.getLastName());

preparedStatement.setString(2, person.getFirstName());

preparedStatement.setString(3, person.getAddress());

preparedStatement.setString(4, person.getCity());

preparedStatement.setInt(5, person.getPersonID());

int rowsUpdated = preparedStatement.executeUpdate();

if (rowsUpdated > 0) {

result = true;

}

} catch (Exception ex) {

ex.printStackTrace();

}

return result;

}

2.2.3 删除数据

下面是从SQL Server表中删除数据的代码。

public boolean deletePerson(int personID) {

boolean result = false;

String sql = "DELETE FROM Persons WHERE PersonID = ?";

try {

Connection connection = SqlConnection.getConnection();

PreparedStatement preparedStatement = connection.prepareStatement(sql);

preparedStatement.setInt(1, personID);

int rowsDeleted = preparedStatement.executeUpdate();

if (rowsDeleted > 0) {

result = true;

}

} catch (Exception ex) {

ex.printStackTrace();

}

return result;

}

3. 结论

本文主要介绍了SQL Server数据库和Android应用程序之间的连接方式,以及如何执行各种SQL查询。 通过这些基本的SQL查询和连接操作,可以很容易地将Android应用程序与SQL Server集成在一起,实现数据的存储和检索。

数据库标签