Skip to content

SQLite

SpringBoot使用SQLite数据库

引入依赖

xml
<dependency>
    <groupId>org.xerial</groupId>
    <artifactId>sqlite-jdbc</artifactId>
</dependency>

添加配置项

  • 绝对位置配置方式 jdbc:sqlite:E:/db/test.db
  • 相对位置配置方式 jdbc:sqlite::resource:db/test.db
  • 其他参数:?date_string_format=yyyy-MM-dd HH:mm:ss
yml
spring:
  datasource:
    url: jdbc:sqlite:sb-sqlite.db
    driver-class-name: org.sqlite.JDBC

可以在springboot启动时初始化数据

java
@Slf4j
@Configuration
public class InitTask implements CommandLineRunner {
    @Resource
    private DataSource dataSource;

    @Override
    public void run(String... args) throws Exception {
        Connection conn = dataSource.getConnection();
        Statement stat = conn.createStatement();

        String drop_table = """
                DROP TABLE t_stu
                """;
        stat.executeUpdate(drop_table);

        String create_table = """
                    CREATE TABLE t_stu(
                        id INTEGER PRIMARY KEY AUTOINCREMENT,
                        name TEXT
                    )
                """;
        stat.executeUpdate(create_table);

        String insertStu = """
                INSERT INTO t_stu(name) VALUES('张三'),('李四')
                """;
        stat.executeUpdate(insertStu);

        log.info("sqlite数据库脚本初始化完成...");
    }
}

然后就正常使用了,非常简单

SQLite 建表

数据类型

https://www.sqlite.org/datatype3.html

  • NULL.

  • INTEGER.

  • REAL.

  • TEXT.

  • BLOB.

sql
CREATE TABLE t_stu(
    id INTEGER PRIMARY KEY AUTOINCREMENT,  -- 自增主键
    name TEXT
)