如何在Sybase中删除表和列名称的区分大小写

时间:2015-11-03 08:05:19

标签: sybase sybase-ase

我是Sybase的新手,我真的觉得编写带有适当的表名和列名的sql很烦人。例如,如果表名是'员工'我无法查询,

select * from employee

有没有办法在Sybase中更改此行为?

我不想更改排序顺序或其他任何内容。我正在寻找一个能够绕过这个问题的黑客。

干杯!!

2 个答案:

答案 0 :(得分:1)

正如其他响应中正确指出的那样,这是一个服务器级配置设置,可以更改。 但是,没有提到的是,在ASE中,区分大小写同样适用于标识符以及数据比较。因此,如果您按照此处的讨论配置不区分大小写的排序顺序,那么效果也将是' Johnson'现在考虑等于' JOHNSON' - 这可能会给应用程序带来麻烦。 从这个意义上讲,ASE与其他数据库不同,后者区分大小写的这两个方面是分离的。

答案 1 :(得分:0)

此行为是服务器排序顺序的结果。这是服务器级别设置,而不是数据库级别设置,因此更改将影响服务器上的所有数据库。此外,如果数据库处于复制状态,则所有连接的服务器也需要更改其排序顺序。

更改排序顺序还需要您重建系统中的所有索引。

以下是有关选择或更改字符集和排序顺序的正确文档。

Configuring Character Sets, Sort Orders, and Languages

如评论中所述,它将需要DBA级别访问,并且必须重新启动服务器才能使更改生效。