diff --git a/ThirdParty/sqlite/CMakeLists.txt b/ThirdParty/sqlite/CMakeLists.txt
index 1a214dd7efc13e87a53489777ff75b0e60755b5b..aba54722048df6564fa5dd8c5a1bc6f53c9a1e4d 100644
--- a/ThirdParty/sqlite/CMakeLists.txt
+++ b/ThirdParty/sqlite/CMakeLists.txt
@@ -7,9 +7,9 @@ vtk_module_third_party(
     SPDX_COPYRIGHT_TEXT
       "NONE"
     SPDX_DOWNLOAD_LOCATION
-      "git+https://gitlab.kitware.com/third-party/sqlite.git@for/vtk-20210924-3.36.0"
+      "git+https://gitlab.kitware.com/third-party/sqlite.git@for/vtk-20250102-3.47.2"
     VERSION
-      "3.36.0"
+      "3.47.2"
     STANDARD_INCLUDE_DIRS
   EXTERNAL
     PACKAGE SQLite3
diff --git a/ThirdParty/sqlite/update.sh b/ThirdParty/sqlite/update.sh
index 38c10d7ba06906cc4c522d560afc073b90ba0dd5..005588d6d06853179aa93f535baa41389fc161a3 100755
--- a/ThirdParty/sqlite/update.sh
+++ b/ThirdParty/sqlite/update.sh
@@ -8,7 +8,7 @@ readonly name="sqlite"
 readonly ownership="sqlite Upstream <kwrobot@kitware.com>"
 readonly subtree="ThirdParty/$name/vtk$name"
 readonly repo="https://gitlab.kitware.com/third-party/sqlite.git"
-readonly tag="for/vtk-20230920-3.36.0" # see `manifest` below if the version number changes
+readonly tag="for/vtk-20250102-3.47.2" # see `manifest` below if the version number changes
 readonly paths="
 .gitattributes
 CMakeLists.txt
@@ -26,11 +26,11 @@ main.mk
 extract_source () {
     git_archive
     pushd "$extractdir/$name-reduced"
-    echo "3.36.0-vtk" > manifest
-    echo "3.36.0-vtk" > manifest.uuid
+    echo "3.47.2-vtk" > manifest
+    echo "3.47.2-vtk" > manifest.uuid
     make -f main.mk TOP=$PWD BCC=cc target_source sqlite3.c
     rm -rvf ext src tool main.mk manifest manifest.uuid VERSION
-    rm -rvf lemon keywordhash.h lempar.c mkkeywordhash mksourceid
+    rm -rvf lemon keywordhash.h lempar.c mkkeywordhash mksourceid src-verify
     rm -rvf opcodes.* parse.* tsrc fts5.* fts5parse.*
     rm -rvf sqlite3ext.h sqlite3session.h tclsqlite3.c target_source
     popd