Latest SQLite Binary for January 2015

Source: Internet
Author: User
Tags local time sqlite sqlite database

Latest SQLite Binary for January 2015

Well I went through quite a few threads to find a updated, decent sqlite binary. Didn ' t find any, that met the criteria.

So I compiled one.

Here's SQLite 3.8.7.4 combined into a single source file (the amalgamation) for ARM V6 and V7.

These binaries is built with optimized ARMV6 and ARMV7 flags.

Should work in Android 2.x and up.

I have attached 2 versions to this thread, compressed and uncompressed. I had to change the extension to apk otherwise I can ' t upload it. Just remove the extension.

Just download and run the uncompressed file, whereas compressed you has to uncompress it first.

Here ' s 2 alternative download links:

Compressed:

ARMv6
Http://d-h.st/CNlY
ARMv7
Http://d-h.st/Tlg


Uncompressed:

ARMv6
Http://d-h.st/6lCg
ARMv7
Http://d-h.st/dpIw

* Update *
E:v:a alerted me to A problem with certain versions of Android didn ' t like the dynamic linking. So now it's statically linked.

I now run 4 tests on the built binary.
1. I Import the Chinook test database using-init and dump it.
2. I Open the already created SQLite database and dump it.
3. I vacuum the Chinook database.
4. I reindex the Chinook database.

Added 64bit file support, but it had not been fully tested.

Hopefully someone can do some tests with large five gigabyte data bases,
Otherwise I ' ll get to it eventually.

Also, since I ' ve actually made changes to the SQLite code since the update in January, I ' ve created a github.
Http://github.com/tech128/sqlite3

Attached Files

sqlite3.armv6.apk (874.0 KB, 1014 views)
sqlite3.armv6.7z (375.2 KB, 252 views)
sqlite3.armv7.apk (878.0 KB, 2038 views)
sqlite3.armv7.7z (376.9 KB, 880 views)

Q:Is this would work on the other device? My device is Sony Xperia C JB 4.2.2

A:Yes this would work on any Android device which has Android 2.0 or higher.
So it'll work fine on your Sony Xperia C JB 4.2.2

Q:did someone test this on a Samsung?

I ' m asking because this binary was dynamically linked and thus dependent on libraries not being non-standard ...
If you want your sqlite3 to being device independent you are having to make it statically linked.
You are current version does the not work on my 4.2.2.
(It runs, but crashes as soon as you specify a db file, because of unmatched. so files.)

It's a honor to has you post in my thread. Thank you to letting me know it does not work on your system.
I have read many of your threads, extremely informative. One day I hope to memorize all of the You have written.
I compiled sqlite3 dynamically because it is a little easier on the memory subsystem and have a smaller output filesize.
I tested it on several Android 2.3/4.3/4.4 systems and they all seemed to work fine so I thought it would is OK.
Especially since all, is dynamically referenced is libc and LIBDL.
I have just compiled a static version but I need to test it before posting it.
I'll update the OP soon.

your sqlite3 can reindex, but it can not vaccum. u can re-check it

Thank letting me know about this issue.
I test SQLite before I release it, but there is no test suites for it, barring one which requires TCL,
Which I has no desire to compile since there ' s no other use for it.
The current sqlite can probably only reliably work with databases up to 2 or 4 GB
Which usually isn ' t a problem since most SQLite databases is well under that amount.
I ' ve been trying to compile a updated sqlite with proper-bit file support.
Since-bit file support is a bit wonky on Android, the This has been a bit tough.
Also, I ' ve been rather busy since I last released the binary, so I haven ' t had much time to think about compiling in Gener Al.
I ' ll do my best to get a new binary out soon-ish.

ARMV6 flags? So it's useless on Nexus 4/5 etc with armv7 CPUs? Can we find one which is optimised to high end devices?

No not useless, just less than optimal. Not really sure of the speedup, since I don ' t do benchmarks.
I try to optimize it as much as possible without breaking it x_xi is initially planning to put out both ARMv6 and ARMv7 p Orts at the same time,
But then I realized most Android utilities aren ' t compiled with proper 64bit file support. So I ' ve been trying-to-figure.
And also, most people don ' t use SQLite for anything earth-shattering anyway, mostly vacuum, reindex, create database from SQL statements, etc.

Oooooo just saw this and searching for SQLite performance enhancements. 
Https://sqlite.org/src4/doc/trunk /www/design.wiki
Very Nice.

I ' d also like-to-try to switch-MUSL as the standard library since alireza7991 have said it makes things smaller and Faster.
Not sure how feasible that'll end up for me though ...
It doesn ' t look like SQLite can parallelized @ all though. See Here: 
http://blogs.perl.org/users/timm_mur...nd-writes.html

There is a fork/variant of SQLite Called Paralite that uses threading,
but I don ' t think it retains the same file format compatibility and it looks like It introduces some bugs.
Unfortunately real life stuff takes precedence so things would progress slower than I would like.
But at least I know there's lots to look forward to even just for sqlite lol.

It works:for user of my app in Android 5.0 But for me too with Android 4.4.4 OnePlus one and Cyanogen.
I test to put your binaries in/system/xbin in my phone and it works.
One question:i believe your binaries works too to phones that has an Android version
But are there a version of Sqlite3 that no correspond with Android isn ' t it?

Again thanks for this fresh binary.

I have some issues with converting unix-time compared to built-in binary.
At example command:

Code:
<here_file> "selectdatetime('now','  localtime'); "

–built-in:returns correct time with timezone offset (preferred, data ready for use).
–your:returns UTC time without using phone ' s offset.

This causes problems with my use-case.
Same version (3.8.7.4) Windows EXE from official site returns correct time with timezone offset.

Please, can I comment this?
Maybe this is due wrong linked libs or something else?

UPD: OK, took binary from Whatstasker

APK (nevermind), it has 3.8.8 version.
And it returns correct local time!
So something wrong in this compiled version.

If some one would have those issues, I attached that binary, it's lollipop-compatible too.

Sqlite3.zip (288.9 KB, 236 views)

Here's SQLite 3.8.7.4 combined into a single source file

Huge Thanks for sharing!
This is a binary I found that include all needed for me:

1. Fresh–contains Required new features
2. Standalone–not depends from System libsqlite.so
3. Lollipop compatible–no "PIE problem"

Latest SQLite binary for January

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.