Exporting table data
Export data from any table or query result in multiple formats.CSV export
Comma-separated values format, compatible with Excel, Google Sheets, and most data tools. From table viewer:- Open a table
- Click Export → CSV
- Choose options:
- Include headers (recommended)
- Delimiter (comma, semicolon, tab)
- Quote character
- File downloads automatically
CSV exports handle special characters, commas, and line breaks correctly by using quotes.
JSON export
JSON array format, ideal for APIs and data processing. From table viewer:- Open a table
- Click Export → JSON
- Choose formatting:
- Compact: Minimal whitespace
- Pretty: Indented and readable
- File downloads automatically
Excel export
Native Excel .xlsx format with proper formatting and data types. From table viewer:- Open a table
- Click Export → Excel
- File downloads automatically as .xlsx
xlsx library (version 0.20.2) and includes:
- Column headers in bold
- Proper data types (numbers, dates, booleans)
- Auto-sized columns
- Frozen header row
Large Excel exports (>50,000 rows) may take 10-30 seconds to generate.
Query result export
Export results from any SQL query:- Run your query in the Query Tool
- Click Export in the results panel
- Choose format (CSV, JSON, or Excel)
- File downloads automatically
- Exporting filtered data
- Custom queries with JOINs
- Aggregated results
- Complex WHERE clauses
Encrypted backups
Poge’s backup system (components/backup-restore.tsx) creates encrypted archives of your data and settings.
What’s backed up
Full backups include:- Server connections: Host, port, database, credentials
- Saved queries: All your saved SQL queries
- Query history: Recent query executions
- Notes: All notes and scratch pad content
- Settings: Application preferences
- UI state: Window layouts, selected tabs
Creating encrypted backups
- Go to Settings → Backup & Restore
- Click Create Backup
- Choose backup type:
- Full backup (.enc): Everything with encryption
- Settings only (.json): No sensitive data
- Enter encryption password (for full backup)
- Click Create Backup
- Save the .enc or .json file
- Algorithm: AES-256-GCM
- Key derivation: PBKDF2 with 100,000 iterations
- Salt: Random 32-byte salt per backup
- Authentication: Built-in with GCM mode
Backup file structure
Encrypted backup (.enc) format:Restoring backups
Restore from a backup file:- Go to Settings → Backup & Restore
- Click Restore from Backup
- Select your .enc or .json file
- Enter decryption password (for .enc files)
- Choose what to restore:
- ☑ Server connections
- ☑ Saved queries
- ☑ Query history
- ☑ Notes
- ☑ Settings
- Click Restore
Restoring doesn’t delete existing data. It merges with current data, with the backup taking precedence for conflicts.
Restore strategies
Selective restore: Uncheck items you don’t want to restore. Useful when:- Moving between computers but keeping local settings
- Sharing connection configs without history
- Recovering just your saved queries
- Merge (default): Combines backup with existing data
- Replace: Clears existing data first, then restores
Migration scenarios
Moving to a new computer
- On old computer:
- Create full encrypted backup
- Save to cloud storage or USB drive
- On new computer:
- Open Poge
- Complete first-time setup
- Restore from backup
Sharing connection templates
Share server connections with your team:- Create settings-only backup (.json)
- Share the JSON file (no encryption needed)
- Team imports the file
- Each person enters their own passwords
Browser migration
Switching browsers or clearing browser data:- Create full backup before switching
- Open Poge in new browser
- Restore from backup
- All data and settings return
Importing data into tables
Import CSV or JSON data into existing tables:- Open the target table in Table Viewer
- Click Import Data
- Select your CSV or JSON file
- Map columns:
- Match source columns to table columns
- Choose default values for missing columns
- Skip columns you don’t want to import
- Choose import mode:
- Insert: Add new rows
- Upsert: Update existing rows or insert new ones
- Replace: Clear table first, then insert
- Click Import
Import validation
Poge validates imported data:- Data types: Ensures values match column types
- Constraints: Checks primary keys, foreign keys, and unique constraints
- Required fields: Verifies NOT NULL columns have values
- Formatting: Parses dates, numbers, and booleans
Large data exports
For tables with millions of rows:Chunked exports
- Use query filters to export in batches:
- Export each month separately
- Combine files later if needed
Streaming exports
For extremely large tables (10M+ rows), use PostgreSQL’s COPY command:Automation
Automate backups using browser automation tools:Automated backups are useful for daily exports or CI/CD pipelines.