IP Library Granted Patent US 9,275,099
Granted Patent B1
US 9,275,099 · App. 14/641,620 · Granted Mar 1, 2016

Source independent query language

Inventor: Thomas R. Kennedy, Jr. (Miami Beach, FL)
Assignee: Vinyl Development LLC
G06F17/30371G06F17/30424G06F17/30595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,275,099
App. No.
14/641,620
Granted
Mar 1, 2016
Kind
B1
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for a source independent query language. One of the methods includes receiving a first executable statement, the first executable statement referencing a second set of fields in a table in a relational database, the first executable statement having instructions to cause the database to perform operations on data in the table. The method includes Generating a second executable statement based on the first set of fields and the first executable statement. The method includes determining a mapping between the first set of fields and the second set of fields. The method includes specifying a derived table using the corresponding values and the mapping. The method includes generating instructions to cause the database to perform the operations on the derived table. The method includes sending the second executable statement to the database.

Claims (71)

1. A computer-implemented method, the method comprising:

obtaining data from a user interface, the data including a first set of fields and corresponding values;

receiving a first executable statement, the first executable statement referencing a second set of fields in a table in a relational database, the first executable statement having instructions to cause the database to perform operations on data in the table;

generating a second executable statement based on the first set of fields and the first executable statement, comprising:

determining a mapping between the first set of fields and the second set of fields, comprising:

identifying a first data type of a first field in the first set of fields,

identifying a second data type of a second field in the second set of fields,

identifying a conversion command to convert from the first data type to the second data type, and

adding the conversion command to the second executable statement,

specifying a derived table using the corresponding values and the mapping, and

generating instructions to cause the database to perform the operations on the derived table; and

sending the second executable statement to the database.

2. The method of claim 1 , further comprising:

receiving result data from the database associated with the execution of the operations in the second executable statement;

determining that the data from the user interface is invalid based on the result data.

3. The method of claim 1 , further comprising:

identifying a first operation of the operations in the first executable statement;

identifying a proprietary function corresponding to the first operation; and

inserting the proprietary function into the second executable statement.

4. The method of claim 1 , further comprising:

validating data in the database by providing the second executable statement to the database.

5. The method of claim 1 , wherein generating a second executable statement based on the first set of fields and the first executable statement further comprises:

providing an alias for the derived table; and

updating the second executable statement to reference the alias.

6. A non-transitory computer storage medium encoded with computer program instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:

receiving a first executable statement, the first executable statement referencing a second set of fields in a table in a relational database, the first executable statement having instructions to cause the database to perform operations on data in the table;

generating a second executable statement based on the first set of fields and the first executable statement, comprising:

determining a mapping between the first set of fields and the second set of fields, comprising:

identifying a first data type of a first field in the first set of fields,

identifying a second data type of a second field in the second set of fields,

identifying a conversion command to convert from the first data type to the second data type, and

adding the conversion command to the second executable statement,

specifying a derived table using the corresponding values and the mapping, and

generating instructions to cause the database to perform the operations on the derived table; and

sending the second executable statement to the database.

7. The non-transitory computer storage medium of claim 6 , further comprising:

receiving result data from the database associated with the execution of the operations in the second executable statement;

determining that the data from the user interface is invalid based on the result data.

8. The non-transitory computer storage medium of claim 6 , further comprising:

identifying a first operation of the operations in the first executable statement;

identifying a proprietary function corresponding to the first operation; and

inserting the proprietary function into the second executable statement.

9. The non-transitory computer storage medium of claim 6 , further comprising:

validating data in the database by providing the second executable statement to the database.

10. The non-transitory computer storage medium of claim 6 , wherein generating a second executable statement based on the first set of fields and the first executable statement further comprises:

providing an alias for the derived table; and

updating the second executable statement to reference the alias.

11. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

receiving a first executable statement, the first executable statement referencing a second set of fields in a table in a relational database, the first executable statement having instructions to cause the database to perform operations on data in the table;

generating a second executable statement based on the first set of fields and the first executable statement, comprising:

determining a mapping between the first set of fields and the second set of fields, comprising:

identifying a first data type of a first field in the first set of fields,

identifying a second data type of a second field in the second set of fields,

identifying a conversion command to convert from the first data type to the second data type, and

adding the conversion command to the second executable statement,

specifying a derived table using the corresponding values and the mapping, and

generating instructions to cause the database to perform the operations on the derived table; and

sending the second executable statement to the database.

12. The system of claim 11 , further comprising:

receiving result data from the database associated with the execution of the operations in the second executable statement;

determining that the data from the user interface is invalid based on the result data.

13. The system of claim 11 , further comprising:

identifying a first operation of the operations in the first executable statement;

identifying a proprietary function corresponding to the first operation; and

inserting the proprietary function into the second executable statement.

14. The system of claim 11 , further comprising:

validating data in the database by providing the first second executable statement to the database.

15. The system of claim 11 , wherein generating a second executable statement based on the first set of fields and the first executable statement further comprises:

providing an alias for the derived table; and

updating the second executable statement to reference the alias.

Assignments (4)
SECURITY INTEREST Recorded Mar 23, 2023
From: JITTERBIT, INC.
To: CRESTLINE DIRECT FINANCE, L.P.
Reel/Frame 063069/0088 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 062941 FRAME: 0640. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 15, 2023
From: VINYL DEVELOPMENT LLC
To: JITTERBIT, INC.
Reel/Frame 063101/0532 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2023
From: VINYL DEVELOPMENT, LLC
To: JITTERBIT, INC.
Reel/Frame 062941/0640 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2015
From: KENNEDY, THOMAS R., JR.
To: VINYL DEVELOPMENT LLC
Reel/Frame 036943/0622 →