forked from mirror/go-sqlite3
commit
a5cc8a2afa
|
@ -2,3 +2,6 @@
|
||||||
*.exe
|
*.exe
|
||||||
*.dll
|
*.dll
|
||||||
*.o
|
*.o
|
||||||
|
|
||||||
|
# VSCode
|
||||||
|
.vscode
|
||||||
|
|
34
README.md
34
README.md
|
@ -19,15 +19,15 @@ Supported Golang version:
|
||||||
|
|
||||||
- [Installation](#installation)
|
- [Installation](#installation)
|
||||||
- [API Reference](#api-reference)
|
- [API Reference](#api-reference)
|
||||||
|
- [Connection String](#connection-string)
|
||||||
- [Features](#features)
|
- [Features](#features)
|
||||||
- [Compilation](#compilation)
|
- [Compilation](#compilation)
|
||||||
- [Android](#android)
|
- [Android](#android)
|
||||||
- [ARM](#arm)
|
- [ARM](#arm)
|
||||||
- [Cross Compile](#cross-compile)
|
- [Cross Compile](#cross-compile)
|
||||||
- [Docker](#docker)
|
|
||||||
- [Alpine](#alpine)
|
|
||||||
- [Google Cloud Platform](#google-cloud-platform)
|
- [Google Cloud Platform](#google-cloud-platform)
|
||||||
- [Linux](#linux)
|
- [Linux](#linux)
|
||||||
|
- [Alpine](#alpine)
|
||||||
- [Fedora](#fedora)
|
- [Fedora](#fedora)
|
||||||
- [Ubuntu](#ubuntu)
|
- [Ubuntu](#ubuntu)
|
||||||
- [Mac OSX](#mac-osx)
|
- [Mac OSX](#mac-osx)
|
||||||
|
@ -54,6 +54,36 @@ API documentation can be found here: http://godoc.org/github.com/mattn/go-sqlite
|
||||||
|
|
||||||
Examples can be found under the [examples](./_example) directory
|
Examples can be found under the [examples](./_example) directory
|
||||||
|
|
||||||
|
# Connection String
|
||||||
|
|
||||||
|
When creating a new SQLite database or connection to an existing one, with the file name additional options can be given.
|
||||||
|
This is also known as a DSN string. (Data Source Name).
|
||||||
|
|
||||||
|
Options are append after the filename of the SQLite database.
|
||||||
|
The database filename and options are seperated by an `?` (Question Mark).
|
||||||
|
|
||||||
|
This also applies when using an in-memory database instead of a file.
|
||||||
|
|
||||||
|
Options can be given using the following format: `KEYWORD=VALUE` and multiple options can be combined with the `&` ampersand.
|
||||||
|
|
||||||
|
This library supports dsn options of SQLite itself and provides additional options.
|
||||||
|
|
||||||
|
| Name | Key | Value(s) | Description |
|
||||||
|
|------|-----|----------|-------------|
|
||||||
|
| Shared-Cache Mode | cache | <ul><li>shared</li><li>private</li></ul> | Set cache mode for more information see [sqlite.org](https://www.sqlite.org/sharedcache.html) |
|
||||||
|
| Time Zone Location | _loc | auto | Specify location of time format. |
|
||||||
|
| Busy Timeout | _busy_timeout | `int` | Specify value for sqlite3_busy_timeout. |
|
||||||
|
| Transaction Lock | _txlock | <ul><li>immediate</li><li>deferred</li><li>exclusive</li></ul> | Specify locking behavior for transactions. |
|
||||||
|
| Foreign Keys | _foreign_keys | <ul><li>0</li><li>1</li></ul> | Enable or disable enforcement of foreign keys. |
|
||||||
|
| Recursive Triggers | _recursive_triggers | <ul><li>0</li><li>1</li></ul> | Enable or disable recursive triggers. |
|
||||||
|
| Mutex Locking | _mutex | <ul><li>no</li><li>full</li></ul> | Specify mutex mode. |
|
||||||
|
|
||||||
|
## DSN Examples
|
||||||
|
|
||||||
|
```
|
||||||
|
file:test.db?cache=shared&mode=memory
|
||||||
|
```
|
||||||
|
|
||||||
# Features
|
# Features
|
||||||
|
|
||||||
This package allows additional configuration of features available within SQLite3 to be enabled or disabled by golang build constraints also known as build `tags`.
|
This package allows additional configuration of features available within SQLite3 to be enabled or disabled by golang build constraints also known as build `tags`.
|
||||||
|
|
Loading…
Reference in New Issue