Oracle不支持分号:未来还有变动吗?
Oracle作为当今最流行的关系型数据库管理系统之一,已经在各个领域得到广泛应用。然而,与许多其他数据库管理系统不同,Oracle不支持分号作为语句的结束符。这给许多开发人员造成了困扰,因为他们习惯于在各种编程语言中使用分号来标记代码的结束。
究竟为什么Oracle不支持分号?这是因为SQL语言在Oracle中的命令都是以关键字结尾的,而这些关键字本身就是语句的结尾标志。例如,一个简单的SELECT语句就是以FROM关键字结尾的。由于一个语句的所有部分都必须正确地分隔符号,因此不再需要使用分号作为行结尾标记。
然而,在实践中,许多开发人员习惯于使用分号作为语句的结束符,因此Oracle仍然支持分号。但是,这样做并不是必须的,并且实际上这样做可能会导致一些问题。例如,如果在PL/SQL代码块中使用分号作为结束符,Oracle会认为这是一个语句的结尾,并抛出错误,因为PL/SQL代码块中必须使用END关键字结束。
那么,Oracle未来将会有什么变动吗?毕竟,分号已成为现代编程语言中广泛使用的一种标记方法。事实上,尽管Oracle当前不鼓励使用分号,但是现在已经能够在一些特定情况下使用分号。例如,在使用Oracle内置的SQL*Plus工具时,分号是必须的。
此外,一些最新版本的Oracle也开始支持分号。在12.1.0.2版本中,Oracle宣布已经增加了SELECT … FOR UPDATE SKIP LOCKED语法,其中要求使用分号作为结束符号。另外,在12.2版本中,Oracle还为PL/SQL增加了一些新的功能,包括可以使用RETURN关键字退出一个过程或函数,这意味着在这种情况下使用分号作为结束符已经是必须的。
虽然Oracle目前不支持分号作为语句的结束符,但是基于实际使用和开发人员的需求,Oracle也逐渐开始支持分号。对于开发人员来说,理解Oracle的语句分隔规则和使用情境,可以更加顺利地编写Oracle SQL语句和PL/SQL代码,并且充分利用Oracle最新版本的一些特性和功能。在进行Oracle开发时,建议充分掌握Oracle语句的规则和使用场景,以免在实际开发中出现一些意外的错误。