增查改删 API

代码生成 部分描述的那样,定义好模式后,运行 entc 可以生成以下内容

  • 用于和图(数据库)交互的 ClientTx.

  • 每个模式的增查改删(CRUD)构建器,查看 增查改删API 详情。

  • 每个模式的实体 (Go struct).

  • 包含用于和构建器交互的常量和条件查询方法。

  • 为 SQL 提供的 migrate 包. 查看 数据库迁移 详情。

创建一个客户端

MySQL

package main

import (
    "log"

    "<project>/ent"

    _ "github.com/go-sql-driver/mysql"
)

func main() {
    client, err := ent.Open("mysql", "<user>:<pass>@tcp(<host>:<port>)/<database>?parseTime=True")
    if err != nil {
        log.Fatal(err)
    }
    defer client.Close()
}

SQLite

Gremlin (AWS Neptune)

创建

创建一个实体。

Save 创建一个用户.

SaveX 创建一个用户;不同于 Save, SaveX 遇到错误时会引起 panics.

更新

更新一个数据库返回的实体。

根据 ID 更新

根据 ID 更新一个实体。

更新多个

根据条件过滤更新多个实体。

Query edge-predicates.

查询

Query The Graph. 查询有粉丝的用户。

获取某个用户的粉丝列表;从图中的某个节点开始图遍历。

获取某个用户的所有粉丝的所有宠物。

获取所有宠物的名字。

获取所有宠物的名字和年龄。

你可以在 遍历 找到更多遍历的高级用法。

删除

删除一个实体。

Delete by ID.

删除多个

根据条件过滤删除多个实体。

Last updated

Was this helpful?