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集成在一起,实现数据的存储和检索。