Skip to content

Application to insert CSV file into a specified database with optimised columns lenght

Notifications You must be signed in to change notification settings

Maxime-Cllt/FileFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

31700cb Β· Feb 2, 2025

History

24 Commits
Feb 2, 2025
Oct 4, 2024
Dec 4, 2024
Feb 2, 2025
Feb 2, 2025
Nov 13, 2024
Feb 2, 2025
Oct 19, 2024
Oct 4, 2024
Dec 4, 2024
Jan 23, 2025
Dec 31, 2024
Oct 4, 2024
Dec 4, 2024
Oct 4, 2024
Oct 4, 2024
Oct 4, 2024

Repository files navigation

FileFlow

FileFlow

Rust Tauri Version
FileFlow FileFlow

πŸ“„ Description

FileFlow is a simple and easy-to-use tool that allows you to insert data from a CSV file directly into a database table. With no privilege required for insertion, it simplifies the process while offering efficiency.

Built with Rust and the Tauri framework, FileFlow is a cross-platform application available on Windows, MacOS, and Linux. πŸš€

Check the Release Section for the latest version of the application.

🌟 Features

  • βœ… Insert data into a new table
  • βœ… Insert data into an existing table
  • βœ… Optimize column types (e.g., VARCHAR(MAX_LENGTH))
  • βœ… Insert data from a CSV file
  • βœ… Does NOT require ANY privileges for data insertion
  • βœ… Generate LOAD DATA SQL query for faster insertion

πŸ›  Supported Databases

MySQL MariaDB PostgreSQL SQLite

πŸ“ Requirements

  • Rust
  • Cargo
  • pnpm

You can follow the instructions on the Tauri website to install Rust and Cargo.

πŸ“₯ Installation

  1. Clone the repository:

    git clone https://github.com/Maxime-Cllt/FileFlow.git
  2. Install the dependencies:

    cd FileFlow
    pnpm install
  3. Build the application:

    pnpm tauri build
  4. Run the application:

    pnpm tauri dev

πŸ’‘ Usage

1. Insert Data

  • πŸ“ Select the CSV file you want to insert into the database.
  • πŸ’» Choose the database where you want to insert the data.
  • ➑️ Click the "Insert" button.
  • ⏳ Wait for the data to be inserted.
  • βœ… Done!

2. Generate Load Data

  • πŸ“ Select the CSV file you want to insert into the database.
  • πŸ–±οΈ Click the "Load" button in the menu.
  • πŸ“‹ Copy the generated SQL query.
  • πŸƒβ€β™‚οΈ Run the query if your database supports it.
  • βœ… Done!

βš™οΈ Modes of Data Insertion

There are two modes for inserting data into the database:

  • Optimized Mode: Inserts data into a new table with optimized column types (e.g., VARCHAR(MAX_LENGTH)). πŸ› οΈ This mode may take longer but ensures the table structure is optimized.

  • Fast Mode: Inserts data into an existing table, keeping the original column types as they are in the CSV file. ⚑ This mode is quicker but may not optimize the column types.

Additionally, you can generate a LOAD DATA SQL query for faster insertion if your database supports it. This method is much quicker than row-by-row insertion! πŸš€

🀝 Contributing

Want to contribute to the project? Feel free to open an issue or submit a pull request. We welcome contributions and ideas from the community! πŸ’‘