【问题标题】:PostgreSQL forces lowercase names?PostgreSQL强制小写名称?
【发布时间】:2012-03-02 18:43:39
【问题描述】:

刚开始通过C和libpq在linux上学习PostgreSQL 9.1。
现在我检查连接、连接、创建数据库、创建表和其他基本的东西。 但我注意到,在创建表期间,PQ 会将我的数据库名称转换为小写。然后我看到表名和字段名也被强制小写。 但是,当我尝试连接数据库的大写(原始)名称时,我收到警告,提示数据库不存在。

最好的一点是所有名称都保持原样。 这可以通过一些简单的方法/设置来实现吗?

例如:

M_122_KL0001_2011_001_0100001

将被创建为 m_122_kl0001_2011_001_0100001 我不需要的东西。
表名和字段名也是如此。

【问题讨论】:

    标签: postgresql-9.1


    【解决方案1】:

    这是 Postgres 的默认行为。

    如果你想要大写或混合大小写,你可以引用标识符,例如:

    createdb "M_122_KL0001_2011_001_0100001"
    

    【讨论】:

    • 是的!非常感谢。这里会有很多“转义字符串”:)
    • 保留“小写”规则会更聪明吗?
    • 在我看来,是的,将所有内容保持小写会使生活更轻松。但是,如果您有某些理由使用大写或混合大小写,那么至少现在您知道它是如何被支持的了。
    • 有人知道这种默认行为背后的原因吗?
    • @Basic:我不是 100%,但我的猜测是它使标识符不区分大小写而不会对性能造成太大影响。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-24
    • 2011-06-18
    • 1970-01-01
    • 2020-08-31
    • 2011-10-07
    相关资源
    最近更新 更多