DMSQL程序具有以下优点:
与SQL语言的完美结合
SQL语言已成为数据库的标准语言,DMSQL程序支持所有SQL数据类型和所有SQL函数,同时支持所有DM对象类型。在DMSQL程序中可以使用SELECT、INSERT、DELETE、UPDATE数据操作语句,事务控制语句,游标操纵语句以及通过动态SQL执行DDL语句。与SQL语言的完美结合使得DMSQL程序不仅能实现SQL的所有功能,且由于其自身的程序设计特性,能提供更加丰富、强大的功能。
提供更高的生产率
在使用DMSQL程序设计应用时,围绕存储过程/函数进行设计,可以避免重复编码,提高生产率;在自顶向下设计应用时,不必关心实现的细节;编程方便。从DM7开始,支持C和JAVA语言语法的DMSQL程序,这样在对自定义的DMSQL程序语法不熟悉的情况下也可以对数据库进行各种操作,对数据库的操作更加灵活,也更加容易。
提供更好的性能
DMSQL存储模块在创建时被编译成伪码序列,在运行时不需要重新进行编译和优化处理,具有更快的执行速度,可以同时被多个用户调用,并能够减少操作错误。使用存储模块可减少应用对DM的调用,降低系统资源浪费,显著提高性能,尤其是对在网络上与DM通讯的应用更加显著。
便于维护
用户定义的存储模块在DM数据库中集中存放,用户可以根据需要随时查询、删除或重建它们,而调用这些存储模块的应用程序可以不作任何修改,或只做少量调整。存储模块能被其他的DMSQL程序或SQL命令调用,任何客户/服务器工具都能访问存储模块,具有很好的可重用性。
提供更高的安全性
存储模块可将用户与具体的内部数据操作进行隔离,提高数据库的安全性。如一个存储模块查询并修改一个表的某几个列,管理员将这个存储模块的执行权限授予某用户,而不必将表的访问和修改权限授予这个用户,保证用户只访问修改其需要的数据。