639 results found
-
Show synonym script on F12
I would like to see the Script Object as Alter (F12) feature to work with synonyms. However, I am aware that a synonym cannot be altered - instead I suggest to generate a script containing a DROP and a CREATE statement.
That way one could bring up the code of the referenced object by selecting the synonym, pressing F12, selecting the referenced object and pressing F12 again.
3 votes -
Remove/replace String Literals
When you code a SELECT statement as:
SELECT EffDt AS 'EffectiveDate'
SQL PROMPT advises that string literals as column aliases have been deprecated.
Have an option to convert string literals, similar to Remove Square Brackets. In this case, Convert Column Aliases would either remove the apostrophes, where appropriate, or add square brackets if required (e.g. the alias contained special characters, a space or reserved word).3 votes -
Writing text within quotes
When typing a string of text within a quote, do not replace my text with objects from the database.
3 votes -
Display intellisense for view columns from underlying base tables
When working with views, you lose the intellisense for columns. It would be nice if SQL Prompt could get the MS_Description value for the view column from the underlying base table for the view.
3 votes -
Ignore Begin statements with CTE immediately after
SQL Prompt's "Insert semicolon" function behaves weirdly when a CTE is a the start of a control loop. For example, if I have this code:
IF (1=1) BEGIN
WITH numbers AS (
SELECT 1 AS num
UNION SELECT 2
UNION SELECT 3
UNION SELECT 4
)
SELECT * FROM numbers
END;SQL Prompt will format it as
IF (1=1) BEGIN;
WITH numbers AS (
SELECT 1 AS num
UNION SELECT 2
UNION SELECT 3
UNION SELECT 4
)
SELECT * FROM numbers;
END;While the code runs, I think the semicolon after "BEGIN" makes very little sense. First, the beginning…
3 votes -
Add one additional Parenthesis style
My Teams would prefer this option:
xxxxxxxxxxxxxx (
xxxxxxx,
xxxxxxx )Opening parenthesis on the first line, and closing parenthesis on the last line.
Second and following lines indented one stop. This display seems to strip out the leading spaces.
3 votes -
Give option to completely disable update prompts
The updates for SQL Prompt have gotten out of hand - almost every day when logging into management studio it will prompt users to install a new update. And the notification steals focus from the main window, so it interrupts workflow. Not to mention redgate recently deployed an update that completely broke SQL Prompt in SSMS 18.1 for anyone that installed it. Users should have the ability to disable the notification completely if they so desire - "skip this version" does basically nothing when a new version is released a day later.
3 votes -
compare datatypes in stored procedure calls with defined variables
When I call a stored procedure, I want SQL Prompt's code analysis rules to be able to tell me if the variables I am passing to the stored procedure are OK.
For example, if I pass a bigint variable to a SP that has a tinyint input parameter, I want SQL prompt to flag that as a potential issue.
Similarly, if I am passing a string variable defined locally as nvarchar(150) to a SP that takes only nvarchar(100), it should be flagged as an issue (because I am passing a string that may not "fit" into the input parameter).
3 votes -
Is there a way to run your code analysis rules against an existing database?
To help our developers we - as dba's - perform validation against their procedures and database code. The library of rules that is incorporated in SQLPrompt could be a good rule of thumb for the basic stuff of reviewing, so that we can focus on other stuff when validating.
Is it possible to run the rules "engine" of SQLPrompt against an existing database without having to open the code manually?3 votes -
insert default default values should just use SQL Server defaults
When the option to insert a values clause with default values for an INSERT statement is in force, the default values used by SQL prompt ignore nulls. e..g if your table is CREATE TABLE foo (bar int NULL) and you let SQL Prompt build an INSERT with default values, it uses 0 as the default for column bar. This is wrong. The true default is NULL. It would be better if SQL Prompt just used a value clause like :
VALUES (DEFAULT)
and let SQL Server figure out the default. Worse yet, check out this table and the generated code:
…
3 votes -
Make parentheses rules customizable (where what applies) instead of a global setting
I have different wants for parentheses rules: Collapse short content or not, Having Parentheses on separat lines or leading the content, etc. It all depends on the context. But currently the setting is global.
I would like to be able to define one rule for, say, Primary Key definitions, and another rule for, say, the columns of a table.
I would want one thing for Control Flow sections, and another thing for Variables declarations.Today, I need to choose which one to be dominant (or stop using FORMAT SQL on the entire script, but just highlight the block where I…
3 votes -
Conditional Snippets - Either...logic in the snippet, or logic to decide which snippet to run
I have some snippets that I would like to be server specific. For example, we have two servers, each one has a sort of "support" database, but they do not have the same database name. But both databases have maintenance procs I like to use that do have the same name.
I'd like to have some way of saying "If I am on Server1, then run SnippetA, if I am on Server2 then run SnippetB"
OR
Allow something like this as part of the snippet:
$IF($SERVER$='Server1','String1','String2')$
3 votes -
auto complete set proc parameter defaults
when stored procedures have variables with defaults, your auto complete intellisense does not set the default. for example, if the parameter @a is an int = 5 in the creation of the proc, your auto complete says @a = 0 --int
3 votes -
Closing parenthesis and content indention on APPLY/EXISTS not indenting
It seems that the contents and closing parenthesis of EXISTS and APPLY clauses is not being indented as I would expect. So either i'm weird....or Format SQL is doing it wrong?
I'm using (
.....this parentheses style
)What it's doing:
SELECT *
FROM tblA a
WHERE 1 = 1
.....AND EXISTS (
.....SELECT *
.....FROM tblB b
.....WHERE b.Col1 = a.Col1
..........AND b.Col2 = a.Col2
..........AND b.Col3 = a.Col3
)What I expect:
SELECT *
FROM tblA a
WHERE 1 = 1
.....AND EXISTS (
..........SELECT *
..........FROM tblB b
..........WHERE b.Col1 = a.Col1
...............AND b.Col2 = a.Col2
...............AND…3 votes -
"drop user"
Highlight of today was when I ran
DROP USER MyUser
In the wrong (production) database.
Please add a warning to SQL Prompt, like your
"You're about to execute a DELETE statement without a WHERE clause"When you run a DROP USER or a DROP LOGIN statement on a production server. Not only does the user or login disappear, but also all rights granted to the user.
Maybe add the question “are you in the correct database?”
3 votes -
SQL Prompt Issue EI030 shows fals positive on views including TOP (n)
If a View looks like
SELECT TOP(n) FROM x ORDER BY x.clumn
SQL Prompt shows issue EI030 although the ORDER BY is vital for the TOP (n) clause3 votes -
Misc. UI Improvements
Themes, Dark mode mainly. Ability to add company logo when you log in via browser, like we can in reports.
3 votes -
Running "Find Invalid Objects" will crash SSMS if stored procedure is encrypted
If any stored procedures in the database are encrypted then "Find Invalid Objects" will get a null reference and prompt to restart SSMS.
3 votes -
Azure SQL Database Smart Rename support
Smart rename doesn't work on Azure SQL Database without creating a SQL login to use for the task. Be nice to support connections via Active Directory Password, or any of the other Azure AD auth options.
3 votes -
Align BETWEEN with comparison operators
It's currently possible to align operations in WHERE which is great, but BETWEEN is not aligned.
Example - currently:
WHEREModifiedDate BETWEEN DATEADD(MONTH, -6, GETDATE()) AND GETDATE()
AND City__________= 'Bothell'
OR LEFT(PostalCode, 2)= 'CB'
OR PostalCode_______= @prefix + @suffixExpected:
Example - currently:
WHEREModifiedDate_BETWEEN DATEADD(MONTH, -6, GETDATE()) AND GETDATE()
AND City________= 'Bothell'
OR LEFT(PostalCode, 2)= 'CB'
OR PostalCode_______= @prefix + @suffix3 votes
- Don't see your idea?