Python 如何实现类似 go 语言 sqlx 的 NamedXXX 操作?

查看 51|回复 2
作者:craftx   
抄下 sqlx 文档的代码
       
    // 定义结构体
    type Person struct {
        FirstName string `db:"first_name"`
        LastName  string `db:"last_name"`
        Email     string `db:"email"`
    }
    // 创建对象
    personStructs := Person{FirstName: "Ardie", LastName: "Savea", Email: "[email protected]"}
        // 插入到数据库
    // sqlx 将 sql 语言中的“:field”替换为对象字段的值
    _, err = db.NamedExec(`INSERT INTO person (first_name, last_name, email)
        VALUES (:first_name, :last_name, :email)`, personStructs)
NoOneNoBody   
dataclass + f-format/string.Template ?
sql 执行需要另外实现
Vegetable   
https://pymysql.readthedocs.io/en/latest/modules/cursors.html#pymysql.cursors.Cursor.execute
execute("INSERT INTO person (first_name, last_name, email)
VALUES (%(first_name)s, %(last_name)s, %(email)s)", args=dict(first_name="",last_name="",email=""))
只需要解决 class to dict 就行了,方案多的是
有点原始了,这不就是 ORM 吗?这种不上不下的操作是什么特殊的需求
您需要登录后才可以回帖 登录 | 立即注册

返回顶部