来源:小编 更新:2025-06-21 05:27:30
用手机看
你有没有想过,你的安卓手机里那些应用是怎么存储数据的呢?没错,就是那个神秘的SQLite数据库!今天,我就要手把手教你如何在安卓系统中搭建一个属于自己的数据小天地。准备好了吗?让我们一起开启这段有趣的旅程吧!
首先,你得知道SQLite是个啥。它可是个轻量级的数据库管理系统,广泛应用于各种平台,包括安卓系统。简单来说,SQLite就像是一个小型的数据仓库,可以帮你存储、查询和管理各种数据。
在开始搭建数据库之前,你需要准备以下几样东西:
1. Android Studio:这是安卓开发的官方IDE,里面自带了Android SDK,是搭建数据库的必备工具。
2. Java开发环境:因为SQLite是用Java编写的,所以你需要安装Java开发环境。
3. SQLite JDBC驱动:这是连接Java程序和SQLite数据库的桥梁,可以从SQLite官网下载。
1. 创建数据库连接:在Android Studio中,新建一个Java类,比如叫`DatabaseHelper.java`。导入以下代码来创建数据库连接:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseHelper {
private static final String DB_URL = \jdbc:sqlite:MyDatabase.db\;
public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(DB_URL);
}
2. 创建数据库表:接下来,你需要创建一个表来存储数据。继续在`DatabaseHelper.java`中添加以下代码:
```java
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class DatabaseHelper {
// ...(上面的代码)
public static void createTable() throws SQLException {
String sql = \CREATE TABLE IF NOT EXISTS users (\
+ \id INTEGER PRIMARY KEY AUTOINCREMENT, \
+ \name TEXT NOT NULL, \
+ \age INTEGER);\;
try (Connection conn = getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.executeUpdate();
}
}
3. 执行创建表操作:在主Activity中,调用`createTable()`方法来创建表:
```java
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
DatabaseHelper.createTable();
Toast.makeText(this, \Table created successfully!\, Toast.LENGTH_SHORT).show();
} catch (SQLException e) {
Toast.makeText(this, \Error creating table: \ + e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
1. 编写插入数据的SQL语句:在`DatabaseHelper.java`中添加以下代码:
```java
public class DatabaseHelper {
// ...(上面的代码)
public static void insertData(String name, int age) throws SQLException {
String sql = \INSERT INTO users(name, age) VALUES(?, ?);\;
try (Connection conn = getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.setString(1, name);
pstmt.setInt(2, age);
pstmt.executeUpdate();
}
}
2. 在Activity中调用插入数据的方法:在MainActivity中,添加以下代码来插入数据:
```java
@Override
protected void onCreate(Bundle savedInstanceState) {
// ...(上面的代码)
try {
DatabaseHelper.insertData(\张三\, 25);
Toast.makeText(this, \Data inserted successfully!\, Toast.LENGTH_SHORT).show();
} catch (SQLException e) {
Toast.makeText(this, \Error inserting data: \ + e.getMessage(), Toast.LENGTH_SHORT).show();
}
1. 编写查询数据的SQL语句:在`DatabaseHelper.java`中添加以下代码:
```java
public class DatabaseHelper {
// ...(上面的代码)
public static void queryData() throws SQLException {
String sql = \SELECT FROM users;\;
try (Connection conn = getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery()) {
while (rs.next()) {
int id = rs.getInt(\id\);
String name = rs.getString(\name\);
int age = rs.getInt(\age\);
// 处理查询结果
System.out.println(\ID: \ + id + \, Name: \ + name + \, Age: \ + age);
}
}
}
2. 在Activity中调用查询数据的方法:在MainActivity中,添加以下代码来查询数据:
```java
@Override
protected void onCreate(Bundle savedInstanceState) {
// ...(上面的代码)
try {
DatabaseHelper.queryData();
Toast.makeText(this, \Data queried successfully!\