IT

 

 

 

 

 

 

 






 







 


 

 

 

 

 

 

 

 






 







 


 

 

 

 

 

 

 






 







 


 

 

 

 

 

 

 






 







 


 

 

 

 

 

 

 

 

 

 

 

 

 

 






 







 


 

 

 

 

 

 

 

 

 

 






 







 


IT

 

 

AI  

 

 






 







 


 

 

 

 

 

 

 






 







 


 

 

 

 

 

 

 

 






 







 


 

Web  

 

 

PlayStation  

 

YouTuber  

 





 
Wikipedia
 





 

 

 












Why Is SQLite Coded In C  

205 users  
www.sqlite.org  


Note: Sections 2.0 and 3.0 of this article were added in response to comments on Hacker News and Reddit. Since its inception on 2000-05-29, SQLite has been implemented in generic C. C was and continues to be the best language for implementing a software library like SQLite. There are no plans to recode SQLite in any other programming language at this time. The reasons why C is the best language to




 

2023/09/20 18:42
 





















 

















SQLite: Begin Concurrent  

3users  
www.sqlite.org  


Overview Usually, SQLite allows at most one writer to proceed concurrently. The BEGIN CONCURRENT enhancement allows multiple writers to process write transactions simultanously if the database is in "wal" or "wal2" mode, although the system still serializes COMMIT commands. When a write-transaction is opened with "BEGIN CONCURRENT", actually locking the database is deferred until a COMMIT is execu




 

2023/07/28 10:08
 













Why SQLite Does Not Use Git  

3users  
www.sqlite.org  


1. Introduction SQLite does not use the Git version control system. SQLite uses Fossil instead, which is a version control system that was specifically designed and written to support SQLite. People often wonder why SQLite does not use the Git version control system like everybody else. This article attempts to answer that question. Also, in section 3, this article provides hints to Git users abou




 

2023/07/23 13:11
 













The Virtual Table Mechanism Of SQLite  

3users  
www.sqlite.org  


1. Introduction A virtual table is an object that is registered with an open SQLite database connection. From the perspective of an SQL statement, the virtual table object looks like any other table or view. But behind the scenes, queries and updates on a virtual table invoke callback methods of the virtual table object instead of reading and writing on the database file. The virtual table mechani




 

2019/07/22 09:50
 













SQLite Is Serverless  

42users  
www.sqlite.org  


1. SQLite Is 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 di




 

2018/12/26 00:37
 













 











In-Memory Databases  

3users  
www.sqlite.org  


In-Memory Databases An SQLite database is normally stored in a single ordinary disk file. However, in certain circumstances, the database might be stored in memory. The most common way to force an SQLite database to exist purely in memory is to open the database using the special filename ":memory:". In other words, instead of passing the name of a real disk file into one of the sqlite3_open(), sq




 

2018/05/17 10:19
 













35% Faster Than The Filesystem  

55users  
www.sqlite.org  


1. Summary SQLite reads and writes small blobs (for example, thumbnail images) 35% faster¹ than the same blobs can be read from or written to individual files on disk using fread() or fwrite(). Furthermore, a single SQLite database holding 10-kilobyte blobs uses about 20% less disk space than storing the blobs in individual files. The performance difference arises (we believe) because when working




 

2017/06/14 13:12
 















 











SQLite Release 3.11.0 On 2016-02-15  

3users  
www.sqlite.org  


General improvements: Enhanced WAL mode so that it works efficiently with transactions that are larger than the cache_size. Added the FTS5 detail option. Added the "EXTRA" option to PRAGMA synchronous that does a sync of the containing directory when a rollback journal is unlinked in DELETE mode, for better durability. The SQLITE_EXTRA_DURABLE compile-time option enables PRAGMA synchronous=EXTRA b




 

2016/02/18 22:53
 



 











SQLite Release 3.9.0 On 2015-10-14  

4users  
www.sqlite.org  


Policy Changes: The version numbering conventions for SQLite are revised to use the emerging standard of semantic versioning. New Features And Enhancements: Added the json1 extension module in the source tree, and in the amalgamation. Enable support using the SQLITE_ENABLE_JSON1 compile-time option. Added Full Text Search version 5 (FTS5) to the amalgamation, enabled using SQLITE_ENABLE_FTS5. FTS5




 

2015/10/15 14:25
 



 











The JSON1 Extension | SQLite  

36users  
www.sqlite.org  


