gpt4 book ai didi

mysql - 如何使 propel orm 使用区分大小写的名称

转载 作者:行者123 更新时间:2023-11-29 20:37:19 24 4
gpt4 key购买 nike

Propel ORM 在生产环境上查询失败,因为它连接的数据库启用了区分大小写(linux/ubuntu)。由于数据库是由另一个组织管理的,因此修复它比从我们这边更改代码更困难。

有没有办法强制 Propel ORM 使用区分大小写的名称?

谢谢!

最佳答案

Propel 在生成的文件中有一个 Map 目录。该目录包含所有表名和列名的映射,这些映射将插入 MySQL 使用的内容。

我们通过编写一个简单的 python 脚本来解决我们的问题,该脚本根据我们的要求更正区分大小写。

Map目录中的每个文件对应一个表的映射。我们的脚本一一打开每个文件,并用我们的特定要求替换每个映射(即使表名大写):

这是我们用来匹配表名称映射的正则表达式:

"(\s*const TABLE_NAME = ')([a-zA-Z_]+)(';)"

用于匹配每个文件内的列映射的正则表达式:

"(\s*\* the column name for the.*\s*\*\/.*\s*const [a-zA-Z_]+ = ')([a-zA-Z_]+)(\.[a-zA-Z_]+)(';)"

关于mysql - 如何使 propel orm 使用区分大小写的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38741791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com