Transparent Database Access Object Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing object-relational mapping tools obscure the conversion process between object-oriented programming languages and relational databases, making it difficult for system users to manage and optimize database access, leading to inefficiencies and errors in code generation and data retrieval.

Innovation Solution

A system that retrieves metadata from database tables to generate database access objects with transparent SQL code, allowing users to optimize and modify SQL commands for efficient data access, and includes automated testing to ensure data integrity and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If object-relational mapping tools are used to convert data between object-oriented programming languages and relational databases, then the conversion process is automated, but the conversion process becomes obscured and difficult for system users to manage and optimize

Engineering Contradiction:
Improveautomation of data conversionVSAvoidvisibility of conversion process
Core Design Contradiction:
Extent of automationVSLoss of information

Solution Approach 1:

The patent introduces configuration files and code generation as an intermediary layer between the object-relational mapping tool and the database operations. This intermediary makes the conversion process visible and controllable by generating explicit SQL code and configuration files that users can inspect, modify, and optimize, while still maintaining automated conversion capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If manual code writing is used to enable creation, reading, updating, and deleting of data in a database table, then user control over database operations is maximized, but the process becomes very lengthy and time-consuming

Engineering Contradiction:
Improveuser control over database operationsVSAvoidtime required for manual code writing
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-generating database access objects, SQL code, and configuration files based on database schema metadata before actual database operations are performed. This allows users to review and optimize the generated code in advance, reducing the time required for manual code writing while maintaining full control over the generated operations.

Inventive Principle:
Principle #10Preliminary action

3Extent of automation

If object-relational mapping tools generate skeletal source code for persistence objects, then code generation is automated, but the generated code lacks optimization and efficiency

Engineering Contradiction:
Improveautomation of code generationVSAvoidefficiency of generated code
Core Design Contradiction:
Extent of automationVSProductivity

Solution Approach 1:

The patent implements feedback mechanisms by generating configuration files and SQL code that can be reviewed, tested, and optimized based on actual database performance and user requirements. The system allows users to provide feedback through configuration file modifications and code adjustments, which are then reflected in subsequent database operations, improving the efficiency of generated code over time.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10621372B2Method and system for generating database access objects
Publication Date: 2020.04.14 SALESFORCE INC
  • US10621372B2 patent drawing
  • US10621372B2 patent drawing
  • US10621372B2 patent drawing

AI summary

Systems and methods are provided for generating database access objects. Metadata associated with a database table is retrieved. The metadata includes a table name, column names, foreign key information, and/or primary key information. Objects are generated. Each object is associated with a corresponding row in the database table and includes fields associated with a corresponding column in the database table. A database access object is generated based on the metadata. The database access object includes relational database code to access data associated with the objects. The database access object is modified. Data associated with an object is accessed based on the modified database access object.