{"id":29542473,"url":"https://github.com/flowsynx/plugin-sqlite","last_synced_at":"2026-05-08T15:18:04.688Z","repository":{"id":303773980,"uuid":"1016281005","full_name":"flowsynx/plugin-sqlite","owner":"flowsynx","description":"FlowSynx plugin to enables data access and manipulation on SQLite databases.","archived":false,"fork":false,"pushed_at":"2025-07-09T10:09:11.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-09T11:19:47.091Z","etag":null,"topics":["data","database","flowsynx","sql","sqlite"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flowsynx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-08T19:05:25.000Z","updated_at":"2025-07-09T10:07:37.000Z","dependencies_parsed_at":"2025-07-09T11:19:53.776Z","dependency_job_id":null,"html_url":"https://github.com/flowsynx/plugin-sqlite","commit_stats":null,"previous_names":["flowsynx/plugin-sqlite"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/flowsynx/plugin-sqlite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowsynx%2Fplugin-sqlite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowsynx%2Fplugin-sqlite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowsynx%2Fplugin-sqlite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowsynx%2Fplugin-sqlite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flowsynx","download_url":"https://codeload.github.com/flowsynx/plugin-sqlite/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flowsynx%2Fplugin-sqlite/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265598325,"owners_count":23795312,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data","database","flowsynx","sql","sqlite"],"created_at":"2025-07-17T11:02:48.940Z","updated_at":"2026-05-08T15:18:04.679Z","avatar_url":"https://github.com/flowsynx.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FlowSynx SQLite Plugin\n\nThe SQLite Plugin is a pre-packaged, plug-and-play integration component for the FlowSynx engine. It enables executing SQLite queries with configurable parameters such as database file paths, SQL templates, and runtime parameters. Designed for FlowSynx�s no-code/low-code automation workflows, this plugin simplifies database integration, data retrieval, and transformation tasks for lightweight, file-based databases.\n\nThis plugin is automatically installed by the FlowSynx engine when selected within the platform. It is not intended for manual installation or standalone developer use outside the FlowSynx environment.\n\n## Purpose\n\nThe SQLite Plugin allows FlowSynx users to:\n\n- Execute parameterized SQL commands securely.\n- Retrieve data from SQLite and pass it downstream in workflows.\n- Perform data transformation and filtering inline using SQL.\n- Integrate SQLite operations into automation workflows without writing code.\n\n## Supported Operations\n\n- **query**: Executes a SQL `SELECT` query and returns the result set as structured data (see below).\n- **execute**: Executes a SQL command (`INSERT`, `UPDATE`, `DELETE`, etc.) and returns the number of affected rows (or null if using structured data input).\n\n## Plugin Specifications\n\nThe plugin requires the following configuration:\n- `ConnectionString` (string): **Required.** The SQLite connection string used to connect to the database. Example:\n```\nData Source=C:\\databases\\flowdata.db\n```\n\n## Input Parameters\n\nThe plugin accepts the following parameters (see `InputParameter`):\n\n- `Operation` (string): **Required.** The type of operation to perform. Supported values are `query` and `execute`.\n- `Sql` (string): **Required.** The SQL query or command to execute. Use parameter placeholders (e.g., `@id`, `@name`) for dynamic values.\n- `Params` (object): Optional. A dictionary of parameter names and values to be used in the SQL template.\n- `Data` (object): Optional. Used for structured data operations (e.g., bulk inserts/updates). Should be a `PluginContext` object with a `StructuredData` property containing a list of dictionaries.\n\n### Example input\n\n```json\n{\n  \"Operation\": \"query\",\n  \"Sql\": \"SELECT id, name, email FROM users WHERE country = @country\",\n  \"Params\": {\n    \"country\": \"Norway\"\n  }\n}\n```\n\n## Debugging Tips\n\n- Ensure the `ConnectionString` is correct and the file is accessible from the FlowSynx environment.\n- Use parameter placeholders (`@parameterName`) in the SQL to prevent SQL injection and enable parameterization.\n- Validate that all required parameters are provided in the `Params` dictionary.\n- If a query returns no results, verify that your SQL `WHERE` conditions are correct and the target table contains matching data.\n- For bulk operations, ensure `Data` is a valid `PluginContext` with a `StructuredData` list.\n\n## SQLite Limitations\n\nWhen using SQLite within FlowSynx, keep the following considerations in mind:\n\n- **No Parallel Writes**: SQLite allows only one write operation at a time. If multiple workflows attempt to write simultaneously, you may encounter locking errors. Consider queueing or serializing writes in high-concurrency scenarios.\n- **File-based Database**: SQLite databases are single files. Ensure the file is on a filesystem accessible to the FlowSynx runtime.\n- **Data Type Affinity**: SQLite uses dynamic typing (data type affinity), meaning values are stored based on the content rather than strict column types. Validate data formats explicitly when interacting with other systems.\n- **Size and Performance**: SQLite is best suited for lightweight workloads. For large datasets or heavy concurrent access, consider using a server-based database (e.g., PostgreSQL, MySQL).\n- **In-Memory Databases**: If using an in-memory database (`:memory:`), the database contents exist only during the lifetime of the plugin execution and will not persist across operations.\n\n## Security Notes\n\n- SQL commands are executed using parameterized queries to prevent SQL injection.\n- The plugin does not store credentials or data outside of execution unless explicitly configured.\n- Only authorized FlowSynx platform users can view or modify configurations.\n\n## License\n\n� FlowSynx. All rights reserved.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflowsynx%2Fplugin-sqlite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflowsynx%2Fplugin-sqlite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflowsynx%2Fplugin-sqlite/lists"}