{"id":55593,"date":"2020-01-24T00:00:00","date_gmt":"2020-01-23T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov"},"modified":"2020-02-18T14:03:43","modified_gmt":"2020-02-18T11:03:43","slug":"reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/news\/reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov","title":{"rendered":"SQLite 3.31 andmebaasihalduri v\u00e4ljaanne, mis toetab genereeritud veerge","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/changes.html\">Avaldatud<\/a><\/noindex> vabastus <noindex><a rel=\"nofollow\" href=\"http:\/\/sqlite.org\/\">SQLite 3.31.0<\/a><\/noindex>, kergekaaluline andmebaas, mis on esitatud plugina raamatukoguna. SQLite kood on vabalt k\u00e4ttesaadav avaliku omandi tingimustes, st seda saab kasutada piiranguteta ja tasuta igasugustel eesm\u00e4rkidel. SQLite arendajate rahalist toetust pakub spetsiaalselt loodud konsortsium, kuhu kuuluvad sellised ettev\u00f5tted nagu Adobe, Oracle, Mozilla, Bentley ja Bloomberg. <\/p>\n<p>Peamised <noindex><a rel=\"nofollow\" href=\"https:\/\/sqlite.org\/releaselog\/3_31_0.html\">muudatused<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> Lisatud tugi <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/gencol.html\">generaatorveergudele<\/a><\/noindex> (arvutatud veergudena), mis v\u00f5imaldavad tabeli loomisel m\u00e4\u00e4rata veeru, mille v\u00e4\u00e4rtus arvutatakse automaatselt muude veergude sisu p\u00f5hjal. Generatiivsed veerud v\u00f5ivad olla kas virtuaalsed (moodustatakse iga p\u00e4ringuga) v\u00f5i salvestatud andmebaasi (salvestatakse iga seotud veeru v\u00e4rskendamisel). Generatiivsete veergude sisu on saadaval ainult lugemisre\u017eiimis (muudatused toimub ainult teise veeru v\u00e4\u00e4rtuse muutmise kaudu, mis on arvutamisel kaasatud). N\u00e4iteks:\n<p>   CREATE TABLE t1(<br \/>\n      a INTEGER PRIMARY KEY,<br \/>\n      b INT,<br \/>\n      c TEXT,<br \/>\n      d INT GENERATED ALWAYS AS (a*abs(b)) VIRTUAL,<br \/>\n      e TEXT GENERATED ALWAYS AS (substr(c,b,b+1)) STORED<br \/>\n   );<\/p>\n<li class=\"l\"> Lisatud PRAGMA <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/pragma.html#pragma_trusted_schema\">trusted_schema<\/a><\/noindex>, seade <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/c3ref\/c_dbconfig_defensive.html#sqlitedbconfigtrustedschema\">SQLITE_DBCONFIG_TRUSTED_SCHEMA<\/a><\/noindex> \u0438 \u0441\u0431\u043e\u0440\u043e\u0447\u043d\u0430\u044f \u043e\u043f\u0446\u0438\u044f &#171;-DSQLITE_TRUSTED_SCHEMA&#187;, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52084\">r\u00fcnnakute<\/a><\/noindex> andmebaasi skeemi muutmise kaudu. Aktiivse kaitse korral piiratakse SQL-funktsioonide kasutamist (millel ei ole m\u00e4rgitud SQLITE_INNOCUOUS) trigerites, vaadetes, CHECK- ja DEFAULT-v\u00e4ljendites, indeksites ja generatiivsetes veergudes. Kaasa arvatud keelatakse virtuaalsete tabelite kasutamine trigerites ja vaadetes, kui virtuaalne tabel ei ole selgelt deklareeritud SQLITE_VTAB_INNOCUOUS lipuga.\n<li class=\"l\"> Rakendustes SQL-funktsioonidele on rakendatud v\u00f5imalus m\u00e4\u00e4rata omadused  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/c3ref\/c_deterministic.html#sqliteinnocuous\">SQLITE_INNOCUOUS<\/a><\/noindex> (kahjutud funktsioonid, mis ei s\u00f5ltu v\u00e4listest parameetritest ja ei saa kasutada kurjategijate tegevuseks) ja <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/c3ref\/c_deterministic.html#sqlitedirectonly\">SQLITE_DIRECTONLY<\/a><\/noindex> (ainult otse kutsumine SQL-p\u00e4ringutes, ilma v\u00f5imaluseta kasutada trigerites, vaadetes ja andmestruktuuri skeemides);\n<li class=\"l\"> Lisatud moodul <noindex><a rel=\"nofollow\" href=\"https:\/\/sqlite.org\/src\/file\/ext\/misc\/uuid.c\">uuid<\/a><\/noindex> UUID-i t\u00f6\u00f6tlemise funktsioonide rakendamisega (RFC-4122);\n<li class=\"l\"> Lisatud PRAGMA <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/pragma.html#pragma_hard_heap_limit\">hard_heap_limit<\/a><\/noindex> ja funktsioon  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/c3ref\/hard_heap_limit64.html\">sqlite3_hard_heap_limit64()<\/a><\/noindex> maksimaalse kihi suuruse haldamiseks;\n<li class=\"l\"> PRAGMA-s <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/pragma.html#pragma_function_list\">function_list<\/a><\/noindex> on lisatud iga funktsiooni t\u00fc\u00fcbi, omaduste ja argumentide arvu v\u00e4ljund;\n<li class=\"l\"> DBSTAT virtuaaltabelis  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/dbstat.html#dbstatagg\">on lisatud<\/a><\/noindex> andmete agregatsiooni re\u017eiim;\n<li class=\"l\"> sqlite3_open_v2() on rakendatud valik SQLITE_OPEN_NOFOLLOW, mis v\u00f5imaldab keelata s\u00fcmboolsete linkide avamise;\n<li class=\"l\"> JSON-funktsioonidesse edastatava argumendi jaoks on lisatud toetus massiivide s\u00fcntaksile \u00ab#-N\u00bb; <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/json1.html#jsonpath\">PATH<\/a><\/noindex>, \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0432 JSON-\u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043d\u043e\u0442\u0430\u0446\u0438\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 &#171;#-N&#187;;\n<li class=\"l\"> M\u00e4lu jaotamise s\u00fcsteemis <noindex><a rel=\"nofollow\" href=\"http:\/\/sqlite.org\/malloc.html#lookaside\">lookaside<\/a><\/noindex> rakendatakse kahe eraldi m\u00e4epooli toetust, millest iga\u00fcht saab kasutada erineva suurusega plokkide eraldamiseks (eraldamine laiendab lookaside s\u00fcsteemi rakendamise v\u00f5imalusi, samas v\u00e4hendades igale \u00fchendusele eraldatava puhveri suurust 120 KB-lt 48 KB-le);\n<li class=\"l\"> PRAGMA toe l\u00f5petamine <noindex><a rel=\"nofollow\" href=\"https:\/\/www.sqlite.org\/pragma.html#pragma_legacy_file_format\">legacy_file_format<\/a><\/noindex>, mis ei olnud \u00fchilduv VACUUM'i, genereeritud veergude ja kahanevate indeksitega (p\u00e4randvormingut saab taask\u00e4ivitada lippu SQLITE_DBCONFIG_LEGACY_FILE_FORMAT kasutades sqlite3_db_config() funktsioonis).\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Allikas: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52238\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.31.0, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041a\u043e\u0434 SQLite \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (public domain), \u0442.\u0435. \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0435\u0437 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0438 \u0431\u0435\u0437\u0432\u043e\u0437\u043c\u0435\u0437\u0434\u043d\u043e \u0432 \u043b\u044e\u0431\u044b\u0445 \u0446\u0435\u043b\u044f\u0445. \u0424\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 SQLite \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0445\u043e\u0434\u044f\u0442 \u0442\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u043a\u0430\u043a Adobe, Oracle, Mozilla, Bentley \u0438 Bloomberg. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f: \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-55593","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.31.0, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/news\/reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u0421\u0423\u0411\u0414 SQLite 3.31 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.31.0, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/news\/reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-23T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:43+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47SQLite andmebaasihalduss\u00fcsteemi 3.31 v\u00e4ljaanne geneeritud veergude toega | ProHoster","description":"V\u00e4lja on antud SQLite 3.31.0, kerge andmebaasihalduss\u00fcsteem, mis on kujundatud.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u0421\u0423\u0411\u0414 SQLite 3.31 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.31.0, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432.","og:url":"https:\/\/prohoster.info\/et\/blog\/news\/reliz-subd-sqlite-3-31-s-podderzhkoj-generiruemyh-stolbtsov","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-23T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:43+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55593","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:41:37","updated":"2022-09-28 02:47:18","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/55593","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=55593"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/55593\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=55593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=55593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=55593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}