tender-islands-return/docs/TAYLORDB_ATTACHMENTS.md

1.4 KiB

TaylorDB Attachments

Attachments are treated as standard columns and can be selected and written like other fields, using helper utilities for uploads.

This document covers:

  • Selecting attachment fields
  • Creating records with attachments
  • Updating attachments

Select Attachments

// New Standard: Use regular .select() like any other field.
const expenses = await qb
  .selectFrom("expenses")
  .select(["id", "amount", "receipt"])
  .execute();

Create with Attachments

Use qb.uploadAttachments to upload files before inserting.

await qb
  .insertInto("customers")
  .values({
    firstName: "Jane",
    lastName: "Doe",
    avatar: await qb.uploadAttachments([
      { file: new Blob([""]), name: "test.png" },
    ]),
  })
  .execute();

Update with Attachments

await qb
  .update("customers")
  .set({
    lastName: "Smith",
    avatar: await qb.uploadAttachments([
      { file: new Blob([""]), name: "test.png" },
    ]),
  })
  .where("id", "=", 1)
  .execute();

For more topics, see:

  • TAYLORDB_BASIC_QUERIES.md for basic reads and filtering
  • TAYLORDB_WRITE_OPERATIONS.md for inserts, updates, and deletes
  • TAYLORDB_ADVANCED_PATTERNS.md for aggregations, pagination, and conditional queries
  • TAYLORDB_FIELD_TYPES.md for field type handling and enums
  • TAYLORDB_PITFALLS_BEST_PRACTICES.md for pitfalls and best practices