wooly905.prs
8.2.0.13
dotnet tool install --global wooly905.prs --version 8.2.0.13
dotnet new tool-manifest
dotnet tool install --local wooly905.prs --version 8.2.0.13
#tool dotnet:?package=wooly905.prs&version=8.2.0.13
nuke :add-package wooly905.prs --version 8.2.0.13
PRS
A simple command-line tool to query database schema in Microsoft SQL Server
Introduction:
This is a tool to help you quickly search the names of objects (columns, tables, stored procedure) in Microsoft SQL server. This tool has been released as a dotnet global tool. You can install it by the following dotnet command,
dotnet tool install wooly905.prs -g
The followings are the examples to show you how to use this tool.
The following screenshots show you the tables and columns created by Hangfire.
How to use this tool:
Usage: prs [options] [argument]
Options:
scs Show MS SQL Server connection string.
wcs Write MS SQL Server connection string.
dds Dump db schema to local machine.
ls List saved schemas and show active one.
use Switch active schema. prs use [schema name]
rm Remove a schema. prs rm [schema name]
ft Find table(s) (view).
fc Find column(s).
ftc Find column(s) in some table (view).
fsp Find stored procedure.
sc Show all columns in a table.
erd Show ERD around a table. prs erd [table name]
Setup connection string (prs wcs)
This is the first thing to do for this tool. Make sure your connection string is good with correct host URL, database name, username, and password.
Show connection string (prs scs)
Dump schema to local machine (prs dds [schema name])
This command dumps the database schema into your local user folder. Schema name is required and determines the saved file name.
Examples:
prs dds database1
Notes:
- Schemas are saved under your user profile: %APPDATA%.prs\schemas
- The saved file is <schema name>.schema.txt and becomes the active schema after dump.
- All query commands use the active schema.
Find table (prs ft) - table name can be partial
When running any query command (ft, fc, ftc, fsp, sc), PRS prints the active schema in use, e.g., “Using schema: database1.schema.txt”.
<img width="482" height="185" alt="image" src="https://github.com/user-attachments/assets/fc952485-121c-4bc7-a539-a87894315d74" />
Find column (prs fc) - find matched column in all tables
<img width="2206" height="191" alt="image" src="https://github.com/user-attachments/assets/9c410a77-3444-4156-b745-6cc2cffd5ad0" />
Find column in table(s) (prs ftc)
<img width="1702" height="173" alt="image" src="https://github.com/user-attachments/assets/68c28620-32ef-4d6a-98f1-3d3cc39dd0f3" />
Display all columns of a table (shows FK info)
<img width="1944" height="322" alt="image" src="https://github.com/user-attachments/assets/5883af1c-943e-4e0d-99a8-d5eafd9a275c" />
Find stored procedure
prs fsp [full or partial name of a storec procedure to find]
Manage multiple schemas
PRS supports storing multiple schemas locally and switching between them.
- List saved schemas and show the active one
prs ls
- Switch active schema (by schema name, not file name)
prs use [schema name]
- Remove a saved schema (by schema name)
prs rm [schema name]
Notes:
- Query commands always read from the active schema.
- The active schema pointer is stored under %APPDATA%.prs\active.txt.
Display ERD around a table
prs erd [table name]
- Shows you the tables which have relations to the table that you enter.
<img width="716" height="812" alt="image" src="https://github.com/user-attachments/assets/f7e1c94f-8b43-4dde-8a65-b3ac61d96bfb" />
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.