# PL/pgSQL

Published articles for PL/pgSQL.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Calling Procedures with Default Parameters using JDBC or jOOQ

DevFeed: [Calling Procedures with Default Parameters using JDBC or jOOQ](<https://devfeed.tech/articles/calling-procedures-with-default-parameters-using-jdbc-or-jooq-28932.md>)

Original publisher: [Read original article](<https://blog.jooq.org/calling-procedures-with-default-parameters-using-jdbc-or-jooq/>)

Author: lukaseder

Published: 2022-10-21T14:35:39Z

Content type: tutorial

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [Reason](<https://devfeed.tech/topics/reason.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Oracle Database](<https://devfeed.tech/topics/oracle-database.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>)

Tags: [db2](<https://devfeed.tech/tags/db2.md>), [default-parameters](<https://devfeed.tech/tags/default-parameters.md>), [java](<https://devfeed.tech/tags/java.md>), [jdbc](<https://devfeed.tech/tags/jdbc.md>), [jooq](<https://devfeed.tech/tags/jooq.md>), [jooq-in-use](<https://devfeed.tech/tags/jooq-in-use.md>), [oracle](<https://devfeed.tech/tags/oracle.md>), [pl-pgsql](<https://devfeed.tech/tags/pl-pgsql.md>), [pl-sql](<https://devfeed.tech/tags/pl-sql.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [sql-server](<https://devfeed.tech/tags/sql-server.md>), [stored-functions](<https://devfeed.tech/tags/stored-functions.md>), [stored-procedures](<https://devfeed.tech/tags/stored-procedures.md>), [syntax](<https://devfeed.tech/tags/syntax.md>)

### AI overview

This tutorial explains how to call stored procedures with default parameters using JDBC or jOOQ. It shows how directly instantiating a procedure call allows Java code to omit parameters that have database-side defaults, and notes that syntax varies across supported relational database systems.

### Source excerpt

Using jOOQ's code generator to call stored procedures is a popular reason to use jOOQ. For example, when you have a procedure like the following Oracle PL/SQL procedure: jOOQ will generate code for you to call very simply, like this: This will execute the following, taking care of binding all IN and OUT parameters for ... Continue reading Calling Procedures with Default Parameters using JDBC or jOOQ ->

## The Best Way to Call Stored Procedures from Java: With jOOQ

DevFeed: [The Best Way to Call Stored Procedures from Java: With jOOQ](<https://devfeed.tech/articles/the-best-way-to-call-stored-procedures-from-java-with-jooq-28961.md>)

Original publisher: [Read original article](<https://blog.jooq.org/the-best-way-to-call-stored-procedures-from-java-with-jooq/>)

Author: lukaseder

Published: 2022-07-28T13:11:59Z

Content type: tutorial

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [Code generation](<https://devfeed.tech/topics/code-generation.md>), [Java](<https://devfeed.tech/topics/java.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [data-processing](<https://devfeed.tech/topics/data-processing.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [code-generation](<https://devfeed.tech/tags/code-generation.md>), [code-generator](<https://devfeed.tech/tags/code-generator.md>), [data-processing](<https://devfeed.tech/tags/data-processing.md>), [java](<https://devfeed.tech/tags/java.md>), [jdbc](<https://devfeed.tech/tags/jdbc.md>), [jdbc-drivers](<https://devfeed.tech/tags/jdbc-drivers.md>), [jooq](<https://devfeed.tech/tags/jooq.md>), [jooq-in-use](<https://devfeed.tech/tags/jooq-in-use.md>), [oracle](<https://devfeed.tech/tags/oracle.md>), [pl-pgsql](<https://devfeed.tech/tags/pl-pgsql.md>), [pl-sql](<https://devfeed.tech/tags/pl-sql.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [rdbms](<https://devfeed.tech/tags/rdbms.md>), [schema](<https://devfeed.tech/tags/schema.md>), [sql](<https://devfeed.tech/tags/sql.md>), [stored-functions](<https://devfeed.tech/tags/stored-functions.md>), [stored-procedures](<https://devfeed.tech/tags/stored-procedures.md>), [t-sql](<https://devfeed.tech/tags/t-sql.md>), [udts](<https://devfeed.tech/tags/udts.md>)

### AI overview

This tutorial explains how to call stored procedures from Java using jOOQ-generated code. It contrasts JDBC calls with generated procedure stubs and convenience methods, covering parameter handling, database types, and support for procedures, functions, packages, and UDTs.

### Source excerpt

jOOQ is mainly known for its powerful type safe, embedded, dynamic SQL capabilities that are made available through code generation. However, a secondary use case of code generation is to use it for stored procedures (possibly exclusively for stored procedures). Stored procedures are powerful ways of moving complex data processing logic to the server. This ... Continue reading The Best Way to Call Stored Procedures from Java: With jOOQ ->

## Auditing Changes with Hstore

DevFeed: [Auditing Changes with Hstore](<https://devfeed.tech/articles/auditing-changes-with-hstore-34512.md>)

Original publisher: [Read original article](<https://tapoueh.org/blog/2013/08/auditing-changes-with-hstore/>)

Author: Dimitri Fontaine PostgreSQL Major Contributor; Author

Published: 2013-08-27T15:35:00Z

Content type: tutorial

Language: en

Sources: [Dimitri Fontaine](<https://devfeed.tech/sources/dimitri-fontaine.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [changes](<https://devfeed.tech/tags/changes.md>), [pl-pgsql](<https://devfeed.tech/tags/pl-pgsql.md>)

### AI overview

This tutorial explains how to use PostgreSQL's hstore extension with a trigger to audit row changes. It stores full hstore representations of the data before and after updates, preserving enough history to reconstruct a row's value over time.

### Source excerpt

In a previous article about Trigger Parameters we have been using the extension hstore in order to compute some extra field in our records, where the fields used both for the computation and for storing the results were passed in as dynamic parameters. Today we're going to see another trigger use case for hstore: we are going to record changes made to our tuples.