1. Overview By default, SQLite supports thirty functions and two operators for dealing with JSON values. There are also two table-valued functions that can be used to decompose a JSON string. There are twenty-six scalar functions and operators: json(json) jsonb(json) json_array(value1,value2,...) jsonb_array(value1,value2,...) json_array_length(json) json_array_length(json,path) json_error_positio




 

2015/10/15 10:48
 













 











SQLite As An Application File Format  

5users  
www.sqlite.org  


SQLite As An Application File Format Executive Summary An SQLite database file with a defined schema often makes an excellent application file format. Here are a dozen reasons why this is so: Simplified Application Development Single-File Documents High-Level Query Language Accessible Content Cross-Platform Atomic Transactions Incremental And Continuous Updates Easily Extensible Performance Concur




 

2015/10/01 16:59
 













SQLite FTS5 Extension  

5users  
www.sqlite.org  


1. Overview of FTS5 FTS5 is an SQLite virtual table module that provides full-text search functionality to database applications. In their most elementary form, full-text search engines allow the user to efficiently search a large collection of documents for the subset that contain one or more instances of a search term. The search functionality provided to world wide web users by Google is, among




 

2015/08/10 10:20
 













The WITH Clause  

8users  
www.sqlite.org  


Common Table Expressions or CTEs act like temporary views that exist only for the duration of a single SQL statement. There are two kinds of common table expressions: "ordinary" and "recursive". Ordinary common table expressions are helpful for making queries easier to understand by factoring subqueries out of the main SQL statement. Recursive common table expressions provide the ability to do hie




 

2014/08/04 17:25
 





 











SQLite Archiver: Documentation  

3users  
www.sqlite.org  


SQLAR - SQLite Archiver This repository contains sources for the "SQLite Archiver" program. This program (named "sqlar") operates much like "zip", except that the compressed archive it builds is stored in an SQLite database instead of a ZIP archive. The motivation for this is to see how much larger an SQLite database file is compared to a ZIP archive containing the same content. The answer depends




 

2014/05/30 12:54
 



 











Command Line Shell For SQLite  

12users  
www.sqlite.org  


1. Getting Started The SQLite project provides a simple command-line program named sqlite3 (or sqlite3.exe on Windows) that allows the user to manually enter and execute SQL statements against an SQLite database or against a ZIP archive. This document provides a brief introduction on how to use the sqlite3 program. Start the sqlite3 program by typing "sqlite3" at the command prompt, optionally fol




 

2014/05/03 09:35
 







 











Internal Versus External BLOBs  

5users  
www.sqlite.org  


Internal Versus External BLOBs in SQLite If you have a database of large BLOBs, do you get better read performance when you store the complete BLOB content directly in the database or is it faster to store each BLOB in a separate file and store just the corresponding filename in the database? To try to answer this, we ran 49 test cases with various BLOB sizes and SQLite page sizes on a Linux works




 

2013/12/09 15:41
 





 











How To Corrupt An SQLite Database File  

25users  
www.sqlite.org  


Overview An SQLite database is highly resistant to corruption. If an application crash, or an operating-system crash, or even a power failure occurs in the middle of a transaction, the partially written transaction should be automatically rolled back the next time the database file is accessed. The recovery process is fully automatic and does not require any action on the part of the user or the a




 

2013/10/20 00:21
 











 











The Next-Generation Query Planner  

5users  
www.sqlite.org  


1. Introduction The task of the "query planner" is to figure out the best algorithm or "query plan" to accomplish an SQL statement. Beginning with SQLite version 3.8.0 (2013-08-26), the query planner component has been rewritten so that it runs faster and generates better plans. The rewrite is called the "next generation query planner" or "NGQP". This article overviews the importance of query plan




 

2013/08/27 10:36
 





 











Uniform Resource Identifiers  

3users  
www.sqlite.org  


1. URI Filenames In SQLite Beginning with version 3.7.7 (2011-06-23), the SQLite database file argument to the sqlite3_open(), sqlite3_open16(), and sqlite3_open_v2() interfaces and to the ATTACH command can be specified either as an ordinary filename or as a Uniform Resource Identifier or URI. The advantage of using a URI filename is that query parameters on the URI can be used to control details




 

2013/08/05 15:51
 



 











Memory-Mapped I/O  

5users  
www.sqlite.org  


Memory-Mapped I/O The default mechanism by which SQLite accesses and updates database disk files is the xRead() and xWrite() methods of the sqlite3_io_methods VFS object. These methods are typically implemented as "read()" and "write()" system calls which cause the operating system to copy disk content between the kernel buffer cache and user space. Beginning with version 3.7.17 (2013-05-20), SQLi




 

