这个工具是什么
SQL 在线运行工具内置了一个编译成 WebAssembly 的 SQLite 引擎,可以像在本地数据库客户端里一样执行语句:建表、插入数据、写查询、看结果。结果按结果集分块展示成表格,增删改会提示影响行数。
数据库跑在你的浏览器里,第一次执行时下载引擎文件(约 1.5 MB)后走缓存,之后不再下载。
什么时候用它
- 练习 SQL:
GROUP BY、窗口函数、CASE WHEN写不熟时马上验证结果。 - 验证一段复杂查询的执行顺序与结果,比如多个
LEFT JOIN之后的空值处理。 - 给同事演示表结构与查询逻辑,不必让对方装数据库。
- 临时算数据:把几行数据插进去,用 SQL 做聚合比手写代码快。
- 确认 SQLite 与 MySQL 在某条语法上的差异,避免迁移时踩坑。
有什么限制
- 引擎是 SQLite,不是 MySQL:没有
SHOW TABLES、DESCRIBE,自增要用INTEGER PRIMARY KEY,日期函数与字符串函数也有差异。 - 没有存储过程、触发器语法与部分高级特性。
- 数据只存在当前页面会话里,刷新页面就没了;想从头开始点「重置数据库」。
- 单个结果集最多渲染 200 行,超出会提示截断。
- 窗口宽度不足时表格会横向滚动,长文本单元格做了截断,鼠标移上去能看到完整值。
常见问题
Q:我的数据会被上传吗? A:不会。SQLite 引擎在浏览器里运行,语句与数据都不出本机。
Q:可以分多次执行吗?比如先建表再插入? A:可以。数据库实例会保留在页面里,直到你点「重置数据库」。也可以一次粘贴多条语句,用分号分隔。
Q:为什么 DESCRIBE users 报错?
A:那是 MySQL 的语法。在 SQLite 里要查看表结构,可以查询 sqlite_master 表,或者直接用 SQLite 的命令行语法。
Q:结果里的 NULL 与 BLOB 怎么显示?
A:NULL 会显示成 NULL 字样,二进制字段显示成字节数,避免把二进制内容塞进页面。