Download - SQLite - Overview
SQLite - introduzione
Emanuele BartolesiSmartCore [email protected]@kasuken
Agenda Overview Features Suggested Uses Tools
Overview
SQLite is…• in-process library• self-contained• serverless• zero-configuration• transactional
• the code is in the public domain
in-process library• SQLite does not have a separate server
process• the library size can be less than 350KiB!• SQLite be made to run in minimal stack
space (4KiB)transactional• SQLite generally runs faster the more
memory you give it!
Self-contained• It requires very minimal support from
external libraries• It requires very minimal support from the
operating system• The only required C library functions called
are: • memset() • memcpy() • memcmp() • strcmp()
• malloc(), free(), and realloc()
Serverless• Most SQL database engines are implemented as a separate
server process. Programs that want to access the database communicate with the server using some kind of interprocess communication (typically TCP/IP) to send requests to the server and to receive back results. SQLite does not work this way. With SQLite, the process that wants to access the database reads and writes directly from the database files on disk. There is no intermediary server process.
• The main advantage is that there is no separate server process to install, setup, configure, initialize, manage, and troubleshoot.
• Any program that is able to access the disk is able to use an SQLite database.
Zero configuration• SQLite does not need to be "installed"
before it is used.• There is no "setup" procedure.• There is no server process that needs to be
started, stopped, or configured.• SQLite uses no configuration files.
SQLite just works.
Transactional• SQLite implements serializable transactions that are atomic, consistent,
isolated, and durable (ACID).
• All changes within a single transaction in SQLite either occur completely or not at all, even if the act of writing the change out to the disk is interrupted by
• a program crash,• an operating system crash, or• a power failure.
Features
Features• Implements most of SQL92.
• RIGHT and FULL OUTER JOIN• Only the RENAME TABLE and ADD COLUMN variants of the ALTER TABLE• VIEWs in SQLite are read-only.
• Supports terabyte-sized databases and gigabyte-sized strings and blobs.
• Faster than popular client/server database engines for most common operations.
• Cross-platform: Unix (Linux, Mac OS-X, Android, iOS) and Windows (Win32, WinCE, WinRT)
Suggested Uses
Suggested Uses• Database For Gadgets
• cellphones, PDAs, MP3 players
• Website Database• Internal or temporary databases
Applications that use it• Browsers
• Mozilla Firefox (bookmarks, cookies, contacts)• Google Chrome• Opera
• Applicazioni• Skype• Adobe AIR• Flame (anche gli hakers lo usano!)• SpiceWorks (software per sistemisti e help desk)
Tools
demo
SQLite Expert
Riferimenti SQLite Expert
http://www.sqliteexpert.com/