= sqlite =
* https://www.sqlite.org/index.html
SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world.
[[Python/DjangoREST|DjangoREST]] also supports sqlite.
There is also a [[https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc/3.28.0|JDBC driver]] for it ([[https://github.com/xerial/sqlite-jdbc|Github source code]]) and it's JPA compliant.
A JDBC sample URL for a DB stored in sample.db file is
{{{
jdbc:sqlite:sample.db
}}}
{{{#!highlight sh
apt install sqlite3
sqlite3 test.db
}}}
{{{#!highlight sql
-- SQL steps
CREATE TABLE IF NOT EXISTS PushNotificationsTable (push text);
insert into PushNotificationsTable values('aaa');
select * from PushNotificationsTable;
.help
.databases
.tables
.dbinfo
.output out.txt
.dump PushNotificationsTable
.quit
}}}
== Spring notes ==
pom.xml
{{{#!highlight xml
com.zsoltfabok
sqlite-dialect
1.0
org.xerial
sqlite-jdbc
3.45.1.0
}}}
application.properties
{{{
spring.datasource.url=jdbc:sqlite:/tmp/test.db
spring.datasource.driverClassName=org.sqlite.JDBC
spring.datasource.username=sa
spring.datasource.password=????????
spring.jpa.database-platform=org.hibernate.dialect.SQLiteDialect
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.show-sql=true
}}}
application.yaml
{{{#!highlight yaml
spring:
datasource:
url: jdbc:sqlite:/tmp/test.db
driverClassName: org.sqlite.JDBC
username: sa
password: ????????
jpa:
database-platform: org.hibernate.dialect.SQLiteDialect
hibernate:
ddl-auto: create-drop
show-sql: true
}}}