Simulating data definition triggers in a database system

US11797495B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11797495-B2
Application numberUS-201615277838-A
CountryUS
Kind codeB2
Filing dateSep 27, 2016
Priority dateApr 11, 2016
Publication dateOct 24, 2023
Grant dateOct 24, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Techniques are described herein for simulating triggers in a database. A database server receives a query that targets a database managed by the database server. The database server is registered with a plugin that determines whether the query is a particular type of query. If so, plugin sends a message to an external process that includes features of the query. The database server can also execute the query regardless of whether the particular type of query is detected.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, at a database server from a client computing device, a first query that targets a first database managed by the database server, wherein the first query specifies a first set of one or more database operations to be performed by the database server; after receiving the first query at the database server, determining, by a plugin registered with the database server, that the first query is a first type of query; in response to determining that the first query is the first type of query, the plugin causing a message to be sent to a process that is external to the database server and external to the client computing device, wherein the message includes one or more features of the first query; executing, at the database server, the first query to perform the first set of one or more database operations; performing, by the process that is external to the database server: responsive to receiving the message from the plugin, generating a new query based on the one or more features, wherein the new query specifies a second set of one or more database operations that are different than the first set of one or more database operations; and sending the new query to the database server, wherein the new query includes information that is based on the one or more features; and executing the new query in the database server to perform the second set of one or more database operations. 2. The method of claim 1 wherein: the first type of query is a Data Definition Language (DDL) query that targets a particular table in the first database; the particular table has a first structure prior to execution of the DDL query and a second structure after execution of the DDL query; and the one or more features indicate information about the second structure of the particular table. 3. The method of claim 1 wherein executing the new query causes at least one operation to be performed in a second database that is different than the first database. 4. The method of claim 1 , wherein: a particular feature of the one or more features identifies a particular table in the first database with a first schema; the first query, when executed by the database server, produces a second schema for the particular table in the first database; the second schema is different than the first schema; and the new query causes the database server to store a record in a second table, wherein the record includes data that defines the second schema. 5. The method of claim 4 comprising: in response to the new query, updating a transaction log with data from the record; based on the transaction log, generating a trail file; and using the trail file to duplicate at least a portion of the first database. 6. The method of claim 1 , wherein determining whether the first query is the first type of query comprises determining that the first query comprises one or more particular keywords. 7. The method of claim 1 , wherein the database server and the process that is external to the database server are executed on different computers. 8. The method of claim 1 , further comprising, in response to determining that the first query is the first type of query, sending a notification to the client computing device identifying the first type of query and one or more actions available to the client computing device. 9. The method of claim 8 , wherein the one or more actions are based on the first type of query. 10. The method of claim 1 , wherein: the plugin is registered with the database server via an application programming interface; and the new query performs an operation that is not supported by the application programming interface. 11. The method of claim 1 , wherein the process that is external to the database server has a thread that listens for messages sent from the plugin and creates a new thread to process each message received from the plugin. 12. One or more non-transitory computer-readable media having stored thereon instructions which, when executed by one or more computing devices, cause a database server to perform: receiving, from a client computing device, a first query that targets a first database managed by the database server, wherein the first query specifies a first set of one or more database operations to be performed by the database server; after receiving the first query at the database server, determining, by a plugin registered with the database server, that the first query is a first type of query; in response to determining that the first query is the first type of query, the plugin causing a message to be sent to a process that is external to the database server and external to the client computing device, wherein the message includes one or more features of the first query; executing the first query to perform the first set of one or more database operations; performing, by the process that is external to the database server: responsive to receiving the message from the plugin, generating a new query based on the one or more features, wherein the new query specifies a second set of one or more database operations that are different than the first set of one or more database operations; and sending the new query to the database server, wherein the new query includes information that is based on the one or more features; and executing the new query in the database server to perform the second set of one or more database operations. 13. The one or more non-transitory computer-readable media of claim 12 wherein: the first type of query is a Data Definition Language (DDL) query that targets a particular table in the first database; the particular table has a first structure prior to execution of the DDL query and a second structure after execution of the DDL query; and the one or more features indicate information about the second structure of the particular table. 14. The one or more non-transitory computer-readable media of claim 12 wherein executing the new query causes at least one operation to be performed in a second database that is different than the first database. 15. The one or more non-transitory computer-readable media of claim 12 , wherein: a particular feature of the one or more features identifies a particular table in the first database with a first schema; the first query, when executed, produces a second schema for the particular table in the first database; the second schema is different than the first schema; and the new query causes the database server to store a record in a second table, wherein the record includes data that defines the second schema. 16. The one or more non-transitory computer-readable media of claim 15 further having stored thereon instructions which, when executed by one or more computing devices, cause the database server to perform: in response to the new query, updating a transaction log with data from the record; based on the transaction log, generating a trail file; and using the trail file to duplicate at least a portion of the first database. 17. The one or more non-transitory computer-readable media of claim 12 , wherein determining whether the first query is the first type of query comprises determining that the first query comprises one or more particular keywords. 18. The one or more non-transitory computer-readable media of claim 12 , wherein the database server and the process that is external to the database server are executed on different computers. 19. The one or more non-transitory computer-readabl

Assignees

Inventors

Classifications

  • G06F16/211Primary

    Schema design and management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11797495B2 cover?
Techniques are described herein for simulating triggers in a database. A database server receives a query that targets a database managed by the database server. The database server is registered with a plugin that determines whether the query is a particular type of query. If so, plugin sends a message to an external process that includes features of the query. The database server can also exe…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F16/211. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 24 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).