= 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.
[[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.28.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
}}}