【发布时间】:2021-03-04 07:52:11
【问题描述】:
我想在带有 Cakephp 查询生成器的插入查询中使用 mariadb INET_ATON()。
INSERT INTO failed_logins
SET email = 'example@test.com', ip_address = INET_ATON('192.168.0.1'), sent_email = 1;
然后我想在选择查询中使用INET_NTOA() 检索数据。
SELECT id, email, INET_NTOA(ip_address) AS ip_address, sent_email FROM failed_logins;
如何在 Cake Query Builder 上将这些函数与插入和选择一起使用?
我看到了Using SQL functions,但无法解决我的问题。
【问题讨论】:
-
参考手册的自定义功能部分似乎是您问题的答案。试试吧!
-
可能,但我太笨了,无法从中做出什么。
func()方法用于查询对象,我使用$this->connection->insert('table', $row)进行插入,不涉及任何查询,但我错过了一些我知道的东西。 -
您是否有特定的理由使用连接而不是 ORM,甚至是查询构建器?
-
@ndm 我发布了一个编辑。
-
我不是说你不需要使用
insert(),如果你想创建一个插入查询,你肯定需要调用insert(),但你不一定有使用连接的便利功能,它只是查询构建器插入的包装器,带有连接的重试策略。
标签: mysql mariadb query-builder cakephp-4.x