{"id":99469,"date":"2021-03-18T10:23:26","date_gmt":"2021-03-18T08:23:26","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-subd-sqlite-3-35"},"modified":"2021-03-18T10:23:26","modified_gmt":"2021-03-18T08:23:26","slug":"vypusk-subd-sqlite-3-35","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-subd-sqlite-3-35","title":{"rendered":"Publication de la base de donn\u00e9es SQLite 3.35","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La version 3.35 de SQLite a \u00e9t\u00e9 publi\u00e9e, une base de donn\u00e9es l\u00e9g\u00e8re sous forme de biblioth\u00e8que dynamique. Le code de SQLite est distribu\u00e9 dans le domaine public, c\u2019est-\u00e0-dire qu'il peut \u00eatre utilis\u00e9 sans restrictions et gratuitement \u00e0 toutes fins. Le soutien financier des d\u00e9veloppeurs de SQLite est assur\u00e9 par un consortium sp\u00e9cialement cr\u00e9\u00e9, compos\u00e9 d\u2019entreprises telles qu\u2019Adobe, Oracle, Mozilla, Bentley et Bloomberg.     <\/p>\n<p>Principales modifications :  <\/p>\n<ul>\n<li class=\"l\"> Des fonctions math\u00e9matiques int\u00e9gr\u00e9es (log2(), cos(), tg(), exp(), ln(), pow(), etc.) ont \u00e9t\u00e9 ajout\u00e9es, pouvant \u00eatre utilis\u00e9es dans SQL. Pour activer ces fonctions int\u00e9gr\u00e9es, une compilation avec l'option \u00ab -DSQLITE_ENABLE_MATH_FUNCTIONS \u00bb est requise.\n<li class=\"l\"> La prise en charge de l'expression \u00ab ALTER TABLE DROP COLUMN \u00bb a \u00e9t\u00e9 mise en \u0153uvre pour supprimer des colonnes d'une table et effacer les donn\u00e9es pr\u00e9c\u00e9demment stock\u00e9es dans cette colonne.\n<li class=\"l\"> L'impl\u00e9mentation de l'op\u00e9ration UPSERT (ajouter ou modifier) a \u00e9t\u00e9 \u00e9tendue, permettant via des expressions telles que \u00ab INSERT ... ON CONFLICT DO NOTHING\/UPDATE \u00bb d'ignorer l'erreur ou d'effectuer une mise \u00e0 jour au lieu d'une insertion en cas d'impossibilit\u00e9 d'ajouter des donn\u00e9es via \u00ab INSERT \u00bb (par exemple, si l'enregistrement existe d\u00e9j\u00e0, on peut effectuer une mise \u00e0 jour au lieu d'une insertion). Dans cette nouvelle version, il est autoris\u00e9 de sp\u00e9cifier plusieurs blocs \u00ab ON CONFLICT \u00bb, qui seront trait\u00e9s dans l'ordre d'apparition. Dans le dernier bloc \u00ab ON CONFLICT \u00bb, il est permis de ne pas sp\u00e9cifier le param\u00e8tre de d\u00e9finition de conflit pour utiliser \u00ab DO UPDATE \u00bb.\n<li class=\"l\"> Dans les op\u00e9rations DELETE, INSERT et UPDATE, la prise en charge de l'expression RETURNING a \u00e9t\u00e9 impl\u00e9ment\u00e9e, permettant d'afficher le contenu de l'enregistrement supprim\u00e9, ins\u00e9r\u00e9 ou modifi\u00e9. Par exemple, l'expression \u00ab insert into ... returning id \u00bb renverra l'identifiant de la ligne ajout\u00e9e, et \u00ab update ... set price = price * 1.10 returning price \u00bb renverra la valeur modifi\u00e9e de price.\n<li class=\"l\"> Pour les expressions de table g\u00e9n\u00e9rales (Common Table Expression, CTE), permettant d'utiliser des ensembles de r\u00e9sultats nomm\u00e9s temporaires d\u00e9finis par l'instruction WITH, le choix des modes \u00ab MATERIALIZED \u00bb et \u00ab NOT MATERIALIZED \u00bb a \u00e9t\u00e9 autoris\u00e9. \u00ab MATERIALIZED \u00bb implique la mise en cache du r\u00e9sultat de la requ\u00eate dans une table physique distincte, avec la r\u00e9cup\u00e9ration ult\u00e9rieure des donn\u00e9es de cette table, tandis qu'avec \u00ab NOT MATERIALIZED \u00bb, des requ\u00eates r\u00e9p\u00e9t\u00e9es seront effectu\u00e9es \u00e0 chaque acc\u00e8s \u00e0 la vue. Initialement, SQLite utilisait par d\u00e9faut le mode \u00ab NOT MATERIALIZED \u00bb, mais a maintenant \u00e9t\u00e9 chang\u00e9e en \u00ab MATERIALIZED \u00bb pour les CTE utilis\u00e9s plus d'une fois.\n<li class=\"l\"> R\u00e9duction de la consommation de m\u00e9moire lors de l'ex\u00e9cution de l'op\u00e9ration VACUUM pour les bases de donn\u00e9es contenant de tr\u00e8s grandes valeurs avec les types TEXT ou BLOB.\n<li class=\"l\"> Des efforts ont \u00e9t\u00e9 d\u00e9ploy\u00e9s pour am\u00e9liorer les performances de l'optimiseur et du planificateur de requ\u00eates :\n<ul>\n<li class=\"l\"> Des optimisations ont \u00e9t\u00e9 ajout\u00e9es lors de l'utilisation des fonctions min et max avec l'expression \u00ab IN \u00bb.\n<li class=\"l\"> L'ex\u00e9cution de l'op\u00e9rateur EXISTS a \u00e9t\u00e9 acc\u00e9l\u00e9r\u00e9e.\n<li class=\"l\"> La mise en \u0153uvre des sous-requ\u00eates \u00e0 partir des expressions UNION ALL utilis\u00e9es dans le cadre des JOIN a \u00e9t\u00e9 r\u00e9alis\u00e9e.\n<li class=\"l\"> Un index a \u00e9t\u00e9 utilis\u00e9 pour les expressions IS NOT NULL.\n<li class=\"l\"> La transformation \u00ab x IS NULL \u00bb et \u00ab x IS NOT NULL \u00bb en FALSE ou TRUE a \u00e9t\u00e9 assur\u00e9e pour les colonnes ayant le caract\u00e8re \u00ab NOT NULL \u00bb.\n<li class=\"l\"> La v\u00e9rification des cl\u00e9s \u00e9trang\u00e8res a \u00e9t\u00e9 omise dans UPDATE si l'op\u00e9ration ne modifie pas les colonnes li\u00e9es \u00e0 la cl\u00e9 \u00e9trang\u00e8re.\n<li class=\"l\"> Le d\u00e9placement des parties du bloc WHERE vers des sous-requ\u00eates contenant des fonctions de fen\u00eatre est autoris\u00e9, \u00e0 condition que ces parties soient limit\u00e9es au traitement des constantes et des copies des expressions des blocs \u00ab PARTITION BY \u00bb utilis\u00e9s dans les fonctions de fen\u00eatre.  <\/ul>\n<li class=\"l\"> Modifications de l'interface de ligne de commande :\n<ul>\n<li class=\"l\"> Ajout\u00e9e la commande \u00ab .filectrl data_version \u00bb.\n<li class=\"l\"> Les commandes \u00ab .once \u00bb et \u00ab .output \u00bb prennent en charge la redirection de la sortie vers un gestionnaire appel\u00e9 avec des canaux anonymes (\u00ab | \u00bb).\n<li class=\"l\"> Ajout des arguments \u00ab stmt \u00bb et \u00ab vmstep \u00bb \u00e0 la commande \u00ab .stats \u00bb pour afficher les statistiques des expressions et des compteurs de la machine virtuelle.  <\/ul>\n<\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=54779\">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.35, \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\u044b \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 [&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-99469","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - 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.35, \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.\" \/>\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\/fr\/blog\/news\/vypusk-subd-sqlite-3-35\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\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\u0412\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 SQLite 3.35 | 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.35, \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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-subd-sqlite-3-35\" \/>\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=\"2021-03-18T08:23:26+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-03-18T08:23:26+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\udd47Publication du SGBD SQLite 3.35 | ProHoster","description":"La version SQLite 3.35 a \u00e9t\u00e9 publi\u00e9e, un SGBD l\u00e9ger pr\u00e9sent\u00e9 sous la forme d'une biblioth\u00e8que dynamique. Le code SQLite est distribu\u00e9 dans le domaine public.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-subd-sqlite-3-35","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","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\u0412\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 SQLite 3.35 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.35, \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.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-subd-sqlite-3-35","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":"2021-03-18T08:23:26+00:00","article:modified_time":"2021-03-18T08:23:26+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"99469","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-03-18 08:24:51","updated":"2022-09-27 19:15:50","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/99469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=99469"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/99469\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=99469"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=99469"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=99469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}