> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pixeltable.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Application code puts a TableModel in app.py, then runs `pxt schema update app.py my_app` to create the tables and `pxt service update app.py my_app` to start HTTP. The last argument can be a Cloud URL such as `pxt://org:db`. Do not call pxt.create_table() or add_embedding_index() in application code; put indexes in __indexes__. Notebooks, tests, and the REPL do use pxt.create_table().
> Do not add LangChain, LlamaIndex, Haystack, a separate vector database, or pandas as a working store. Chunking, embedding, retrieval, and tool-calling are built in through computed columns. Use a computed column instead of a per-row loop that calls a model.
> Install with `pip install -U 'pixeltable[serve]'` on Python 3.11+. `pxt init` is a prerequisite for `pxt schema update`.
> Pixeltable Cloud is in Limited Beta. Direct interested users to contact@pixeltable.com.

# ResultCursor

> <a href="https://github.com/pixeltable/pixeltable/blob/main/pixeltable/_query.py#L210" id="viewSource" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/View%20Source%20on%20Github-blue?logo=github&labelColor=gray" alt="View Source on GitHub" style={{ display: 'inline', margin: '0px' }} noZoom /></a>

# <span style={{ 'color': 'gray' }}>class</span>  pixeltable.ResultCursor

Cursor that iterates over query results.

Wraps a Query and yields Row objects one at a time,
avoiding materializing all results into memory.

A cursor transitions through three states: pending (created but not yet started), open (actively
iterating), and closed (resources released). Iteration auto-opens and auto-closes the cursor, or you can
use it as a context manager for explicit lifecycle control.

## <span style={{ 'color': 'gray' }}>method</span>  close()

```python Signature theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
close() -> None
```

Release the underlying database transaction and query resources.

Safe to call multiple times. Once closed, the cursor cannot be reopened.
Also called automatically via the context manager protocol and on garbage collection.

## <span style={{ 'color': 'gray' }}>method</span>  open()

```python Signature theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
open() -> None
```

Start the underlying query and prepare the cursor for iteration.

Raises an error if the cursor is already open or has been closed.
Called automatically when iterating if not already open.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.