最火下载站首页
手机版
最火下载站
关注公众号
最火下载站

当前位置:首页 > 网络知识 > 网络编程 > Oracle> 在Oracle数据库中提高查询结果的可读性

在Oracle数据库中提高查询结果的可读性

文章作者:网友投稿 发布时间:2008-11-17 19:20:37 来源:网络

在Oracle数据库中,有很多格式化工具,可以提高结果的可读性。对我们的数据库设计与软件开发,具有画龙点睛的作用。   如下图,是员工薪资管理模块中的一个员工薪资表。这个表在外行人眼里看起来已经比较完美了。但是,其仍然有不少可以完善的地方。      一、 在货

在Oracle数据库中,有很多格式化工具,可以提高结果的可读性。对我们的数据库设计与软件开发,具有画龙点睛的作用。

  如下图,是员工薪资管理模块中的一个员工薪资表。这个表在外行人眼里看起来已经比较完美了。但是,其仍然有不少可以完善的地方。

  在Oracle数据库中提高查询结果的可读性

  一、 在货币前面加入本地货币符号。

  货币字段在系统中,是一个比较复杂的字段。特别是在一些涉及到多货币的管理系统中,有时候两个字段数字虽然相同,但是,其实际表示的金额却不一致。因为两者对应的货币符号不同。所以,有时候,我们希望在货币字段之前,显示本地的货币符号。这可以让用户直观的了解,这个是以本位币表示的货币金额。

  在Oracle数据库中提高查询结果的可读性

  如上图,我们希望在货币之前能够显示货币符号。这比上面那个结果,显然可读性更好。其实,要实现这个目的,也是很简单的。在Oracle数据库中,提供了Format命令,可以格式化查询结果。如要实现上面的结果,则可以利用这个命令来完成。

  COLUMN HEADING FORMAT L9999.99;

  Column是Oracle数据库提供的一个命令。结合Format参数,可以用来格式化查询结果。在L9999.99,这个参数中,L表示在数值型字段前显示本地货币符号。这里的本地货币符号是指在Oracle数据库环境中设置的本地货币符号,而跟前台应用程序无关。在前台程序开发的时候,要注意跟Oracle数据库同步。如用户在前台应用软件中,设置的本位币是人民币的话,则前台程序要能够重新设置Oracle数据库的本地货币。如此的话,利用L参数才可以显示正确的结果。

  参数9表示在数值型字段上禁止显示前导0。此外,他还有一个额外的功能,就是表示精度。如上面的例子中,小数点后面加入两个9,就表示保留两位小数。即使没有小数的话,也要用0来补充。这也是我们在格式化查询结果的时候,常用的一个手段。

  不过在利用9来限制数字精度时,要注意一个问题,就是其位数一定要够。如果某个字段,其实际值为350000,而我们提供的参数为L9999.99的话。则最后将无法显示正确的结果。如可能会利用######来代替最终的结果。这是在数据库设计的时候,需要注意的问题。

  二、跟Format有关的其他格式控制。

  Format还提供了其他一些有用的参数。

  如$参数。若把COLUMN HEADING FORMAT L9999.99这个命令稍微改一下。该为COLUMN HEADING FORMAT $9999.99这个的话,那么会有什么结果?此时,无论Oracle数据库的本地货币符号是什么,在现实的结果中,都是以$开头的货币。也就是说,这个参数的含义就是在数值型字段前面显示美元符号。这跟Oracle数据库的环境变量无关。

  在Oracle数据库中提高查询结果的可读性

  如上图中,在Oracle数据库中,对于数字型的数据类型,默认情况下其不会用千位分隔符进行区分。而在软件设计中,特别是财务部门的管理软件,往往需要利用千位分隔符来进行划分。如此,用户读起来会更加的方便。为此,在Oracle数据库中,提供了一个“,”参数(注意是英文状态下的逗号)。这个参数指定在数字型的数据中加入千位分隔符。#p#副标题#e#三、 字段名居中。

  若你对上面的查询结果满意了,那么你就不是一个合格的软件设计师。至少说,你缺乏美感。很明显,上面字段的对起方式有问题。在Oracle数据库中,若字段类型为数字,则其自动靠右对齐;若字段类型为字符数据类型的话,则默认情况下,为靠左对齐。若我们想改变其对其方式。如USER_ID字段,我们想其居中对齐。这可以办到吗?

  其实,这也是一件轻而易举的事情。在数据库设计的时候,我们往往利用JUSTIFY参数,让相关的字段居中对齐。从而给用户更好的可读性。

  这个参数下面提供了三个控制参数,分别为LEFT,CENTER,RIGHT。分别表示左对齐、居中对齐与右对齐。数据库管理员可以根据实际的情况采取合适的对其方式。

  在软件设计过程中,往往会通过前台程序来控制这个显示格式。如在一个报表自定义平台中,就可以把参数传递到后台,从而利用这个参数实现对报表内容对齐方式的控制。这么处理的好处,就可以使得前台程序的报表与表单内容格式上的一致。

  四、 恢复原有的格式。

  若数据库管理员觉得不需要以上设置的格式,而想恢复默认的格式。有什么好办法吗?当然,数据库管理员可以通过以上命令与参数,把格式设置为数据库的默认格式。但是,这无疑是一件吃力不讨好的工作。在Oracle数据库中不需要这么麻烦。因为其提供了一个参数,通过这个参数可以恢复数据库的默认设置。如我们利用COLUMN HEADING CLEAR就可以恢复列的格式。

  当我们格式设置了之后,发现离我们预期所想的不一样的时候,我们就可以利用这个参数先恢复列的格式。然后再重新进行设置。若我们想恢复全部字段的默认格式,而不是一个字段,则不需要指定列名。即通过COLUMN CLEAR格式就可以恢复所有字段的数据库默认格式,包括其对齐方式、显示精度等等。

  总之,笔者认为现在数据内容显示格式越来越重要。有时候,甚至会影响用户对于软件的选择。所以,作为一个称职的数据库管理员,除了要重视功能性问题之外,对于Oracle数据库中的一些格式化命令,也应该有比较透彻的了解。另外,在格式化查询结果的过程中,要带着批判的眼光去看自己的作品。只有如此,才能够设计出让人满意的格式。切计,对于终端用户来说,他们往往更加重视表面上的格式内容;而对于你的实质性功能往往没有你所认为的那么重要。

上一篇: 奥林巴斯采用Oracle托管型CRM消除数据问题

下一篇: 如何利用脚本文件来管理Oracle数据库

共有0条评论网友评论
游戏