This comprehensive Data Dictionary Tool is designed to read, analyze, and document relational database schemas. It provides a complete solution for database documentation with visual relationship diagrams, detailed data dictionaries, and export capabilities.
- JSON Schema: Structured JSON format with tables, columns, and relationships
- XML Schema: Standard XML database definition format
- SQL DDL: Direct SQL CREATE TABLE statements with foreign keys
- Table Schema Parsing: Extract table names, descriptions, and column definitions
- Relationship Detection: Identify foreign key relationships and dependencies
- Constraint Analysis: Parse primary keys, foreign keys, unique constraints, and more
- Data Type Recognition: Support for all standard SQL data types
- Interactive Relationship Diagrams: Visual representation of table relationships
- Professional Styling: Clean, modern interface with responsive design
- Real-time Updates: Instant visualization as you input schema data
- Comprehensive Data Dictionary: Detailed table and column documentation
- Alphabetical Glossary: Searchable reference of all database terms
- Relationship Analysis: Complete foreign key relationship mapping
- HTML Export: Standalone HTML documentation files
- PDF Export: Print-ready PDF documentation
- Full Reports: Comprehensive analysis with all components
Select your preferred input format from the tabs:
- JSON: For structured data exchange
- XML: For standard database definitions
- SQL DDL: For direct SQL statements
Either:
- Paste your database schema in the selected format
- Click "Load Sample Data" to see an example
- Use the provided templates and examples
Click "Parse Schema" to:
- Validate the input format
- Extract table and relationship information
- Generate comprehensive analysis
Switch between output tabs to view:
- Relationship Diagram: Visual table connections
- Data Dictionary: Detailed documentation
- Table Glossary: Alphabetical reference
Choose from export options:
- Export HTML: Standalone documentation
- Export PDF: Print-ready format
- Full Report: Complete comprehensive analysis
{
"database": "ecommerce_db",
"tables": [
{
"name": "customers",
"description": "Customer information table",
"columns": [
{
"name": "customer_id",
"type": "INT",
"constraints": ["PRIMARY KEY", "AUTO_INCREMENT"],
"description": "Unique customer identifier"
},
{
"name": "email",
"type": "VARCHAR(255)",
"constraints": ["UNIQUE", "NOT NULL"],
"description": "Customer email address"
}
]
}
],
"relationships": [
{
"type": "foreign_key",
"from_table": "orders",
"from_column": "customer_id",
"to_table": "customers",
"to_column": "customer_id"
}
]
}<database name="ecommerce_db">
<tables>
<table name="customers" description="Customer information table">
<columns>
<column name="customer_id" type="INT" constraints="PRIMARY KEY,AUTO_INCREMENT" description="Unique customer identifier" />
<column name="email" type="VARCHAR(255)" constraints="UNIQUE,NOT NULL" description="Customer email address" />
</columns>
</table>
</tables>
<relationships>
<relationship type="foreign_key" from_table="orders" from_column="customer_id" to_table="customers" to_column="customer_id" />
</relationships>
</database>CREATE TABLE customers (
customer_id INT PRIMARY KEY AUTO_INCREMENT,
first_name VARCHAR(100) NOT NULL,
email VARCHAR(255) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE orders (
order_id INT PRIMARY KEY AUTO_INCREMENT,
customer_id INT NOT NULL,
total_amount DECIMAL(10,2) NOT NULL,
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);- Interactive Table Nodes: Clickable table representations
- Relationship Lines: Visual foreign key connections
- Color-coded Constraints: Primary keys, foreign keys clearly marked
- Responsive Layout: Automatic positioning and scaling
- Database Overview: Summary statistics and metadata
- Table Details: Complete column specifications
- Constraint Analysis: All database constraints documented
- Relationship Mapping: Foreign key relationship details
- HTML Documentation: Self-contained web pages
- PDF Reports: Professional print format
- Comprehensive Reports: All analysis combined
- Custom Formatting: Professional styling included
- Pure JavaScript: No external framework dependencies
- Modular Design: Separated parsing, analysis, and rendering
- Error Handling: Comprehensive validation and error reporting
- Responsive UI: Mobile-friendly interface
- Table Definitions: Names, descriptions, and metadata
- Column Specifications: Data types, sizes, and properties
- Constraint Types: Primary keys, foreign keys, unique, not null
- Relationship Types: One-to-one, one-to-many, many-to-many
- Data Types: All standard SQL data types supported
- Modern Browsers: Chrome, Firefox, Safari, Edge
- Responsive Design: Works on desktop, tablet, and mobile
- No Server Required: Runs entirely in the browser
- Local Processing: All data remains client-side
- Development Teams: Maintain up-to-date schema documentation
- Database Administrators: Generate comprehensive database reports
- Project Managers: Understand database structure and relationships
- Quality Assurance: Validate database design and constraints
- Database Courses: Teach relational database concepts
- Schema Design: Visualize and understand database relationships
- Documentation Standards: Learn proper database documentation practices
- Legacy Systems: Document existing database structures
- System Integration: Understand data relationships
- Architecture Planning: Analyze database dependencies
Q5/
βββ index.html # Main application interface
βββ style.css # Professional styling and responsive design
βββ script.js # Core application logic and parsers
βββ README.md # This comprehensive documentation
- Format Checking: Validates JSON, XML, and SQL syntax
- Schema Validation: Ensures required fields are present
- Relationship Validation: Verifies foreign key references
- Error Reporting: Clear, actionable error messages
- Professional Styling: Clean, modern documentation
- Complete Coverage: All schema elements documented
- Cross-references: Linked relationships and references
- Export Integrity: Consistent formatting across export formats
- Open the Tool: Load
index.htmlin a web browser - Choose Format: Select JSON, XML, or SQL input format
- Load Example: Click "Load Sample Data" to see a working example
- Input Schema: Paste your database schema or modify the sample
- Parse Schema: Click "Parse Schema" to analyze the data
- Explore Results: Use the output tabs to view different analyses
- Export Documentation: Choose your preferred export format
- Complete Schemas: Include all tables and relationships
- Descriptive Names: Use clear, meaningful table and column names
- Add Descriptions: Include detailed descriptions for better documentation
- Validate Syntax: Ensure your input format is correct
- Review Diagrams: Check relationship visualizations for accuracy
- Verify Documentation: Ensure all components are properly documented
- Test Exports: Verify exported files meet your requirements
- Customize as Needed: Use exports as base for further customization
- Dependency Mapping: Understand table dependencies
- Referential Integrity: Verify foreign key relationships
- Cascade Analysis: Identify update and delete cascades
- Professional Formatting: Industry-standard documentation
- Comprehensive Coverage: All database elements included
- Version Control: Export timestamped documentation
- Team Collaboration: Shareable documentation formats
Created for Educational and Professional Use - A comprehensive tool for database schema analysis and documentation.
This tool is designed to be self-contained and easy to use. For educational purposes, it demonstrates:
- Database schema parsing and analysis
- Visual relationship diagram generation
- Professional documentation creation
- Modern web application development
The implementation showcases best practices in:
- Client-side data processing
- Responsive web design
- Error handling and validation
- Export functionality development