- Implement functionality to create, update, delete, and view relationships between tables. - Introduce new UI screens for managing relationships, including forms for adding and editing relationships. - Enhance table editor with navigation to relationship management. - Ensure relationships are displayed in a structured table format for better usability.
41 lines
1.2 KiB
Go
41 lines
1.2 KiB
Go
// Package inspector provides database introspection capabilities for live databases.
|
|
//
|
|
// # Overview
|
|
//
|
|
// The inspector package contains utilities for connecting to live databases and
|
|
// extracting their schema information through system catalog queries and metadata
|
|
// inspection.
|
|
//
|
|
// # Features
|
|
//
|
|
// - Database connection management
|
|
// - Schema metadata extraction
|
|
// - Table structure analysis
|
|
// - Constraint and index discovery
|
|
// - Foreign key relationship mapping
|
|
//
|
|
// # Supported Databases
|
|
//
|
|
// - PostgreSQL (via pgx driver)
|
|
// - SQLite (via modernc.org/sqlite driver)
|
|
//
|
|
// # Usage
|
|
//
|
|
// This package is used internally by database readers (pgsql, sqlite) to perform
|
|
// live schema introspection:
|
|
//
|
|
// inspector := inspector.NewPostgreSQLInspector(connString)
|
|
// schemas, err := inspector.GetSchemas()
|
|
// tables, err := inspector.GetTables(schemaName)
|
|
//
|
|
// # Architecture
|
|
//
|
|
// Each database type has its own inspector implementation that understands the
|
|
// specific system catalogs and metadata structures of that database system.
|
|
//
|
|
// # Security
|
|
//
|
|
// Inspectors use read-only operations and never modify database structure.
|
|
// Connection credentials should be handled securely.
|
|
package inspector
|