有什么方法可以在 JDBC 中确定列或表是使用 ""表示法创建的吗?元数据获取列似乎没有返回此类信息。
PS:不幸的是,我们的客户模型是以这种方式创建的:-(
最佳答案
如果列名以混合大小写或全部大写形式返回,则它是使用引号创建的。
因此,如果 columnName.equals(columnName.toLowerCase()) == true
则不使用引号。或更多价格:无需报价。
请注意,这是 Postgres 特有的。其他数据库以大写形式存储未加引号的名称,有些数据库“按原样”存储它们而不需要引号。
关于postgresql - jdbc : postgres and quoted column names,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7220538/