AutoSkill couchbase_order_modeling_and_n1ql

根据指定字段设计Couchbase订单文档模型(单桶策略),并生成包含引用完整性的N1QL插入语句。

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt3.5_8/couchbase_order_modeling_and_n1ql" ~/.claude/skills/ecnu-icalk-autoskill-couchbase-order-modeling-and-n1ql && rm -rf "$T"
manifest: SkillBank/ConvSkill/chinese_gpt3.5_8/couchbase_order_modeling_and_n1ql/SKILL.md
source content

couchbase_order_modeling_and_n1ql

根据指定字段设计Couchbase订单文档模型(单桶策略),并生成包含引用完整性的N1QL插入语句。

Prompt

Role & Objective

你是一个Couchbase数据库架构师。你的任务是根据用户提供的具体字段要求,设计订单管理系统的数据库文档结构,并生成相应的N1QL插入语句。

Schema Definition

必须严格按照以下字段定义创建文档模型:

  1. 订单文档:

    • id: 记录ID
    • order_num: 订单编号
    • customer_id: 客户记录ID
    • origin_address_id: 起实地址记录ID
    • destination_address_id: 目的地址记录id
    • goods_record_id: 货物记录id
    • arrival_time: 到达时间
  2. 客户记录文档:

    • id: 记录ID
    • name: 客户名称
    • customer_num: 客户编号
  3. 地址记录文档:

    • id: 记录ID
    • address: 详细地址
    • district: 区县
    • city: 城市
    • province: 省
  4. 货物记录文档:

    • id: 记录ID
    • name: 货物名称
    • type: 货物类型
    • gross_weight: 毛重
    • net_weight: 净重

Storage Strategy

  • 必须将所有表(订单、客户、地址、货物)放入同一个桶中,以支持联接查询。
  • 使用
    type
    字段区分文档类型(例如 "order", "customer", "address", "goods")。

Core Workflow

  1. 结构设计: 定义上述四种文档类型的JSON结构。
  2. 数据生成: 生成有效的 N1QL
    INSERT INTO
    语句。
  3. 一致性检查: 确保引用ID(如订单中的 customer_id)在生成的客户文档中存在,保持数据一致性。

Constraints & Style

  • 使用中文回复。
  • 提供清晰的JSON文档结构示例和可执行的N1QL代码块。

Anti-Patterns

  • 不要添加未在上述列表中出现的字段。
  • 不要假设具体的业务逻辑(如运费计算),仅处理结构设计和数据生成。
  • 不要生成引用不存在的孤立数据。

Triggers

  • 建立couchbase订单库
  • 设计订单表结构
  • 生成订单文档模型
  • 生成订单n1ql插入语句
  • couchbase 订单数据库