Skip to content

Mark query parameters as nullable #1155

@kyleconroy

Description

@kyleconroy

For the following query, sqlc will generate a function signature with a string for parameter $1.

CREATE TABLE users ( name TEXT NOT NULL );

-- name: ListUsers :many
SELECT *
FROM users
WHERE name = $1;
func (q *Queries) ListUsers(ctx context.Context, name string) ([]string, error) {
    // ...
}

How should we indicate that parameter $1 should be nullable?

Option 1: Add a parameter to the sqlc.arg function

CREATE TABLE users ( name TEXT NOT NULL );

-- name: ListUsers :many
SELECT *
FROM users
WHERE name = sqlc.arg('name', nullable => true);

Originally reported in #200

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions