Skip to content

SQL Prompt

Welcome to the SQL Prompt feature suggestion list. Find out more information about SQL Prompt at http://www.red-gate.com/products/sql-development/sql-prompt/.

If you have any questions, need help or have found a bug in SQL Prompt, please visit the forums or our support portal.

SQL Prompt

Categories

  • or

9 results found

  1. We use the WITH (TABLOCK) hint extensively for loading temp tables - see https://www.sqlshack.com/use-parallel-insert-sql-server-2016-improve-query-performance/

    PE006 is far too picky - it yells at every such statement in our high-volume hybrid solution. It would be good to "silence" this kind of rule-breakage so we can see any REAL violations on persisted tables.

    Please augment to utterly ignore temp tables.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Code Analysis  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. 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

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. Hi,

    it would be extremely useful to allow the user to disable a code analysis rule for specific cases and not just on a global scope.

    E.g.
    cast(cast(0 as binary) pops up the issue BP008 (CAST/CONVERT to var types without length) which my be correct for certain cases but not always.

    It would be very hand if I could tell the analyzer to not give any warning for this single line, perhaps by adding a pseudo comment like --##BP008 or similar.

    This comment would temporarily disable the warning for this single line/case but not for the rest of a script.

    18 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. Following the suggestions of rule PE019 (Consider using EXISTS instead of IN) leads to performance issues, by creating correlated subqueries. Even the documentation of the rule admits that there is no longer a performance benefit of doing what is suggested. Please remove the rule or allow the rule to be disabled across a team. At the moment, the disabling of rules is done per developer, and a developer who did not know to switch off this rule, followed the advice, creating a performance problem.

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. When collapsing CASE expressions shorter then XXX, the END has no space if there is a preceding parenthesis.

    Example1 = CASE t1.Col004 WHEN 1 THEN t1.Col006 END,
    Example1 = CASE t1.Col004 WHEN 1 THEN TRY_CONVERT(int, t1.Col006)END

    4 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Format SQL  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. 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…

    5 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. I would like an efficient way to refactor this kind of statement...

    SELECT ID, Name, Job INTO #Employee FROM Employees

    into something like this-

    CREATE TABLE #Employee (ID int, Name varchar(max), Job varchar(max))
    INSERT INTO #Employee
    SELECT ID, Name, Job
    FROM Employees

    The PE003 rule keeps triggering on these statements but it takes an annoyingly long time to write out the column definitions by hand for longer tables.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Database-specific snippets.

    We have 80 or so databases scattered across 200+ instances and many tables have similar names or identical names with differing schemas: compare person.personpe, dbo.person & finance.personpe. This particular is extreme and there are more examples but the principle applies.

    I would love to be able to define pe as a snippet at a database level so that I can keep my snippet names short and so that I don't have to rename them manually when I am in SSMS with a lesser used database.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Format SQL  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. When collapsing CASE expressions shorter then XXX, the END has no space if there is a preceding parenthesis.

    Example1 = CASE t1.Col004 WHEN 1 THEN t1.Col006 END,
    Example1 = CASE t1.Col004 WHEN 1 THEN TRY_CONVERT(int, t1.Col006)END,

    0 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Format SQL  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  • Don't see your idea?