- or
No existing idea results
- ~ No ideas found ~
702 results found
-
Implement all SQL Code Guard Rules in SQL Prompt Code Analysis
There are several rules that are only available in SQL Code Guard. And with SQL Code Guard no longer being maintained they should be implemented in SQL Prompt Code Analysis so that we can avoid having to use two products.
By our count here are the rules currently not implemented in Code Analysis:
DEP004 COMPUTE and COMPUTE BY clauses are deprecated
DEP005 FASTFIRSTROW table hint is deprecated
DEP008 PASSWORD/MEDIAPASSWORD options in BACKUP/RESTORE statement are deprecated
DEP010 DBCC CONCURRENCYVIOLATION is deprecated
DEP017 NON-ANSI join (= or =) is used
EI001 Incompatible variable type for procedure call
EI002 Incompatible literal type for procedure call
EI004 Extra parameter passed
EI006 Required parameter is not passed
EI007 Call parameter declared as output
EI008 Call parameter is not declared as output
EI009 Call has more parameters than required
EI010 OPEN of undefined cursor
EI014 Fetch from cursor with asterisk in select list, unable to check columns
EI017 Hardcoded current database name in procedure call
EI019 BEGIN TRANSACTION without ROLLBACK TRANSACTION
EI020 ROLLBACK TRANSACTION without BEGIN TRANSACTION
EI022 Fetch from unopened cursor
EI025 Executing stored procedure without getting result
EI026 Reference to function in other database
EI027 Reference to table or view in other database
CGTIME Timed out
CGUNP Unparsed SQL
MI004 Usage of sp_executesql (only in procedure/trigger)
PE009 No SET NOCOUNT ON before DML
SC001 Script should end with GO
SC002 Script should end with empty line
ST005 IF or ELSE without BEGIN…END block
ST009 Avoid using GOTO to improve readability
ST012 Consider using temporary table instead of table variable
ST014 Procedure name - pattern is not found in allowed patterns
ST015 Procedure name - pattern is found in disallowed patternsThere are several rules that are only available in SQL Code Guard. And with SQL Code Guard no longer being maintained they should be implemented in SQL Prompt Code Analysis so that we can avoid having to use two products.
By our count here are the rules currently not implemented in Code Analysis:
DEP004 COMPUTE and COMPUTE BY clauses are deprecated
DEP005 FASTFIRSTROW table hint is deprecated
DEP008 PASSWORD/MEDIAPASSWORD options in BACKUP/RESTORE statement are deprecated
DEP010 DBCC CONCURRENCYVIOLATION is deprecated
DEP017 NON-ANSI join (= or =) is used
EI001 Incompatible variable type for procedure call
EI002 Incompatible literal…5 votes -
Move the Options - Styles configuration to the individual Style definition page
Options - Styles pane contains, for example, "Apply column alias style" and its drop-down. This does not belong as a universal style setting, among others.
Please move it to the "Formatting Styles" configuration dialog.
This is because many practitioners either do not know about the "alias = column" capability in T-SQL, or don't like it, or it's contrary to company standards. The ability to use this form, which IMO is more brain-friendly, ought to be on the Formatting page as it is, in fact, a significant style element.
Thanks.
4 votes -
Ability to run Code Analysis against whole DB
With the deprecation of SQL Code Guard and it's replacement by Code Analysis there is one feature that we heavily used that is now no longer there, and that is the ability to run SQL Code Guard against the whole DB not just the query on the screen.
This allowed us to investigate new DBs that we'd inherited to see what sort of cleanup we might be looking at as well as giving us the ability to see if anything had snuck in to our existing DBs without going file by file.
I know there are other tools (like SQL Enlight) out there that are capable of doing this sort of thing, but I'd prefer to stick with RedGate.
With the deprecation of SQL Code Guard and it's replacement by Code Analysis there is one feature that we heavily used that is now no longer there, and that is the ability to run SQL Code Guard against the whole DB not just the query on the screen.
This allowed us to investigate new DBs that we'd inherited to see what sort of cleanup we might be looking at as well as giving us the ability to see if anything had snuck in to our existing DBs without going file by file.
I know there are other tools (like SQL…
16 votes -
Allow tab history to stay open
I want to be able to keep my tab history open. I am rebuilding a lost development database and using search a LOT, but after I search, find a tab I want to look at more deeply or execute, the window disappears and my search predicate and place in the list of matching tabs is lost, so I have to enter search predicate and scroll back down each time. This is a VERY useful tool, but it would be so much more useful if I could just keep it open.
16 votes -
Shift-F5: ignore other syntax errors
Current behaviour: let's say we're editing a multi-statement script. The cursor is in the middle of one of the statements. Some other statements in the script are broken (i.e. have invalid syntax) but the one under the cursor is perfectly valid. We hit Shift-F5, expecting the current statement to be executed. Instead, we get a syntax error on some other piece of the script half a mile down the screen.
Expected behavior: just run whatever is under the cursor and ignore all other parts of the script.
9 votes -
Copy a row selection and format into a into a 2 column output (column, value)
I would like to see the ability to copy a selected row or a number of cells in a grid, and add it to the clipboard as a transposed view of the record
with 2 columns (Column Name, Value) to allow results to be easily pasted into emails etcexample (simple result only the result values would need to be selected)
ID Name Activation Date
1234 John Smith 2018-01-14output on clipboard
ID 1234
Name John Smith
Activation Date 2018-01-043 votes -
Colon style parameters
Some programming languages (we use FireDac in Delphi) use colon notation to declare variables. Eg
select * from table where id = :id;
Testing such queries in SQL Prompt forces you to change the query before and after testing and that is error prone.
It would be nice if SQL Prompt could handle this type of parameters by instead of raising an error show a "Enter parameter value" input box.1 vote -
open source sql prompt's formatting module.
open source sql prompt's formatting module.
1 vote -
PE019
I'd like to vote for adding PE019 (Consider using EXISTS instead of IN) to the issues which can be auto-fixed.
It feels like the kind of re-write that would probably be simpler for a computer to do than a person.
5 votes -
Colors Option For Different Databases
Colors Option For Different Databases
2 votes -
Universal user settings ("run as different user" scenario)
I use two AD user accounts on a daily basis - a normal account and a "server admin" account (for server OS local admin and SQL instance sysadmin permissions). Hence, I run SSMS as either one or the other user. SQL Prompt settings (same goes for other Redgate tools) are saved per user, which makes it quite tedious, since after every setting change I have to export from that user and import to the other user.
Can you it an option for settings to be user independant (universal)?
5 votes -
Open Transaction Warning
Occasionally, developers working in SSMS accidentally leave transactions open. This causes big issues, of course. SSMS lets the user know if they try to close a tab with an uncommitted transaction, but only when the user tries to close the tab.
I would like a feature in SQL Prompt so that it lets the user know that they have an uncommitted transaction. SQL Prompt could prompt the user via a toast pop-up or coloring the connection tab or something
28 votes -
Include BEGIN TRANSACTION with "Execute Current Statement" (Shift-F5)
While using Shift-F5 to execute the current statement, any BEGIN TRANSACTIONS above your UPDATE are ignored, running it not in a transaction.
I shouldn't use Shift-F5 probably, but it's becoming a habit and could be very expensive when forgetting to highlight-execute.2 votes -
Custom Warnings in SQL promt
Custom Warnings.
For example, we have juniors who are just starting out in the SQL server world, Id like to have warning for Select statements that do not have Nolock hints. As the juniors will never be running any updates and deletes, they only have read access, but currently sometimes people forget the nolock hints and start causing locks and so on.5 votes -
Customizable colors for database objects in object explorer
It would be very useful to have the ability to define a color for certain database objects such as tables or columns. With that feature, objects could be marked individually and would be highlighted, for example columns with an index on them. Other users would be able to directly see this and take it into account in their query design for example. These settings should also be saved in the source control if desired.
7 votes -
Ignore Execution Warning on Comment
I don't want to globally turn off warnings for UPDATE or DELETE without WHERE clause, but would like an authorization text that disables the warning in a given script:
-- Currently Warns:
DELETE FROM dbo.Person-- Suggestion - comment would authorize the delete to not warn
/* Authorized */
DELETE FROM dbo.Person2 votes -
THEN expression on same line as keyword
Current formatting is:
CASE
WHEN 1 = 1 THEN
'Hello World'
ENDI need the option to put the expression on the same line:
CASE
WHEN 1 = 1 THEN 'Hello World'
END12 votes -
Comment in /* */
Is it possible to add a hard return after the /* comment */ block so code doesn't keep formatting after the comment
Currently:
/* comment */ UPDATE User
SET Modified = CAST('2018-12-20' AS datetime)
WHERE id = 255454Suggestion
/* comment */
UPDATE USER
SET Modified = CAST('2018-12-20' AS datetime)
WHERE id = 2554545 votes -
Add $Query$ to execute when inserting a snippet
Add $query$ to SQL prompt that allows you to define a query which get executed and the results pasted in place, optionally formatted as VALUES statement
I currently have a snippet that runs
SELECT '(' + CAST(r.RegionId AS VARCHAR(50)) + ',''' + r.RegionDescription + ''',0),'
FROM retail.Regions r
WHERE r.ActiveTo > GETDATE()
ORDER BY r.RegionDescriptionI then copy the output and use the $paste$ place holder in another snippet to paste in
DECLARE @regions TABLE (RegionId INT, RegionDescription VARCHAR(50), Active bit)
INSERT @regions (RegionId, RegionDescription, Active)
VALUES
--$PASTE$ goes here
(117,'Anglia',0),
(119,'Greater Manchester',0),
(145,'Hampshire',0),An improvement would be remove the last comma. A bit like copy from the results pane as an IN clause feature.
Add $query$ to SQL prompt that allows you to define a query which get executed and the results pasted in place, optionally formatted as VALUES statement
I currently have a snippet that runs
SELECT '(' + CAST(r.RegionId AS VARCHAR(50)) + ',''' + r.RegionDescription + ''',0),'
FROM retail.Regions r
WHERE r.ActiveTo > GETDATE()
ORDER BY r.RegionDescriptionI then copy the output and use the $paste$ place holder in another snippet to paste in
DECLARE @regions TABLE (RegionId INT, RegionDescription VARCHAR(50), Active bit)
INSERT @regions (RegionId, RegionDescription, Active)
VALUES
--$PASTE$ goes here
(117,'Anglia',0),
(119,'Greater Manchester',0),
(145,'Hampshire',0),An improvement would be remove the…
2 votes -
Change the activation model to allow easier portability
As a consultant I move around to many computers. I depend on this product, but it is often a chore to keep track of where it is active. It would be a real quality of life improvement if I could just login to the machine I'm using and type in my redgate creds to activate sql prompt and get on with it. So often I'm running into an activation error, followed by a support call to find where the product is in use, then deactivate it, the activate on the new machine repeat, repeat, repeat...
I understand you make money based on activations, but it would be nice if we could find a middle ground where you can still turn a profit, but I don't need to jump through a few hoops when I want to use the product someplace new.
As a consultant I move around to many computers. I depend on this product, but it is often a chore to keep track of where it is active. It would be a real quality of life improvement if I could just login to the machine I'm using and type in my redgate creds to activate sql prompt and get on with it. So often I'm running into an activation error, followed by a support call to find where the product is in use, then deactivate it, the activate on the new machine repeat, repeat, repeat...
I understand you make money…
1 vote
- Don't see your idea?