PostgreSQL可以创建区分大小写的数据库吗?
我正在将一些代码从某些版本的Sybase移植到PostgreSQL。这是一个使用Sybase客户端库的C应用程序。我的方法是编写一个转换层,以将调用转换dbsqlexec()为PQexec()(例如)。该部分大部分正常工作。 看来Sybase数据库是以区分大小写的方式(相对于数据库对象名称)设置的。例如,同时有一个WIDGET表和一个widget表。看起来此应用程序中的约定是:全大写名称表示实际数据表,而小写名称在运行某些处理时用作临时表。 根据4.1词法结构,“ 关键字和未加引号的标识符不区分大小写。 ”我知道我可以对标识符加双引号以禁用自动折叠为小写字母,但是我不想通过成千上万的行手动进行操作使用此数据库的代码。 有没有一种方法可以设置PostgreSQL以禁用数据库对象标识符的这种自动大小写折叠? 我的替代方法是编写一些代码,检查每个SQL语句,并在每个标识符(不是关键字)周围加上双引号。