📄️ ORM高级特性-RawSQL
由于 ORM 的安全性保障,所有输入的参数在底层都将使用预处理模式执行,防止常见的 SQL 注入风险。在某一些场景中,我们期望在生成执行的SQL语句中嵌入自定义的SQL语句,那么我们可以使用 ORM 的 RawSQL 特性,通过 gdb.Raw 类型来实现。我们来看几个示例。
📄️ ORM高级特性-SQL捕获
需要注意,框架SQL捕获的原理是,任何SQL操作生成的 SQL语句模板 加上 SQL执行参数,在被提交给底层数据库引擎前会被框架拦截,并通过框架组件自动格式化生成可供人工阅读的字符串, 仅供参考和调试,并不是完整提交给底层数据库引擎的SQL语句。捕获的SQL语句和ORM组件开启调试模式后输出的SQL语句是相同的,它们都由相同组件生成。