Update readme.

This commit is contained in:
xeodou 2015-04-01 22:48:28 +08:00
parent ccb4365156
commit 6375837186
1 changed files with 45 additions and 12 deletions

View File

@ -1,31 +1,60 @@
go-sqlite3
go-sqlcipher
==========
[![Build Status](https://travis-ci.org/mattn/go-sqlite3.png?branch=master)](https://travis-ci.org/mattn/go-sqlite3)
[![Coverage Status](https://coveralls.io/repos/mattn/go-sqlite3/badge.png?branch=master)](https://coveralls.io/r/mattn/go-sqlite3?branch=master)
Description
-----------
sqlite3 driver conforming to the built-in database/sql interface
SQLCipher driver conforming to the built-in database/sql interface and using the lastest sqlite3 code.
which is
`3.8.8.3 2015-02-25 13:29:11 9d6c1880fb75660bbabd693175579529785f8a6b`
Working with sqlcipher version which is
`3.8.6 2014-08-15 11:46:33 9491ba7d738528f168657adb43a198238abde19e`
It's wrapper with
* [go-sqlite3](https://github.com/mattn/go-sqlite3) sqlite3 driver for go that using database/sql.
* [SQLCipher](https://github.com/sqlcipher/sqlcipher) SQLCipher is an SQLite extension that provides 256 bit AES encryption of database files.
* Using [openssl](https://github.com/openssl/openssl) as the 256 bit AES encryption.
*Have't build test in a windows machine or linux machine*
**Working in my macbook-air**
```
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.3.0
Thread model: posix
OpenSSL 0.9.8zd 8 Jan 2015
built on: Mar 9 2015
platform: darwin64-x86_64-llvm
options: bn(64,64) md2(int) rc4(ptr,char) des(idx,cisc,16,int) blowfish(idx)
compiler: -arch x86_64 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -O3 -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DMD32_REG_T=int -DOPENSSL_NO_IDEA -DOPENSSL_PIC -DOPENSSL_THREADS -DZLIB -mmacosx-version-min=10.6
OPENSSLDIR: "/System/Library/OpenSSL"
```
Installation
------------
This package can be installed with the go get command:
go get github.com/mattn/go-sqlite3
go get github.com/xeodou/go-sqlcipher
Documentation
-------------
API documentation can be found here: http://godoc.org/github.com/mattn/go-sqlite3
API documentation can be found here: http://godoc.org/github.com/xeodou/go-sqlcipher
Examples can be found under the `./_example` directory
FAQ
---
The golang code is copy from [go-sqlcipher](https://github.com/mattn/go-sqlite3)
If you have some issue, you can maybe you can find from https://github.com/mattn/go-sqlite3/issues
Here is some help from go-sqlite3 project.
* Can't build go-sqlite3 on windows 64bit.
> Probably, you are using go 1.0, go1.0 has a problem when it comes to compiling/linking on windows 64bit.
@ -45,18 +74,22 @@ FAQ
Use `loc=auto` in SQLite3 filename schema like `file:foo.db?loc=auto`.
* Print some waring messages like `warning: 'RAND_add' is deprecated: first deprecated in OS X 10.7`
You can ignore these message.
License
-------
MIT: http://mattn.mit-license.org/2012
MIT:
sqlite3-binding.c, sqlite3-binding.h, sqlite3ext.h
The -binding suffix was added to avoid build failures under gccgo.
In this repository, those files are amalgamation code that copied from SQLite3. The license of those codes are depend on the license of SQLite3.
In this repository, those files are amalgamation code that copied from SQLCipher. The license of those codes are depend on the license of SQLCipher.
Author
------
Yasuhiro Matsumoto (a.k.a mattn)
[xeodou](https://xeodou.me)