Files
logan 40b9bdcc8c 落地页/文档面向用户清理:去开发向表述 + 删摆设组件
- 落地页下载卡「Tauri 2」价格位改「原生桌面」;sidecar/Go 二进制/monorepo 脚手架等内部表述改用户语言
- 文档删「打印/导出 PDF」与「是否有帮助」摆设组件及未使用图标
- MCP 页 H1 与页面标题去重(npm 安装命令为用户操作步骤,保留)
- homepage dist 同步重建
2026-10-16 13:20:55 +08:00

202 lines
8.0 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>SQL 工作台 · OpsxDB 文档</title>
<meta name="description" content="OpsxDB 桌面数据库工作台用户文档 — 连库、写 SQL、看结果;MySQL / PostgreSQL / SQL Server / Oracle / SQLite / Redis 内置驱动,SSH 隧道与 SSL 加密。">
<link rel="icon" type="image/svg+xml" href="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%2264%22%20y2%3D%2264%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23059669%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%2206B6D4%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2264%22%20height%3D%2264%22%20rx%3D%2214%22%20fill%3D%22url(%23g)%22%2F%3E%3Cg%20stroke%3D%22%23fff%22%20stroke-width%3D%224.5%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22%3E%3Cellipse%20cx%3D%2232%22%20cy%3D%2220%22%20rx%3D%2215%22%20ry%3D%226.5%22%2F%3E%3Cpath%20d%3D%22M17%2020v24c0%203.6%206.7%206.5%2015%206.5s15-2.9%2015-6.5V20%22%2F%3E%3Cpath%20d%3D%22M17%2032c0%203.6%206.7%206.5%2015%206.5s15-2.9%2015-6.5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E">
<link rel="stylesheet" href="/docs/assets/docs.css">
</head>
<body>
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
</svg>
<header class="topbar">
<div class="topbar-inner">
<button class="menu-btn" id="menu-btn" aria-label="打开导航"><svg class="i"><use href="#i-menu"/></svg></button>
<a class="brand" href="/docs">
<span class="brand-logo"><svg width="28" height="28" viewBox="0 0 64 64" aria-label="OpsxDB"><defs><linearGradient id="lg-docs" x1="0" y1="0" x2="64" y2="64" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#059669"/><stop offset="1" stop-color="#06B6D4"/></linearGradient></defs><rect width="64" height="64" rx="14" fill="url(#lg-docs)"/><g stroke="#fff" stroke-width="4.5" fill="none" stroke-linecap="round"><ellipse cx="32" cy="20" rx="15" ry="6.5"/><path d="M17 20v24c0 3.6 6.7 6.5 15 6.5s15-2.9 15-6.5V20"/><path d="M17 32c0 3.6 6.7 6.5 15 6.5s15-2.9 15-6.5"/></g></svg></span>
<span class="brand-name">OpsxDB <em>文档</em></span>
</a>
<span class="ver-badge">v0.1</span>
<div class="search">
<input id="search-input" type="search" placeholder="搜索文档…" autocomplete="off" spellcheck="false">
<div class="search-panel" id="search-panel" hidden></div>
</div>
<nav class="top-links">
<a href="/home">官网</a>
<a href="/docs/quickstart">快速开始</a>
</nav>
</div>
</header>
<div class="layout" id="layout">
<aside class="sidebar" id="sidebar">
<div class="nav-group">
<div class="nav-group-title">开始使用</div>
<a class="nav-link" href="/docs/intro">产品介绍</a>
<a class="nav-link" href="/docs/quickstart">快速开始</a>
<a class="nav-link" href="/docs/interface">界面导览</a>
</div>
<div class="nav-group">
<div class="nav-group-title">连接与驱动</div>
<a class="nav-link" href="/docs/connect">新建连接</a>
<a class="nav-link" href="/docs/drivers">驱动支持</a>
</div>
<div class="nav-group">
<div class="nav-group-title">SQL 工作台</div>
<a class="nav-link active" href="/docs/workbench">SQL 工作台</a>
<a class="nav-link" href="/docs/results">结果与导出</a>
<a class="nav-link" href="/docs/redis">Redis 工作台</a>
</div>
<div class="nav-group">
<div class="nav-group-title">安全与 AI</div>
<a class="nav-link" href="/docs/security">安全设计</a>
<a class="nav-link" href="/docs/ai">AI 助手</a>
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
</div>
<div class="nav-group">
<div class="nav-group-title">参考</div>
<a class="nav-link" href="/docs/faq">常见问题</a>
<a class="nav-link" href="/docs/shortcuts">快捷键</a>
</div>
<div class="sidebar-foot">© 2026 OpsxDB · 本地优先的数据库工作台</div>
</aside>
<main class="content">
<div class="breadcrumb">文档 <span>/</span> SQL 工作台 <span>/</span> SQL 工作台</div>
<h1 class="page-title">SQL 工作台</h1>
<div class="page-meta">更新于 2026-09-20</div>
<article class="md">
<p>SQL 工作台是日常使用率最高的界面,所有交互围绕「快」设计。</p>
<h2 id="sec-1">执行模型</h2>
<ul>
<li><strong>⌘/Ctrl + Enter</strong>:执行光标所在的<strong>当前语句</strong>;有选区时执行<strong>选区</strong>;</li>
<li>不是「整页脚本」模式 —— 多条语句互不干扰,想跑哪句把光标放哪;</li>
<li>Redis 连接共用同一编辑器,按<strong>行</strong>执行命令(见 <a href="redis">Redis 工作台</a>),不另开 CLI;</li>
<li>执行在会话上运行,连接断开后自动提示。</li>
</ul>
<h2 id="sec-2">多 Tab 与分栏</h2>
<ul>
<li>每个查询一个 Tab,并行执行互不阻塞;</li>
<li>编辑器 / 结果区可拖动分栏,长查询时编辑器不被结果挤占;</li>
<li>Tab 与布局持久化,重开应用保持原样。</li>
</ul>
<h2 id="sec-3">对象树联动</h2>
<ul>
<li>左侧对象树懒加载库 / 表 / 列;</li>
<li><strong>点表名 = 打开表工作台</strong>(前 100 行 + 条件过滤 + 结构分页),并回填 SELECT;</li>
<li>展开表看列名与类型,写 SQL 时可对照。</li>
</ul>
<h2 id="sec-4">查询历史</h2>
<ul>
<li>本地留存最近 200 条(不上传、不同步);</li>
<li><strong>相同语句自动去重置顶</strong> —— 历史即「最近用过的不同语句」,高频查询永远在第一条;</li>
<li>点击条目回填编辑器;悬停出现 <strong>▶</strong> 按钮,回填并直接重跑;</li>
<li>顶部过滤框支持按语句内容或连接名搜索;</li>
<li>条目显示时间、连接名、行数与耗时;失败的语句红色标出。</li>
</ul>
<h2 id="sec-5">危险 SQL 防护</h2>
<p>执行以下语句前会弹确认框:</p>
<table>
<thead>
<tr>
<th>类型</th>
<th>规则</th>
</tr>
</thead>
<tbody>
<tr>
<td>删除对象</td>
<td>DROP / TRUNCATE</td>
</tr>
<tr>
<td>全表更新</td>
<td>无 WHERE 的 UPDATE / DELETE</td>
</tr>
</tbody>
</table>
<blockquote>
<p><strong>注意</strong>:确认框只拦「明确危险」的模式,不替代事务与备份习惯;生产库操作请配合审批流程。</p>
</blockquote>
<h2 id="sec-6">快捷键</h2>
<table>
<thead>
<tr>
<th>快捷键</th>
<th>动作</th>
</tr>
</thead>
<tbody>
<tr>
<td>⌘/Ctrl + Enter</td>
<td>执行当前语句 / 选区</td>
</tr>
<tr>
<td>双击结果单元格</td>
<td>复制单元格内容</td>
</tr>
<tr>
<td>Esc</td>
<td>关闭弹层 / 取消确认</td>
</tr>
</tbody>
</table>
</article>
<div class="pn-nav">
<a class="pn prev" href="/docs/drivers"><span class="pn-label">← 上一页</span><span class="pn-title">驱动支持</span></a>
<a class="pn next" href="/docs/results"><span class="pn-label">下一页 →</span><span class="pn-title">结果与导出</span></a>
</div>
</main>
<aside class="toc">
<div class="toc-title">本页目录</div>
<nav class="toc-nav">
<a class="toc-l2" href="#sec-1">执行模型</a>
<a class="toc-l2" href="#sec-2">多 Tab 与分栏</a>
<a class="toc-l2" href="#sec-3">对象树联动</a>
<a class="toc-l2" href="#sec-4">查询历史</a>
<a class="toc-l2" href="#sec-5">危险 SQL 防护</a>
<a class="toc-l2" href="#sec-6">快捷键</a>
</nav>
</aside>
</div>
<script src="/docs/assets/docs.js" defer></script>
</body>
</html>