All Projects → cireu → emacsql-sqlite3

cireu / emacsql-sqlite3

Licence: other
Yet another EmacSQL backend for SQLite

Programming Languages

emacs lisp
2029 projects

Yet another EmacSQL backend for SQLite

https://melpa.org/packages/emacsql-sqlite3-badge.svg https://travis-ci.org/cireu/emacsql-sqlite3.svg?branch=master

IMPORTANT NOTE

Package developers should not totally rely on this package, emacs-sqlite is highly recommended (maybe you should support this package as an option) since SQLite CLI is not designed for Inter-Process Communication. This package requires a hack to make it work.

For more information, please read the “SQLite Implementation Difficulties” section of the article written by original developer of emacs-sqlite. It explains the weird behaviour of sqlite3 CLI and why it sucks.

Introduction

This is yet another EmacSQL backend for SQLite, which use official sqlite3 executable to access SQL database.

Installation

emacsql-sqlite3 is available on melpa.

Usage

For Emacs users, please notice that this package won’t provide any feature for convenience. If you aren’t sure you need this, you probably don’t need this.

For package developers, this package can be a replacement of emacsql-sqlite and it doesn’t require user to have a C compiler, but please read following precautions.

  • You need to install sqlite3 official CLI tool, 3.8.2 version or above were tested, emacsql-sqlite3 may won’t work if you using lower version.
  • This package should be compatible with emacsql-sqlite3 for most cases. But foreign key support was disabled by default. To enable this feature, use (emacsql <db> [:pragma (= foreign_keys ON)])

The only entry point to a EmacSQL interface is emacsql-sqlite3, for more information, please check EmacSQL’s README.

Known issue

The tests don’t pass under Emacs 25.1 for unknown reason, so we don’t support Emacs 25.1 currently like emacsql-sqlite. But any PR to improve this are welcomed.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].