实训-SQLite

SQLite是什么,为什么要使用SQLite?

1.SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,并且占用资源非常的低
2.当我们需要存储一些比较复杂的数据的时候,SharedPreferences存储并不能够满足我们的要求,这时候我们就需要一种更加便于管理的存储方式,SQLite便能够帮助我们更加方便的存储和管理数据

创建数据库和数据表

使用SQLite创建数据库和表,首先要创建一个类继承SQLiteOpenHelper,并实现它的方法
 private Context context;
    //sql建表语句
    private static final String TABLE_PRODUOT = "create table Student(" +
            "id integer primary key autoincrement," +
            "name text," +
            "age integer)";

    public SQLTest(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
        this.context = context;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        //建表
        db.execSQL(TABLE_PRODUOT);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    }
添加数据
ContentValues values = new ContentValues();
values.put("name",nameET.getText().toString());
values.put("age",Integer.parseInt(ageET.getText().toString().intern()));
db.insert("Student",null,values);
删除数据
db.update("Student",values,"name = ?",new String[]{nameET.getText().toString()});
查询数据
Cursor cursor = db.query("Student",null,null,null,null,null,null);
读取数据将其打印出来
  if (cursor.moveToFirst()) {
                    do {
                        int id = cursor.getInt(cursor.getColumnIndex("id"));
                        String name = cursor.getString(cursor.getColumnIndex("name"));
                        int age = cursor.getInt(cursor.getColumnIndex("age"));
                    } while (cursor.moveToNext());
                }
                cursor.close();
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用 Eclipse 实现向 SQLite 数据库中增加、删除、查询数据的示例代码: 1. 引入 SQLite JDBC 驱动 在项目中引入 SQLite JDBC 驱动,可以到 SQLite 官网下载最新版的 JDBC 驱动,然后将其添加到项目的 classpath 中。 2. 创建数据库连接 使用 JDBC 连接字符串连接到 SQLite 数据库: ``` String url = "jdbc:sqlite:/path/to/database.db"; Connection conn = DriverManager.getConnection(url); ``` 其中,`/path/to/database.db` 为 SQLite 数据库的路径。 3. 创建表 在 SQLite 中创建表的 SQL 语句如下: ``` CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, ... ); ``` 例如,创建名为 `users` 的表,包含 `id` 和 `name` 两个列: ``` String sql = "CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)"; Statement stmt = conn.createStatement(); stmt.execute(sql); ``` 4. 插入数据 在 SQLite 中插入数据的 SQL 语句如下: ``` INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); ``` 例如,向 `users` 表中插入一条数据: ``` String sql = "INSERT INTO users (name) VALUES ('Alice')"; Statement stmt = conn.createStatement(); stmt.executeUpdate(sql); ``` 5. 删除数据 在 SQLite 中删除数据的 SQL 语句如下: ``` DELETE FROM table_name WHERE condition; ``` 例如,删除 `users` 表中名为 `Alice` 的记录: ``` String sql = "DELETE FROM users WHERE name = 'Alice'"; Statement stmt = conn.createStatement(); stmt.executeUpdate(sql); ``` 6. 查询数据 在 SQLite 中查询数据的 SQL 语句如下: ``` SELECT column1, column2, ... FROM table_name WHERE condition; ``` 例如,查询 `users` 表中所有记录: ``` String sql = "SELECT * FROM users"; Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); System.out.println("ID = " + id + ", Name = " + name); } ``` 完整代码示例: ```java import java.sql.*; public class SQLiteExample { public static void main(String[] args) { String url = "jdbc:sqlite:/path/to/database.db"; try { Connection conn = DriverManager.getConnection(url); // Create table String sql = "CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)"; Statement stmt = conn.createStatement(); stmt.execute(sql); // Insert data sql = "INSERT INTO users (name) VALUES ('Alice')"; stmt.executeUpdate(sql); // Query data sql = "SELECT * FROM users"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); System.out.println("ID = " + id + ", Name = " + name); } // Delete data sql = "DELETE FROM users WHERE name = 'Alice'"; stmt.executeUpdate(sql); // Close connection conn.close(); } catch (SQLException e) { System.out.println(e.getMessage()); } } } ``` 注意:以上代码示例为简化版,实际开发中需要进行错误处理、异常处理和资源释放等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值