MySQL AI User Guide
To keep up with the changes and updates in the documents in your local directory, you must update the vector embeddings loaded in the vector store table on a regular basis. This ensures that the responses generated by GenAI are up-to-date.
The following sections in this topic describe how to update a vector store:
Complete the steps to set up a vector store.
          The examples in this topic use the vector store table
          demo_embeddings created in
          Ingesting Files into a Vector Store.
        
          The
          VECTOR_STORE_LOAD
          routine ingests all files that are available in the specified
          location and appends vector embeddings to the specified vector
          store table. If you run the
          VECTOR_STORE_LOAD routine on a table that
          contains previously ingested files, any file ingested again
          into the table is assigned a new
          document_id while retaining the same
          document_name. To remove a previously
          ingested file from the vector store table, you need to
          manually delete the associated rows, as described in
          Removing a File from the Vector Store.
        
          To test the steps in this topic, download and place the
          MySQL AI
          user guide PDF in the folder
          demo-directory that you created earlier for
          storing files to ingest into the vector store.
        
To append a new file to the vector store table, perform the following steps:
Check that the vector embeddings are loaded in the vector store table you want to update:
mysql> SELECT COUNT(*) FROM VectorStoreTableName;
              Replace VectorStoreTableName
              with the name of the vector store table you want to
              update.
            
For example:
mysql> SELECT COUNT(*) FROM demo_embeddings;If you see a numerical value in the output, the embeddings are loaded in the table.
              To specify vector store table to update, set the
              @options variable:
            
mysql> SET @options = JSON_OBJECT("schema_name", "DBName", "table_name", "VectorStoreTableName", "language", "Language");
Replace the following:
                  DBName: the name of
                  database that contains the vector store table.
                
                  VectorStoreTableName: the
                  vector store table name.
                
For example:
mysql> SET @options = JSON_OBJECT("schema_name", "demo_db", "table_name", "demo_embeddings");
              To append a new file from the local filesystem, use the
              VECTOR_STORE_LOAD
              routine:
            
mysql> CALL sys.VECTOR_STORE_LOAD("file://FilePath", @options);
              Replace FilePath with the file
              path. For example:
            
mysql> CALL sys.VECTOR_STORE_LOAD("file:///var/lib/mysql-files/demo-directory/mysql-ai-9.4-en.pdf", @options);
              This call appends vector embeddings for the MySQL AI user
              guide to the demo_embeddings vector
              store table.
            
Verify that the new vector embeddings are appended to the vector store table:
mysql> SELECT COUNT(*) FROM VectorStoreTableName;For example:
mysql> SELECT COUNT(*) FROM demo_embeddings;If you see a numerical value in the output which is different than the one you saw in step 1, then the vector store table is successfully updated.
          To remove a previously ingested file from the vector store
          table, use the DELETE
          statement:
        
 mysql> DELETE FROM VectorStoreTableName WHERE document_name = "Filename" and document_id = DocumentID; 
For example:
 mysql> DELETE FROM demo_embeddings WHERE document_name = "/var/lib/mysql-files/demo-directory/heatwave-en.pdf" AND document_id = 0; 
          This removes the vector embeddings and all rows and columns
          associated with MySQL HeatWave user guide from the
          demo_embeddings vector store table.
        
To delete and recreate the vector store table and vector embeddings, perform the following steps:
Delete the vector store table:
mysql> DROP TABLE VectorStoreTableName;To create new embeddings for the updated documents, repeat the steps to set up a vector store.
If you created a new database for testing the steps in this topic, delete the database to free up space:
mysql> DROP DATABASE demo_db;
Learn how to Generate Vector Embeddings.
Learn how to Perform Vector Search With Retrieval-Augmented Generation.