Eugene 🔒 lint report of examples/E3/bad/1.sql
This is a human readable SQL script safety report generated by eugene.
Keep in mind that lints can be ignored by adding a -- eugene: ignore E123
comment to the SQL statement
or by passing --ignore E123 on the command line.
The migration script did not pass all the checks ❌
Statement number 1
SQL
-- 1.sql
create table authors (
id integer generated always as identity
primary key,
name text not null,
meta json
)
Lints
Add a new JSON column
ID: E3
A new column of type json
was added to a table. This breaks SELECT DISTINCT
queries or other operations that need equality checks on the column. A safer way is: Use the jsonb
type instead, it supports all use-cases of json
and is more robust and compact.
Created column meta
with type json
. The json
type does not support equality and should not be used, use jsonb
instead.