# Audit columns

Published articles for Audit columns.

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

## Why JOIN USING Can Lead to Errors in SQL

DevFeed: [Why JOIN USING Can Lead to Errors in SQL](<https://devfeed.tech/articles/why-join-using-can-lead-to-errors-in-sql-28973.md>)

Original publisher: [Read original article](<https://blog.jooq.org/why-join-using-can-lead-to-errors-in-sql/>)

Author: lukaseder

Published: 2026-05-04T14:02:39Z

Content type: tutorial

Language: en

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

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>)

Tags: [audit-columns](<https://devfeed.tech/tags/audit-columns.md>), [errors](<https://devfeed.tech/tags/errors.md>), [join](<https://devfeed.tech/tags/join.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [production](<https://devfeed.tech/tags/production.md>), [schema](<https://devfeed.tech/tags/schema.md>), [sql](<https://devfeed.tech/tags/sql.md>), [statement](<https://devfeed.tech/tags/statement.md>), [syntax](<https://devfeed.tech/tags/syntax.md>), [table](<https://devfeed.tech/tags/table.md>)

### AI overview

The article explains why JOIN USING and NATURAL JOIN can make SQL queries fragile as schemas evolve. Adding a same-named column can introduce ambiguity or change join behavior, causing existing queries to fail, so explicit join conditions are recommended for production queries.

### Source excerpt

Some SQL operators are as esoteric as they're powerful. One of the oldest operator that you've likely hardly ever used in real world applications is NATURAL JOIN which is the default in relational algebra. We've covered a funky use-case for NATURAL JOIN earlier on this blog. The main reason why it's not very useful is ... Continue reading Why JOIN USING Can Lead to Errors in SQL ->

## 3.17.0 Release with Computed Columns, Audit Columns, Pattern Matching, Reactive Transactions and Kotlin Coroutine Support

DevFeed: [3.17.0 Release with Computed Columns, Audit Columns, Pattern Matching, Reactive Transactions and Kotlin Coroutine Support](<https://devfeed.tech/articles/3-17-0-release-with-computed-columns-audit-columns-pattern-matching-reactive-transactions-and-kotlin-coroutine-support-28926.md>)

Original publisher: [Read original article](<https://blog.jooq.org/3-17-0-release-with-computed-columns-audit-columns-pattern-matching-reactive-transactions-and-kotlin-coroutine-support/>)

Author: lukaseder

Published: 2022-06-22T15:15:05Z

Content type: release

Language: en

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

Topics: [releases](<https://devfeed.tech/topics/releases.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [reactive](<https://devfeed.tech/topics/reactive.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [audit-columns](<https://devfeed.tech/tags/audit-columns.md>), [client-side-computed-columns](<https://devfeed.tech/tags/client-side-computed-columns.md>), [computed-columns](<https://devfeed.tech/tags/computed-columns.md>), [coroutine](<https://devfeed.tech/tags/coroutine.md>), [coroutines](<https://devfeed.tech/tags/coroutines.md>), [implicit-join](<https://devfeed.tech/tags/implicit-join.md>), [java-17](<https://devfeed.tech/tags/java-17.md>), [jooq](<https://devfeed.tech/tags/jooq.md>), [jooq-3-17](<https://devfeed.tech/tags/jooq-3-17.md>), [jooq-development](<https://devfeed.tech/tags/jooq-development.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-coroutines](<https://devfeed.tech/tags/kotlin-coroutines.md>), [pattern-matching](<https://devfeed.tech/tags/pattern-matching.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [r2dbc](<https://devfeed.tech/tags/r2dbc.md>), [reactive-programming](<https://devfeed.tech/tags/reactive-programming.md>), [reactive-transactions](<https://devfeed.tech/tags/reactive-transactions.md>), [release](<https://devfeed.tech/tags/release.md>), [release-notes](<https://devfeed.tech/tags/release-notes.md>), [sql](<https://devfeed.tech/tags/sql.md>), [stored](<https://devfeed.tech/tags/stored.md>), [stored-computed-column](<https://devfeed.tech/tags/stored-computed-column.md>), [udt](<https://devfeed.tech/tags/udt.md>), [virtual](<https://devfeed.tech/tags/virtual.md>), [virtual-computed-column](<https://devfeed.tech/tags/virtual-computed-column.md>)

### AI overview

The jOOQ 3.17.0 release adds client-side computed columns for read and write operations, audit columns, pattern-matching SQL transformations, and more implicit JOIN capabilities. It also sets Java 17 as the baseline for the Open Source Edition while commercial distributions continue supporting Java 8 and 11.

### Source excerpt

This release contiues the work from previous releases around more sophisticated SQL transformation capabilities, including: Client side computed columns for both read and write operations Audit columns Pattern matching SQL transformations More implicit JOIN capabilities Client side computed columns A ground breaking new core feature available in all commercial distributions isthe new client side computed ... Continue reading 3.17.0 Release with Computed Columns, Audit Columns, Pattern Matching, Reactive Transactions and Kotlin Coroutine Support ->