SQLite 3.40 āĻāĻ° āĻ°āĻŋāĻ˛āĻŋāĻ, āĻāĻāĻāĻŋ āĻĒā§āĻ˛āĻžāĻ-āĻāĻ¨ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ˛āĻžāĻāĻāĻāĻ¯āĻŧā§āĻ DBMS, āĻĒā§āĻ°āĻāĻžāĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ SQLite āĻā§āĻĄ āĻ¸āĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨ āĻĄā§āĻŽā§āĻ¨ā§ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻāĻžāĻĄāĻŧāĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¯ā§āĻā§āĻ¨ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ SQLite āĻĄā§āĻā§āĻ˛āĻĒāĻžāĻ°āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°ā§āĻĨāĻŋāĻ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ¨āĻ¸ā§āĻ°ā§āĻāĻŋāĻ¯āĻŧāĻžāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ Adobe, Oracle, Mozilla, Bentley āĻāĻŦāĻ Bloomberg āĻāĻ° āĻŽāĻ¤ā§ āĻā§āĻŽā§āĻĒāĻžāĻ¨āĻŋ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
āĻ āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž:
- āĻāĻāĻāĻŋ āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§ WebAssembly āĻā§āĻĄā§ SQLite āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĻā§ āĻ¯āĻž āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°ā§ āĻāĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ JavaScript āĻāĻžāĻˇāĻžāĻ¯āĻŧ āĻāĻ¯āĻŧā§āĻŦ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĨā§āĻā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻ¸āĻāĻāĻ āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤ āĻāĻ¯āĻŧā§āĻŦ āĻĄā§āĻā§āĻ˛āĻĒāĻžāĻ°āĻĻā§āĻ° sql.js āĻŦāĻž Node.js āĻ¸ā§āĻāĻžāĻāĻ˛ā§ āĻĄā§āĻāĻž āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻā§āĻ-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻ āĻŦāĻā§āĻā§āĻ-āĻāĻ°āĻŋāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻĄ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° C API āĻāĻŦāĻ āĻāĻāĻāĻŋ API āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻāĻ¯āĻŧā§āĻŦ āĻāĻ¯āĻŧāĻžāĻ°ā§āĻāĻžāĻ° āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻ¯āĻž āĻāĻ˛āĻžāĻĻāĻž āĻĨā§āĻ°ā§āĻĄā§ āĻāĻ˛ā§āĨ¤ āĻāĻ¯āĻŧā§āĻŦ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋ SQLite-āĻāĻ° WASM āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻ¯ā§ āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§ āĻ¤āĻž OPFS (Origin-Private FileSystem) āĻŦāĻž window.localStorage API āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻžāĻāĻĄā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
- āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻā§āĻˇāĻ¤āĻŋāĻā§āĻ°āĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻĄā§āĻāĻž āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻ¤ā§ ".recover" āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
- āĻāĻ¨ā§āĻ¨āĻ¤ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§ āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻžāĻāĻžāĻ°ā§ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž. 63āĻāĻŋāĻ° āĻŦā§āĻļāĻŋ āĻāĻ˛āĻžāĻŽ āĻ¸āĻš āĻ¸āĻžāĻ°āĻŖā§ āĻ¸āĻš āĻ¸ā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻŋāĻ§āĻŋāĻ¨āĻŋāĻˇā§āĻ§āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§ (āĻāĻā§, āĻ¸ā§āĻā§āĻāĻ°āĻŖ āĻāĻŽāĻ¨ āĻāĻ˛āĻžāĻŽāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ āĻ¯āĻžāĻ° āĻ āĻ°ā§āĻĄāĻŋāĻ¨ā§āĻ¯āĻžāĻ˛ āĻ¸āĻāĻā§āĻ¯āĻž 63 āĻāĻžāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻā§āĻā§)āĨ¤ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¨āĻ¤ āĻ¸ā§āĻā§āĻāĻ°āĻŖāĨ¤ NOT NULL āĻāĻŦāĻ IS NULL āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĄāĻŋāĻ¸ā§āĻ āĻĨā§āĻā§ āĻŦāĻĄāĻŧ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻŦāĻ āĻŦā§āĻ˛āĻŦāĻā§āĻ˛āĻŋ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻŋāĻāĻ¯āĻŧā§āĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻŦāĻžāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
- āĻā§āĻĄāĻŦā§āĻ¸ā§, "char *" āĻāĻžāĻāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ sqlite3_filename āĻāĻžāĻāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
- āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ sqlite3_value_encoding() āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨āĨ¤
- SQLITE_DBCONFIG_DEFENSIVE āĻŽā§āĻĄ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻ¸ā§āĻā§āĻ°ā§āĻ āĻ¸ā§āĻāĻŋāĻŽāĻž āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻ¨āĻŋāĻˇāĻŋāĻĻā§āĻ§ āĻāĻ°ā§āĨ¤
- "PRAGMA integrity_check" āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻā§āĻ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, STRICT āĻ ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻ āĻāĻžāĻĄāĻŧāĻž āĻ¸āĻžāĻ°āĻŖāĻŋāĻ¤ā§ TEXT āĻāĻ˛āĻžāĻŽā§ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻŽāĻžāĻ¨ āĻāĻŦāĻ NUMERIC āĻāĻ˛āĻžāĻŽā§ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻš āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻžāĻ¨ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧā§ˇ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "ROWID āĻāĻžāĻĄāĻŧāĻž" āĻ ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻ āĻ¸āĻš āĻ¸āĻžāĻ°āĻŖāĻŋāĻ° āĻ¸āĻžāĻ°āĻŋāĻ° āĻā§āĻ°āĻŽ āĻ¸āĻ āĻŋāĻāĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨āĨ¤
- "VACUUM INTO" āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻŋ "PRAGMA āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸" āĻ¸ā§āĻāĻŋāĻāĻ¸āĻā§ āĻ¸āĻŽā§āĻŽāĻžāĻ¨ āĻāĻ°ā§āĨ¤
- āĻŽā§āĻŽāĻ°āĻŋ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ˛āĻā§āĻ° āĻāĻāĻžāĻ° āĻ¸ā§āĻŽāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻŦāĻŋāĻ˛ā§āĻĄ āĻŦāĻŋāĻāĻ˛ā§āĻĒ SQLITE_MAX_ALLOCATION_SIZE āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- SQLite-āĻ āĻŦāĻŋāĻ˛ā§āĻ āĻ¸āĻŋāĻāĻĄā§-āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻ¨āĻŽā§āĻŦāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ RC4 āĻ¸ā§āĻā§āĻ°āĻŋāĻŽ āĻ¸āĻžāĻāĻĢāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ Chacha20-āĻ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻāĻāĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĄā§āĻāĻž āĻ¸ā§āĻāĻŋāĻŽāĻžāĻ¤ā§ āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸ā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤
- āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻĒāĻŋāĻāĻāĻ¤ā§ āĻ˛ā§āĻĄ āĻĒā§āĻ°āĻžāĻ¯āĻŧ 1% āĻāĻŽāĻžāĻ¤ā§ āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ¤ā§āĻ¸: opennet.ru