Skip to main content

Database Management in SoftyFlow

SoftyFlow provides two main approaches for data management: SQL databases via External Data Sources (EDS) and MongoDB Collections. This guide covers both approaches with practical usage examples.

Before diving into database integration, ensure you've completed your project setup and understand how to use databases in your web interfaces and processes.

1. Overview

SQL via EDS (External Data Sources)

Connect to existing SQL databases (MySQL, PostgreSQL, Oracle, SQL Server, Snowflake) and APIs for enterprise data integration. Learn more about EDS integration.

database

MongoDB Collections

Use SoftyFlow's built-in MongoDB for rapid prototyping and application-specific data storage.

database

2. SQL via EDS

2.1. Quick Setup

database

2.2. Common Use Cases

Enterprise Integration: Connect to existing CRM, ERP, or legacy systems using our integration features Data Warehousing: Access analytics data from Snowflake or similar platforms for reporting Cross-System Integration: Sync data between multiple business systems

3. MongoDB Collections

3.1. Quick Setup

Collections are created directly in SoftyFlow IDE with automatic schema flexibility.

database

3.2. Common Use Cases

Rapid Prototyping: Quick data storage without database setup Application Settings: Store configuration and user preferences
Temporary Data: Session data, logs, and temporary calculations Flexible Schema: Documents with varying structures

4. Usage in Widgets

Integrate your databases with web interface widgets to create dynamic, data-driven interfaces.

database

4.1. Dropdown/Select Widgets

Use Select widgets to display database data as dropdown options.

SQL via EDS

database
database

MongoDB Collections

database
database

4.2. Table Widgets

Display database data in interactive Table widgets for comprehensive data management.

SQL via EDS

database

MongoDB Collections

database

4.3. Advanced Filtering

Dynamic Filters (SQL)

database

MongoDB Query Filters

database

5. Usage in Actions

Integrate databases with web interface actions and process design for dynamic data handling.

5.1. Form Submission

SQL via EDS

database

MongoDB Collections

database

5.2. Data Loading

Complex SQL Query

database

MongoDB Aggregation

database

5.3. Update Operations

Bulk Update (SQL)

database

MongoDB Update

database

6. Forms Integration

6.1. Dynamic Form Generation

EDS-Based Form

database

Collection-Based Form

database

6.2. Conditional Field Loading

database

7. Best Practices

7.1. When to Use SQL via EDS

Use for:

  • Existing enterprise systems integration
  • Complex reporting and analytics
  • Large datasets with established relationships
  • Multi-system data synchronization
  • Regulatory compliance requirements

7.2. When to Use MongoDB Collections

Use for:

  • Rapid application development
  • Flexible, evolving data structures
  • Application-specific configurations
  • Temporary or session data
  • Small to medium datasets

7.3. Performance Tips

SQL Optimization

// Use indexed fields in queries
{
query: {
indexed_field: "value", // Fast
non_indexed_field: "value" // Slower
}
}

// Limit result sets
{
edsSource: "SELECT * FROM large_table WHERE active = 1 LIMIT 100"
}

MongoDB Optimization

// Create indexes for frequently queried fields
db.collection.createIndex({ "status": 1, "created_at": -1 })

// Use projection to limit returned fields
{
action: "find",
parameters: {
collection: "users",
object: { active: true },
options: {
projection: { name: 1, email: 1, _id: 1 }
}
}
}

8. Security Considerations

8.1. SQL Security

  • Use parameterized queries to prevent SQL injection
  • Implement role-based access control
  • Encrypt sensitive data in transit and at rest
  • Regular security audits and updates

8.2. MongoDB Security

  • Validate input data before insertion
  • Use appropriate field-level permissions
  • Implement data sanitization
  • Regular backup and recovery procedures

9. Migration Between Systems

9.1. From MongoDB to SQL

database

This documentation provides practical examples for both SQL and MongoDB usage in SoftyFlow applications. Choose the appropriate data storage method based on your specific requirements and existing infrastructure.


Next Steps

Now that you understand database integration, continue building your application:

For hands-on experience, try our step-by-step tutorials or watch our database video tutorials.

For advanced database features, explore our EDS documentation, MongoDB integration, and learn about using databases in Select widgets and Table widgets.