Interface: SprocResult<TRecords, TOut>
Defined in: src/procedure/StoredProcedureBuilder.ts:44
Simplified result returned by .output().query(), .output().queryMultiple(), and .output().run().
Encapsulates tabular record sets, strongly-typed output/INOUT parameters, integer return codes, and affected row counts across all supported database engines.
Example
// MSSQL / MySQL / PostgreSQL / Oracle:
const { records, out, returnValue, rowsAffected } = await ctx
.procedure('usp_ProcessOrder')
.input({ CustomerId: 101, OrderTotal: 299.95 })
.output<{ OrderId: number; TrackingNumber: string }>()
.query<OrderSummary>();
console.log('Rows:', records); // OrderSummary[]
console.log('New ID:', out.OrderId); // number
console.log('Tracking:', out.TrackingNumber); // string
console.log('Return Code:', returnValue); // 0 = Success
Type Parameters
| Type Parameter | Default type | Description |
|---|---|---|
TRecords | void | Type of records returned in tabular query results (e.g. User[] or [OrderHeader[], OrderItem[]]). |
TOut extends object | Record<string, unknown> | Interface of typed output parameters populated by the procedure (e.g. { GeneratedId: number; Status: string }). |
Properties
records
records:
TRecords
Defined in: src/procedure/StoredProcedureBuilder.ts:46
Typed record set(s) returned by the procedure SELECT statements.
out
out:
TOut
Defined in: src/procedure/StoredProcedureBuilder.ts:48
Strongly-typed output and INOUT parameter values returned by the database.
returnValue
returnValue:
number
Defined in: src/procedure/StoredProcedureBuilder.ts:50
Integer return value (SQL Server / MySQL RETURN statement). Defaults to 0.
rowsAffected
rowsAffected:
number
Defined in: src/procedure/StoredProcedureBuilder.ts:52
Number of rows modified or affected by DML commands executed within the procedure.