如何在MSSQL中批量打开多表并进入EDIT TOP 200 ROWS编辑模式?
实现SSMS批量打开表的编辑界面(类似会话保存)
下面是几种实用方法,帮你自动化打开指定表的EDIT TOP 200 ROWS可视化编辑界面:
方法1:用SSMS项目保存编辑会话
这是最接近Notepad++会话保存的方式,操作步骤简单直接:
- 打开SSMS,点击「文件」→「新建」→「项目」,选择「SQL Server脚本项目」,给项目命名(比如
DailyTableEdits)并指定保存路径 - 对每个需要编辑的表,右键选择EDIT TOP 200 ROWS,打开对应的可视化编辑窗口
- 在每个编辑窗口中,点击「文件」→「保存」,将当前查询保存到刚才创建的项目中(文件名可以设为
Edit_表名.sql,方便快速识别) - 全部保存后,关闭SSMS时会自动保存项目状态。下次打开SSMS时,直接点击「文件」→「打开」→「项目/解决方案」,选中你的项目文件,右键项目下的所有查询文件→「打开」,就能一次性打开所有表的编辑界面
方法2:自定义批量打开脚本
如果不想用项目,也可以创建一个包含多表查询的脚本,快速切换到编辑模式:
- 新建一个查询窗口,输入以下格式的语句(每个表对应一行):
SELECT TOP (200) * FROM [dbo].[Table1]; SELECT TOP (200) * FROM [dbo].[Table2]; SELECT TOP (200) * FROM [dbo].[Table3]; -- 继续添加其他需要编辑的表 - 执行这个脚本(按F5),会返回多个结果集
- 对每个结果集,点击结果集上方的「编辑前200行」按钮(铅笔图标),就能快速切换到可视化编辑界面
- 把这个脚本保存为
OpenEditTables.sql,下次直接打开执行即可
方法3:PowerShell自动化打开(进阶)
如果需要完全一键式打开,可以用PowerShell调用SSMS命令行:
- 编写PowerShell脚本,指定你的服务器、数据库和需要编辑的表:
$server = "你的服务器名" $db = "你的数据库名" $tables = @("Table1", "Table2", "Table3", "Table4", "Table5") foreach ($table in $tables) { $query = "SELECT TOP (200) * FROM [$db].[dbo].[$table]" Start-Process "ssms.exe" "-S $server -d $db -Q `"$query`"" } - 把脚本保存为
OpenEditTables.ps1,双击运行就能一次性打开所有表的编辑窗口
内容的提问来源于stack exchange,提问作者whatever61
相关产品推荐
相关产品推荐