2013/05/27 00:40
 







 











SQLite Version 3 Overview  

3users  
www.sqlite.org  


Editorial Note: This document was written in 2004 as a guide to programmers who were transitioning from SQLite2 to SQLite3. It is retained as part of the historical record of SQLite. Modern programmers should refer to more up-to-date documentation on SQLite available elsewhere on this website. SQLite version 3.0 introduces important changes to the library, including: A more compact format for data




 

2012/11/11 00:42
 









 











Database File Format  

5users  
www.sqlite.org  


This document describes and defines the on-disk database file format used by all releases of SQLite since version 3.0.0 (2004-06-18). 1. The Database File The complete state of an SQLite database is usually contained in a single file on disk called the "main database file". During a transaction, SQLite stores additional information in a second file called the "rollback journal", or if SQLite is in




 

2012/09/18 14:42
 



 











SQLite4: The Design Of SQLite4  

14users  
www.sqlite.org  


1.0 Executive Summary SQLite4 is a compact, self-contained, zero-adminstration, ACID database engine in a library, just like SQLite3, but with an improved interface and file format. The run-time environment is encapsulated in an object. A greatly simplified Key/Value storage engine is used: A single large key space - not separate key spaces for each table and index as in SQLite3. Keys sort in lexi




 

2012/06/28 05:32
 







 











Query Planning  

4users  
www.sqlite.org  


Overview The best feature of SQL (in all its implementations, not just SQLite) is that it is a declarative language, not a procedural language. When programming in SQL you tell the system what you want to compute, not how to compute it. The task of figuring out the how is delegated to the query planner subsystem within the SQL database engine. For any given SQL statement, there might be hundreds o




 

2011/11/12 10:21
 





 











EXPLAIN QUERY PLAN  

3users  
www.sqlite.org  


1. The EXPLAIN QUERY PLAN Command Warning: The data returned by the EXPLAIN QUERY PLAN command is intended for interactive debugging only. The output format may change between SQLite releases. Applications should not depend on the output format of the EXPLAIN QUERY PLAN command. Alert: As warned above, the EXPLAIN QUERY PLAN output format did change substantially with the version 3.24.0 release (2




 

2011/11/09 11:49
 



 











Appropriate Uses For SQLite  

9users  
www.sqlite.org  


Appropriate Uses For SQLite SQLite is not directly comparable to client/server SQL database engines such as MySQL, Oracle, PostgreSQL, or SQL Server since SQLite is trying to solve a different problem. Client/server SQL database engines strive to implement a shared repository of enterprise data. They emphasize scalability, concurrency, centralization, and control. SQLite strives to provide local d




 

2011/07/30 06:06
 







 











DELETE  

3users  
www.sqlite.org  


The DELETE command removes records from the table identified by the qualified-table-name. If the WHERE clause is not present, all records in the table are deleted. If a WHERE clause is supplied, then only those rows for which the WHERE clause boolean expression is true are deleted. Rows for which the expression is false or NULL are retained. 2. Restrictions on DELETE Statements Within CREATE TRIGG




 

2010/12/09 18:00
 













Write-Ahead Logging  

13users  
www.sqlite.org  


1. Overview The default method by which SQLite implements atomic commit and rollback is a rollback journal. Beginning with version 3.7.0 (2010-07-21), a new "Write-Ahead Log" option (hereafter referred to as "WAL") is available. There are advantages and disadvantages to using WAL instead of a rollback journal. Advantages include: WAL is significantly faster in most scenarios. WAL provides more con




 

2010/07/22 12:10
 









 











How SQLite Is Tested  

9users  
www.sqlite.org  


1. Introduction The reliability and robustness of SQLite is achieved in part by thorough and careful testing. As of version 3.42.0 (2023-05-16), the SQLite library consists of approximately 155.8 KSLOC of C code. (KSLOC means thousands of "Source Lines Of Code" or, in other words, lines of code excluding blank lines and comments.) By comparison, the project has 590 times as much test code and test




 

2010/04/22 01:03
 









 








 




























 

SQLite Home Page  

 



j

k

l

e

o
 
 
















 









 

















 









 









 







Pro



 




 






App Storeからダウンロード
Google Playで手に入れよう


Copyright © 2005-2024 Hatena. All Rights Reserved.
 





x