Skip to main content

Overview

The ID Existence validation rules provide flexible ways to validate that provided IDs exist in database tables with support for additional conditions like soft deletes, status checks, date ranges, and custom queries. All rules in this family:
  • Accept both single IDs and arrays of IDs
  • Use efficient batch queries with whereIn
  • Support custom database connections
  • Provide clear error messages with missing IDs

IdsExistInTable

Validates that IDs exist in a specific table and column.

Constructor Parameters

string
required
Database connection name (e.g., 'mysql', config('database.default'))
string
required
Table name to check (supports schema prefix: 'security.users')
string
default:"id"
Column name to validate against
array
default:"[]"
Additional WHERE conditions as key-value pairs
string|null
default:"null"
Key to extract from array items (for nested data)

Basic Usage

Array of IDs

With Additional Conditions

Nested Array Data

Error Message

IdsExistNotDelete

Validates that IDs exist and are not soft-deleted (checks deleted_at IS NULL).

Constructor Parameters

string
required
Database connection name
string
required
Table name to check
string
default:"id"
Column name to validate against
array
default:"[]"
Additional WHERE conditions
string|null
default:"null"
Key to extract from array items

Usage

With Additional Conditions

IdsExistWithAnyStatus

Validates that IDs exist with one of the specified status values.

Constructor Parameters

string
required
Database connection name
string
required
Table name to check
array
required
Array of acceptable status values
string
default:"status"
Status column name
array
default:"[]"
Additional WHERE conditions

Usage

Custom Status Column

With Additional Conditions

IdsExistWithDateRange

Validates that IDs exist with a date column within a specified range.

Constructor Parameters

string
required
Database connection name
string
required
Table name to check
string
required
Date column name to check
string|null
default:"null"
Start date (inclusive). Format: Y-m-d or Y-m-d H:i:s
string|null
default:"null"
End date (inclusive). Format: Y-m-d or Y-m-d H:i:s
array
default:"[]"
Additional WHERE conditions

Usage

Only Start Date

Only End Date

IdsWithCustomQuery

Validates IDs using a custom query callback for maximum flexibility.

Constructor Parameters

string
required
Database connection name
Closure
required
Callback function that receives a query builder and should return the modified query
string
default:"id"
Column name to validate against
array
default:"[]"
Additional WHERE conditions
string|null
default:"null"
Key to extract from array items

Basic Usage

Complex Query with Joins

With Organization Scope

Subquery Example

Complete Example

See Also