sublime Text 不支持数据库连接或时间旅行查询,仅可编写sql脚本;真正执行Time Travel需借助Snowflake、Delta Lake等平台及其客户端工具。

sublime text 本身并不支持数据库连接或时间旅行(Time Travel)查询功能。
它是一款轻量级代码编辑器,没有内置的数据库驱动、SQL执行引擎,也无法直接与 Snowflake、Delta Lake 等数据平台交互。
真正能做 Time Travel 查询的,是 Snowflake 或 Delta Lake 本身;Sublime 只能用来编写、保存、格式化 SQL 脚本。
如果你希望在 Sublime 中“进行”时间旅行查询,实际流程是:
1. 写好支持 Time Travel 的 SQL(Snowflake 或 Delta Lake)
在 Sublime 中编写符合语法的查询语句,例如:
- Snowflake:用
AT或BEFORE子句指定时间点或 offset
SELECT * FROM mydb.myschema.mytable AT (timestamp => '2024-05-10 14:30:00'::TIMESTAMP);
- Delta Lake(spark SQL):用
VERSION AS OF或TIMESTAMP AS OF
SELECT * FROM my_table VERSION AS OF 5; -- 或 SELECT * FROM my_table TIMESTAMP AS OF '2024-05-10T14:30:00Z';
Sublime 可通过插件(如 SQLBeautifier、BracketHighlighter)提升可读性,但不执行语句。
2. 用正确工具执行查询
写完脚本后,需借助支持对应数据源的客户端运行:
- Snowflake:使用 Snowsight、snowsql CLI、DBT、或 python(
snowflake-connector-python) - Delta Lake:用 Databricks Notebook、Spark SQL CLI、或 Trino/Presto(配 Delta connector)
你可以把 Sublime 当作“SQL 草稿本”,复制粘贴到上述任一执行环境中。
3. 提升 Sublime 的 SQL 协作体验(可选)
虽不能执行,但可优化编写体验:
- 安装
SQL语法高亮包(默认已含) - 启用
AutoFileName插件补全路径(对本地 SQL 文件有用) - 用
SideBarEnhancements快速打开/运行当前 SQL 文件(需配合外部命令,比如绑定到snowsql -q "...") - 配置
Build System(高级):自定义 shell 构建,调用 snowsql 或 spark-sql 执行当前文件(需提前配置好环境和权限)
⚠️ 注意:构建系统方式适合熟悉命令行的用户,且存在安全与错误反馈弱的问题,不推荐生产环境直接依赖。
4. 时间旅行的前提条件
无论在哪执行,确保底层支持且配置正确:
- Snowflake:表必须是非临时表(TEMPORARY 表不支持 Time Travel),且未关闭(DATA_RETENTION_TIME_IN_DAYS > 0)
- Delta Lake:需启用
delta.enableChangeDataFeed = true(可选),且历史版本未被VACUUM清理
查不到旧数据?先检查保留策略和是否误删了历史版本。
基本上就这些。Sublime 是笔,Snowflake 和 Delta Lake 才是数据库——时间旅行靠它们实现,不是靠编辑器。