VDS(Vastbase Data Studio)是海量数据Vastbase G100和M100数据库专属的图形化开发管理工具,它具备完善的对象管理、数据管理、PL/SQL 程序开发调试、安全审计等功能。无需安装部署,不占用主机资源,即开即用。
使用VDS 开发管理工具,您只需掌握少量数据库知识就可以轻松管理数据库对象和数据。本文为您介绍VDS的相关原理和使用。

VDS 是基于 Eclipse RCP 搭建的可视化桌面客户端 C/S 架构软件。技术上聚焦于客户端可视化的实现、客户端和数据库的交互,以及客户端和用户的互动。

展示:VDS 是一款桌面开发工具,需要显示器等硬件设备的支持
表现层:VDS 的可视化实现依赖于 RCP、SWT、JFace 等一系列的UI 技术或框架
业务层:在业务上,VDS 支持常见的用户需求包括:对象管理、连接管理、函数存储过程代码调试等
通信层:VDS 与数据库建立 JDBC 连接,并进行对象管理、调试等业务,在特殊场景下,也会基于 SSH 连接进行操作
运行环境:VDS 要求最低 JDk 11,操作系统本身需存在图形化(GTK)依赖


VDS 依赖 JDBC 与数据库进行通信,执行日常的对象查看、SQL 执行。另外,VDS 提供命令窗口,基于 libpq 协议与数据库进行通信。

VDS提供图形化的调试窗口用来开发、调试PL/SQL程序,调试窗口提供了常用的调试功能,如:单步进入、单步跳过、单步退出、查看/设置变量、查看调用堆栈、添加/删除断点。
调试窗口支持多开的同时调试不同的函数/存储过程,开发人员可以使用这些功能快速查找和修复应用程序中的错误,提高应用程序的稳定性和可靠性。
调试原理
VDS调试是通过jdbc连接调用数据库系统模式DBE_PLDEBUGGER下的相关系统函数,进行单机下的函数/存储过程的调试。使用DBE_PLDEBUGGER调试时,需要有两个客户端连接数据库,一个客户端负责执行调试接口作为debug端,另一个客户端执行调试函数,控制server端函数/存储过程执行。相关操作示例如下:
1
准备调试
通过PG_PROC,查找到待调试存储过程的oid,并执行DBE_PLDEBUGGER的接口turn_on(oid),本客户端就会作为server端使用。
<<左右滑查看完整代码>>
如上,执行了SELECT * FROM DBE_PLDEBUGGER.turn_on(16389); 语句后返回的结果中 port就是服务端的proxy id。
2
开始调试
server端执行(call)存储过程,会在存储过程内第一条SQL语句前hang住,等待debug端发送的调试消息。
此时再起一个客户端(可以理解为新获取一个数据库连接),作为debug端,通过turn_on返回的数据,调用DBE_PLDEBUGGER.attach关联到该存储过程上进行调试。
<<左右滑查看完整代码>>
通过以上操作,就创建好我们调试的server端和debug端,后续就可以通过debug端执行DBE_PLDEBUGGER中单步执行、单步跳过等函数来具体调试函数、查看变量等。完整的DBE_PLDEBUGGER的相关接口如下:
DBE_PLDEBUGGER相关接口说明

调试操作
在VDS工具中,在对象浏览器中,右键点击要调试的存储过程名称,选择调试打开调试窗口,会回显存储过程源码,点击启动调试按钮弹出参数输入窗口,输入参数即可开始调试。

启动调试后,可以通过查看变量和调用堆栈来判断程序执行,可以选择控制执行,支持单步跳过、单步进入、单步退出,支持添加/删除断点,支持设置变量值的调试操作。

通过对VDS代码调试的原理和使用介绍,您可以轻松上手,实现图形化单步调试,提高开发效率。
更多海量数据黑科技,敬请锁定《Vast+产品展厅》。
• END •
往期推荐









