在前面的部分中:
在这一部分中,我们将讨论如何创建导航树中显示的对象列表。
作为标准,我们选择4种类型的基本对象
- 桌子
- 表示
- 功能
- 程序。
此外,每个数据库都有自己的对象来存储实体-例如:
- MS SQL-将数据存储在sys.schemas中,按类型将其分开(类型='V'-视图,类型='U'-表)
- Oracle-这里的一切都非常简单-有user_views和user_tables对象,它们存储相应用户设置的描述
- Vertica-v_catalog.views和v_catalog.tables
- PostegreSQL-pg_catalog.pg_views和pg_catalog.pg_tables
- MySQL-information_schema.views和information_schema.tables
- DB2-所有数据都存储在SYSIBM.tables中,其中table_type ='VIEW'是视图,而table_type ='BASE TABLE'是表。
- ClickHouse所有对象都在system.tables中,分为表和视图的事件发生在engine ='View'字段上
该流形由in2SqlLibrary类管理,在这种情况下发生:
- 根据驱动程序文件名(getDBType)确定ODBC连接的类型
- 根据对应的类型分配表(getSqlTables)和视图(getSqlViews)。
为了加快excel插件(插件)的加载,在扩展相应工件的分支时将访问此数据(我将在另一篇文章中讨论)。