我们正在为一个新项目使用Doctrine 2,并遇到了一个问题: Doctrine 2在Postgres表列名称中包含空格。例如,假设有一列名为"Sales Person“。虽然您和我都知道列名中不应该有空格,但它仍然存在。这些数据库是多年前设计的,关键业务系统在这些数据库上运行,因此不能更改列名。有没有办法绕过这个问题而不使用黑客原则来处理这种情况?如果不是,你会建议如何在Doctrine end上解决这个问题?
发布于 2012-03-24 00:52:32
看起来像是另一个编码糟糕的ORM
http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/basic-mapping.html
例如:“您不能使用非a-zA-Z0-9_+字符,它们会中断多个SQL语句”,“标识符引号不应用于启用非标准字符,如破折号”和“架构工具可能会有麻烦时,引号是为了区分大小写的原因”。
看起来这是另一个ORM,它是由一个不想让它与实际数据库一起工作的人构建的。在列中包含空格等内容并不是一个好主意,但在SQL中这是完全合法的。
你实际上只有三个选择:
它们都不是理想的,而且我不确定在您的情况下哪一个是最简单的。
https://stackoverflow.com/questions/9841974
复制相似问题