Garder Baserow en phase avec votre fichier SQLite, selon un horaire
Rédigez votre requête SQL une seule fois. Query Streams l'exécute selon votre planification (de toutes les cinq minutes à une fois par semaine) et inscrit les lignes dans votre table Baserow. Associez les lignes par une clé pour que les modifications soient prises en compte et que les lignes non traitées par la requête soient supprimées, ou ajoutez-les simplement. Sans Zapier, sans scripts, sans exportations. Une quinzaine de minutes suffisent la première fois, et le forfait gratuit l'inclut.
Ce que vous obtiendrez
Une table Baserow qui stocke les lignes renvoyées par votre requête SQLite et qui est mise à jour régulièrement (toutes les cinq minutes à une fois par semaine), avec un récapitulatif des modifications apportées à chaque exécution. Par exemple :
SQLite holds your data in a file. Your team works in Baserow. The usual bridge is a Zapier or Make scenario, or a CSV someone uploads that breaks quietly and copies one row at a time. Query Streams Automation does it differently: the Agent that already reads your SQLite file runs your saved SQL on a schedule and writes the whole result into Baserow in one pass, matching rows by a key so the table stays correct rather than growing.
Ce dont vous aurez besoin
Un compte Query Streams
Le forfait gratuit suffit pour ce guide. Inscrivez-vous sur mon.querystreams.com.
SQLite connecté via l'agent
The Agent installed on the computer that holds your SQLite file, or on one that reads it from a network share, with the connection added in Data Agents. Not done yet? Connectez d'abord SQLite; cela prend environ dix minutes.
Une requête enregistrée
La sélection que vous souhaitez synchroniser, enregistrée dans Générateur de requêtesL'étape 1 ci-dessous en présente un exemple. Si vous souhaitez que les lignes modifiées soient mises à jour directement, ajoutez une colonne unique pour chaque ligne, comme un identifiant.
Votre identifiant Baserow
Saisissez l'adresse de votre serveur Baserow (par défaut : api.baserow.io), votre adresse e-mail et votre mot de passe. Query Streams les stocke de manière chiffrée et vous connecte automatiquement lors de la synchronisation.
Où se déroule le travail ? Sur l'ordinateur exécutant l'agent, la requête est exécutée selon la planification et les lignes sont enregistrées dans Baserow. Cet ordinateur doit donc rester allumé. Votre navigateur peut être fermé. Query Streams ne stocke jamais les lignes.
File on another computer? The Agent does not have to run on the computer that holds your SQLite file: it can read the file from a network share. Reaching a file on a network share, below, shows what that takes.
Configurez-le en six étapes
-
Enregistrez la requête que vous souhaitez conserver synchronisée.
Ouvrir Générateur de requêtes, choisissez votre connexion SQLite (pas encore connecté ? Commencez ici), et écrivez la requête SELECT qui renvoie exactement les lignes et les colonnes souhaitées dans Baserow. Celle-ci extrait quelques colonnes d'une clients tableau:
Exemple · SQLSÉLECTIONNER customer_id, name, city FROM customers TRIER PAR name LIMIT 100;
Exécutez-le, puis Économiser Donnez-lui un nom facile à retenir, comme « Commandes pour Baserow ». Conservez une colonne unique pour chaque ligne dans la requête SELECT, ici. numéro de clientC’est cette clé que Full Sync utilise pour mettre à jour les lignes directement. Modifiez et enregistrez à nouveau la requête ultérieurement, et l’automatisation prendra en compte la modification lors de sa prochaine exécution.
-
Ouvrez Automation et choisissez Baserow
Dans le portail, ouvrez Automatisation (menu principal) Flux → Programmés → Automatisation) et cliquez Nouvelle automatisationLe magicien a cinq petits pas. Étape 1 cliquez sur Baserow carte.
Vous voyez plutôt « Avant de commencer » ? L'assistant ne s'ouvre que lorsqu'un agent est en ligne et qu'au moins une requête est enregistrée. La page indique laquelle des trois requêtes est manquante et fournit un lien vers celle-ci.
-
Connecter Baserow
Sur Étape 2 remplir URL du serveur (laisser vide pour le nuage Baserow), votre Courriel et Mot de passe, puis cliquez Test de connexionSaisissez l'adresse de votre serveur Baserow (par défaut : api.baserow.io), votre adresse e-mail et votre mot de passe. Query Streams les stocke de manière chiffrée et vous connecte automatiquement lors de la synchronisation.
-
Choisissez où atterrissent les rangées
Sur Étape 3 choisissez le Base de données, alors le Tableau Les lignes doivent être insérées. Créez d'abord le tableau dans Baserow si vous souhaitez qu'il soit vide. S'il contient déjà des lignes, un aperçu les affiche et explique l'effet de chaque mode de synchronisation. Une automatisation par tableau.
-
Choisissez la requête et décidez comment les lignes sont affichées.
Sur Étape 4 ouvrir le Requête sauvegardée Sélectionnez la requête de l'étape 1. Query Streams l'exécute une fois pour lire les colonnes, vous indique le nombre de lignes renvoyées et affiche deux choix :
Ajouter · rapideAjouter
Chaque exécution ajoute les lignes de la requête à la fin du tableau. Aucune donnée n'est mise à jour ni supprimée ; c'est donc la solution idéale pour la gestion rapide des journaux, événements et historiques. Aucune colonne clé n'est requise. Une ligne inchangée n'est pas ajoutée à nouveau ; une ligne dont les valeurs ont changé est ajoutée en dessous, l'ancienne restant inchangée.
Synchronisation complète · miroirsSynchronisation complète
Les lignes sont appariées par un clé Une colonne comme un identifiant de commande. Les nouvelles lignes sont ajoutées, les lignes modifiées sont mises à jour directement, et les lignes qui ne sont plus renvoyées par la requête sont supprimées, y compris les lignes saisies manuellement. Il est donc conseillé de conserver ces dernières dans une autre table. Ce format est idéal pour la gestion des stocks, des pipelines, des données de référence et des tableaux de bord.
La synchronisation complète est configurée par colonne, ce qui la rend utile dans une table partagée :
- Clé
- La colonne qui identifie une ligne, par exemple numéro_de_commande. Elle doit être unique dans le résultat de la requête ; Query Streams vérifie cela pour vous et refuse les doublons.
- Synchronisation
- Les données SQLite sont écrasées à chaque exécution. Si une colonne Sync est modifiée dans Baserow, la valeur source est rétablie lors de la prochaine exécution.
- Préserver
- Cette colonne est enregistrée lors de l'ajout de la ligne et n'est plus jamais comparée par la suite ; ainsi, toute modification apportée à cette colonne dans SQLite ne déclenche pas de mise à jour. Pour les notes, les responsables et les dates de suivi saisis manuellement par votre équipe, utilisez une colonne qui n'est pas incluse dans la requête : les colonnes présentes uniquement dans la ligne de base ne sont jamais affectées par la synchronisation.
Lequel est le plus rapide ? L'ajout (Ajout) effectue des écritures sans lecture préalable de la table. La synchronisation complète (Synchronisation complète) lit la table, compare chaque ligne et n'écrit que les différences ; elle est donc plus longue, mais la table correspond toujours à la requête. Vous pouvez modifier ce mode ultérieurement depuis le panneau d'édition de l'automatisation.
Pour un tableau auquel vous pouvez faire confiance, cliquez Créer toutes les colonnes en tant que synchrones, puis cliquez sur l'icône de clé sur numéro de client pour en faire le CléQuery Streams analyse l'intégralité du résultat pour confirmer l'unicité de la clé et vous avertit dans le cas contraire. Conservez les notes de votre équipe dans des colonnes distinctes de la requête ; celles-ci ne seront jamais modifiées. Pour un journal qui ne cesse de s'enrichir, cliquez ici. Créer toutes les colonnes en tant que Conserver Cliquez plutôt et ignorez la clé. Continuer.
-
Définissez le calendrier, nommez-le, créez-le
Sur Étape 5 choisir Fonctionner selon un horaire et choisissez un Fréquence:
Fréquence Courses Toutes les 5 minutes toutes les 5 minutes, la plus rapide autorisée Toutes les 15 minutes toutes les 15 minutes Toutes les 30 minutes toutes les 30 minutes Toutes les heures au début de chaque heure Tous les jours à 9h tous les jours à 9h00, par défaut Tous les jours à 6h du matin tous les jours à 6h00 En semaine à 9h du matin Du lundi au vendredi à 9h00 Hebdomadaire (lundi 9h) tous les lundis à 9h00 Programme personnalisé vos propres minutes, heures, jours de la semaine ou jours du mois Les temps suivent le Fuseau horaire vous choisissez, qui commence par celui de votre navigateur. Vous pouvez également choisir Manuel uniquement et presse Exécuter Vous pouvez programmer les exécutions à tout moment ; il est possible d'ajouter une planification ultérieurement depuis le panneau d'édition de l'automatisation. Les exécutions planifiées s'effectuent sur l'Agent et continuent donc de fonctionner même lorsque votre navigateur est fermé. Si l'ordinateur exécutant l'Agent est éteint lors d'une exécution prévue, celle-ci sera effectuée une seule fois, peu après le redémarrage de l'Agent.
Donnez-lui un Nom de l'intégration, comme « Commandes à Baserow, quotidiennement », vérifiez le Prêt à créer résumé et clic Créer une automatisationDe retour sur la page Automatisation, appuyez sur Exécuter Il est préférable d'effectuer la première synchronisation maintenant plutôt que d'attendre la planification. Ouvrez Baserow : les lignes s'y trouvent, sous les en-têtes de colonnes.
C'est ça. Désormais, le tableau se met à jour automatiquement. Seules les lignes renvoyées par la requête ont quitté votre réseau, et personne n'a besoin de se souvenir d'exécuter quoi que ce soit.
Ce que vous voyez ensuite
Le page d'automatisation Affiche chaque automatisation avec son statut, sa source, sa cible, sa clé, sa planification, sa dernière synchronisation et le nombre de lignes. Ouvrez-en une pour la Exécutions Onglet : chaque exécution avec son déclencheur (manuel ou planifié), sa durée et les lignes créées, mises à jour, supprimées et inchangées. Performance L'onglet affiche les données traitées et le taux de réussite sur une période de 7 à 90 jours.
On vous prévient quand cela s'arrête.
Chaque organisation a un Problèmes de synchronisation Règle d'alerte dès le départ : une notification dans l'application et un e-mail en cas d'échec de synchronisation, puis un autre une fois la synchronisation rétablie. Un seul message par incident, jamais par tentative de resynchronisation. Vous pouvez désactiver cette option ou modifier les canaux dans Flux → Alertes et rapports.
Il s'arrête quand il le devrait
Si Baserow cesse d'accepter la connexion ou si le connecteur de données est supprimé, l'automatisation s'interrompt et affiche le motif. Reconnectez-vous ou sélectionnez une nouvelle source, puis cliquez sur Reprendre. Les autres erreurs maintiennent l'exécution et s'affichent sur la ligne correspondante.
Colonne clé manquante
Si quelqu'un renomme ou supprime la colonne clé dans Baserow, Full Sync s'arrête avant d'écrire quoi que ce soit et affiche Options de correctionRemettez la colonne avec son nom exact et relancez la synchronisation. Vos autres colonnes ne sont jamais supprimées par la synchronisation.
Ce que les plans permettent
L'automatisation est incluse dans tous les forfaits, y compris le forfait gratuit, sans limite quant au nombre d'automatisations que vous pouvez créer. Chaque forfait limite cependant le nombre de lignes qu'une requête peut renvoyer par exécution.
| Plan | Lignes par exécution |
|---|---|
| Gratuit | 125 |
| Noyau personnel | 500 |
| Personnel Plus | 1,000 |
| Cœur de métier | 2,500 |
| Business Plus | 5,000 |
| Business Max | 10,000 |
| Noyau d'entreprise | 25,000 |
| Entreprise Plus | 100,000 |
| Enterprise Max | 250,000 |
Si une requête renvoie davantage de résultats, son exécution est suspendue au lieu d'être interrompue. L'automatisation vous indique alors le plan d'exécution le plus adapté ou vous suggère d'ajouter un filtre, comme une plage de dates. Chaque exécution réussie est également décomptée de votre quota Data Realm, le même que celui utilisé par vos requêtes Excel et Sheets. Consultez la page des prix pour les indemnités.
Bonnes prochaines étapes
- Ajouter un filtre à la requête, par exemple les 90 derniers jours, afin que la table reste petite et rapide et respecte la limite de lignes de votre forfait.
- Conservez les notes manuscrites dans leurs propres colonnes., en dehors de la requête, afin qu'elles survivent à chaque synchronisation.
- Regroupez vos automatisations Depuis le panneau Édition, une fois que vous en avez quelques-uns ; la page Automatisation filtre par groupe.
Reaching a file on a network share
The Agent opens files as a background service, not as you, so a file on another computer needs one extra step. Which step depends on the computer the Agent runs on.
If the test cannot get to the share, look for these words in its result: unreachable means the Agent’s computer got no answer from the server. On Linux or a Mac, not mounted means the share still has to be mounted, and that message includes the exact mount command for your server.
SQLite file on a share? Partir Read-Only (Immutable) ticked, as it is by default; reads then take a point-in-time view of the file without locks. SQLite cannot use its WAL mode over a network, so with that box unticked a WAL-mode database on a \\serveur\partage path is refused, and the test says it is a WAL-mode SQLite database.
Test failed on a share?
Every run reaches the file the same way the connection test does. If runs start failing after something changed on the file server, a new password for example, open the connector in Agents de données et cliquez Test de connexion. The test result, and the line under the file path, name the problem:
| Message | Cause | Réparer |
|---|---|---|
| SQLite database file not found: followed by a \\serveur\partage path you know is right | No login is stored, so the Agent tried the share as its own account and could not see the file: the share turned that account away, or the server did not answer. In the first case the line under the path says Access denied for the agent’s service account. | Cliquez sur Service identity under the path and store a login that can read the share. If the line under the path does not say access denied, check that the Agent’s computer can open the share at all. |
| Share \\server: access denied — add credentials for this server | A login is stored, but that account has no permission on the share, or another sign-in to the same server is in the way; the message before this line says which. | Ask whoever runs the server to give that account read access, or store an account that has it. For a sign-in in the way, see the two rows on one login per server below. |
| Share \\server: the credentials were refused — check the username and password | The server turned the stored login down: a typo, the wrong domain, or a password changed since it was saved, which also stops runs that used to work. | Click the chip under the path and type the password again; for an account made on the server itself, leave Domain blank. After a refused login the Agent waits a minute before it tries that same one again, so the account is not locked out; saving a corrected password tries straight away. |
| Share \\server: server unreachable from the agent machine | The Agent’s computer got no answer from the server: a wrong server name, the server is off, or a firewall blocks file sharing. | On the Agent’s computer, open the same \\serveur\partage path in File Explorer. If that fails too, it is a network problem for whoever runs the network. |
| Another connector on this agent already signs in to \\server as … | Windows lets one computer sign in to a server as one account at a time, and another connector on this Agent uses a different login for that server. | Store the same login the other connector uses, or change it on every connector that reads that server. |
| Windows already holds a sign-in to \\server for … | Something on the Agent’s computer other than the Agent is already signed in to that server as a different account, and the Agent never closes a sign-in it did not make. | Do what the rest of the message says: use that same account on this connector, or close the other sign-in on the Agent’s computer. If it says the share is already readable through that sign-in, choose Use service identity in the login box instead. |
| This agent build cannot sign in to \\server with stored credentials. | The Agent is an older version that cannot use stored logins. | Update the Agent, then test again. |
| \\server\share is not mounted on this Linux agent (ou macOS agent) | The Agent runs on Linux or a Mac and the share has not been mounted on its computer yet; logins stored in the Portal are not used there. | Mount it with the command the message gives you, then test again. Step by step: sous Linux · on a Mac. |
| … is a WAL-mode SQLite database | The database uses SQLite’s WAL mode, which cannot work over a network share, and Read-Only (Immutable) is unticked on the connector. | Tick Read-Only (Immutable) on the connector and test again. |
Questions que se posent les gens
La synchronisation écrasera-t-elle les notes ajoutées par mon équipe dans Baserow ?
Sauf si les notes se trouvent dans leur propre colonne. Les colonnes qui existent uniquement dans Baserow et non dans votre requête ne sont jamais modifiées. Ajoutez donc une colonne « Notes » ou « Propriétaire » à côté des colonnes synchronisées et saisissez-y vos notes. Les colonnes marquées Synchronisation sont rétablies à la valeur SQLite à chaque exécution ; Préserver Les colonnes sont remplies dès l'arrivée d'une ligne et ne sont plus comparées par la suite.
Mes données SQLite sont-elles stockées par Query Streams ?
Non. L'agent exécute la requête sur votre serveur et envoie directement les lignes à Baserow via une connexion chiffrée. Query Streams conserve la configuration, la planification et le nombre de lignes par exécution, mais pas les lignes elles-mêmes.
Mon ordinateur doit-il rester allumé ?
C'est l'ordinateur qui exécute l'Agent qui effectue l'exécution, car c'est lui qui lance la requête et écrit dans Baserow. Votre ordinateur portable et votre navigateur peuvent être fermés. Si cet ordinateur est éteint lorsqu'une exécution est prévue, l'exécution manquée est effectuée une seule fois, peu après le redémarrage de l'Agent.
Puis-je modifier la requête ultérieurement ?
Oui. Modifiez et enregistrez la requête dans le Générateur de requêtes ; la prochaine exécution utilisera automatiquement la nouvelle version. Si vous ajoutez ou supprimez des colonnes, ouvrez le panneau d'édition de l'automatisation pour les associer.
Deux automatisations peuvent-elles écrire dans la même table ?
Non, une seule automatisation par table. Vous pouvez créer une deuxième automatisation pour cibler une autre table, ou élargir la requête de la première.
Le forfait gratuit couvre-t-il vraiment cela ?
Oui. L'offre gratuite est un forfait permanent, et non une période d'essai. L'automatisation est incluse dans tous les forfaits ; seul le nombre de lignes qu'une requête peut renvoyer par exécution varie selon le forfait. Consultez la liste complète des éléments inclus dans l'offre gratuite. page de tarification.
Guides associés
Chaque guide pour SQLite
Ce n'est pas tout à fait votre configuration ?
- Vous avez un dossier contenant plusieurs fichiers SQLite au lieu d'un seul ? SQLite Folder fusionne les tables portant le même nom en une seule et étiquette chaque ligne avec le fichier d'origine. SQLite Folder
Setup trouble?
- Agent says the file or folder does not exist, or access is denied? Mapped drives, network shares, OneDrive and Linux home folders each need one fix → Where the Agent can read files from
- Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?

