SQL Server

Microsoft SQL Server powers your entire data estate by supporting structured and unstructured data sources. It builds on previous versions of SQL Server, which have been industry leading for four years in a row and a leader in TPC-E. It scales to petabytes of data and allows customers to process big data through PolyBase using T-SQL over any data. SQL Server has also been the least vulnerable database during the last seven years. SQL Server brings data insights with business intelligence capabilities that provide analytics at a fraction of the cost on any device along with advanced analytics with support for R and Python.

More details about SQL Server are available in the SQL Server documentation.
If you have a technical issue, please open a post on the developer forums through Stack Overflow or MSDN.


  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. OVER clause enhancement request - DISTINCT clause for aggregate functions

    SQL Server 2005 introduced only partial support for the OVER clause. It is our strong belief that a more complete implementation of the OVER clause should be prioritized highly in consideration for future enhancements in SQL Server. A more complete implementation of the OVER clause can help in solving many common business problems with simpler, more intuitive, and faster solutions than available today and also substantially reduce the need for cursors.
    The following paper details the feature enhancement requests:
    http://tsql.solidq.com/OVERClauseandOrderedCalculations.doc
    The current feedback item addresses the OVER clause enhancement request - DISTINCT clause for aggregate functions,…

    43 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →

    Upvotes: 577

    <=-=Dec 13 2007 3:33PM=-=>

    Dear Itzik.

    Thanks a lot for your feedback… and the strong voting support for this feature. Indeed, as you know, I am very much in favor of extending our functionality in this area. For a variety of reasons we did not get this into SQL Server 2008, but we are certainly looking into it for a future release.

    Keep the votes and comments coming…
    Michael

    PS: My apologies for the late official reply…

    <=-=Mar 10 2009 4:37PM=-=>

    I am a big fan of the ranking functions and partition by clause. I used them extensively. It was a fantastic inclusion in 2005. However, I can’t tell the number of times I wished DISTINCT worked with the count function. I can’t believe it wasn’t included in 2008!! So I’ve added my vote to get this in ASAP.

    <=-=Sep 15 2009 7:08AM=-=>

    yes this would be…

  2. Parallelize Script Update Mode

    When moving SQL Server between Cumulative Updates, Script Update Mode runs against each database on the instance in series. This works fine on smaller instances, but with hundreds or even thousands of databases on an instance, this can add a lot of time (several hours) to the process of starting the instance for the first time with the new CU.

    Suggestion: Run Script Update Mode in parallel, up to the MAXDOP setting for the instance.

    41 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  3. Tempdb spill columns in sys.dm_exec_query_stats should account for batch mode operator spills

    I am testing against SQL Server 2017 RTM-CU4. As far as I can tell, only tempdb spills associated with row mode operators are tracked in the new columns for tempdb spills in sys.dmexecquerystats: lastspills, totalspills, maxspills, and min_spills. Spills for batch mode operators are not included. None of the documentation that I can find mentions this as a limitation, so I assume that this is a bug.

    Batch mode execution brings additional challenges around memory grant management and tempdb spills are common for the workloads that I look at. Adaptive query memory feedback is…

    41 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  1 comment  ·  Bugs  ·  Flag idea as inappropriate…  ·  Admin →
  4. Add SQL Code Formatter

    Please add a SQL code formatter to the query editor. It should work like the C# code formatter in Visual Studio except for SQL.

    41 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  5. Add RESTORE with NORECOVERY Back to Managed Instance

    Managed instance initially had RESTORE with NORECOVERY as an option, which would allow basic log shipping operations to be used instead of the complexity of configuration from a network and AAD perspective that the Data Migration Service requires. This would greatly reduce the friction for customers to move workloads into the Managed Instance service.

    38 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  6. SMO Enumerations slow with hundreds of databases

    SMO Enumeration is notoriously slow, especially if a SQL Server contains hundreds or thousands of databases. This is impacting our project and we have to get around it by creating new objects that are populated by T-SQL.

    I know this is a known issue. Can it be revisited?

    38 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  Bugs  ·  Flag idea as inappropriate…  ·  Admin →

    Hi, thanx for the feedback.
    As Ben points out, if you know which fields on the Database object you need, you can use Server.SetDefaultInitFields to make sure the collection is initialized with all those fields in the first query.

    Is there a particular scenario, using the latest SMO NuGet, where use of SetDefaultInitFields isn’t sufficient to speed up the query noticeably?
    If you have an Intellitrace or XEvents trace I could use for reference it’d be a great help.

  7. OPENROWSET T-SQL and MOLAP provider fail on complex DAX statements

    Running the OpenRowSet (SQL2016) against a SSAS 2017 on-premise or Azure SSAS will fail with error

    OLE DB provider "MSOLAP" for linked server "(null)" returned message "OLE DB error: OLE DB or ODBC error: An unexpected exception occurred.."

    T-SQL Statement:

    SELECT *
    FROM OpenRowset('MSOLAP','DATASOURCE=<Servername>;Initial Catalog=<cube>;User ID=<userid>;Password=<password>’,
    '<DAX STATEMENT>’)

    Running the DAX directly against SSAS (2017) returns the correct results, also the OpenRowSet command works fine in SSAS 2016 using the same DAX statement.

    Bug maybe due to the properties differences in the OpenRowSet implementation rather than the MOLAP provider (these are the XML properties included in the MDX query to…

    38 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  1 comment  ·  Bugs  ·  Flag idea as inappropriate…  ·  Admin →
  8. Enable SSRS parameter visibility to be set dynamically by expression

    SSRS columns can be set to display dynamically based on an expression, but SSRS parameters can only be set to Visible, Hidden, or Internal. My suggestion is to add the ability to control SSRS parameter visibility by expression as well.

    38 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    5 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  9. SQL Server Management studio for Windows on ARM (ARM64)

    The Surface Pro X received a lukewarm reception for reviewers, but has been consistently sold out and has quite the popularity. More ARM64 apps are needed to truly get this product going

    SSMS 18 and 17 cannot install on the Surface Pro X. The installer runs, but fails due to architecture. Going back to a build of SSMS from the past, SSMS 16, allows me to install it, but I'm missing the newer features.

    Could we please get a build of SSMS for ARM64? I can't imagine this would be a difficult task given Visual Studios ability to compile for…

    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    8 comments  ·  Other  ·  Flag idea as inappropriate…  ·  Admin →
  10. Add AAD Auth to Invoke-SqlCmd

    Please add Azure Active Directory authentication as an option for the Invoke-SqlCmd cmdlet to connect to an Azure SQL DB.

    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    11 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  11. Microsoft Command Line Utilities 15 for SQL Server fails to recognize pre-requisite ODBC 17

    SQLCMD docs state that Command Line Utilities 15 requires ODBC 17 (https://docs.microsoft.com/en-us/sql/tools/sqlcmd-utility?view=sql-server-2017). However, the actual Command Line Utilities 15 installer does not recognize a previously installed ODBC 17.

    Installing ODBC 13 will allow the Command Line Utilities 15 installer to complete successfully, but we end up with errors later presumably due to the Command Line Utilities 15 actually requiring OBDC 17 functionality. Installing both versions 13 and 17 seems to get around this, but obviously requires installation of both packages.

    Our server for testing this is a 64 bit Windows 2008 R2 Enterprise with SP1.

    Repro steps:
    -…

    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    17 comments  ·  Bugs  ·  Flag idea as inappropriate…  ·  Admin →
  12. SQL History SSMS

    In SSMS, keep track of all SQL run within SSMS and enable recall to run again. Store in local file/db. Do not store results but do store result stats. Such as Execution Time, Number of rows returned, date executed.

    Click to open in new window. Allow choice of connection to run against.

    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  13. SSIS package fails to start - application lock timeout in SSISDB.catalog.create_execution

    Details are described here:
    https://connect.microsoft.com/SQLServer/feedback/details/783291/ssis-package-fails-to-start-application-lock-timeout-in-ssisdb-catalog-create-execution

    In short: when a scheduled job tries to execute an SSIS package , there's a time-out in the communication between the job and the SSISDB database. The package is never executed. The original bug reports was closed as duplicate (no duplicate to be found though).

    I encountered this bug in SQL Server 2017, patched to the latest CU.

    Error message: Failed to execute IS server package because of error 0x80131904. Description: The operation failed because the execution timed out. Source: .Net SqlClient Data

    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  10 comments  ·  Bugs  ·  Flag idea as inappropriate…  ·  Admin →
  14. Window Functions (OVER Clause) - Reuse of Window Definitions with WINDOW Clause

    This item is related to: https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=254391, only the former suggestion wasn't standard whereas the current one is. Therefore the current is preferred.

    With several window functions that rely on the same window definition (or part of it), there's a lot of repetition of code. Standard SQL has a clause called WINDOW that allows naming a window definition or part of it, making it reusable.
    For example, instead of:

    SELECT empid, ordermonth, qty,
    SUM(qty) OVER ( PARTITION BY empid

                  ORDER BY ordermonth
    
    ROWS BETWEEN UNBOUNDED PRECEDING
    AND CURRENT ROW ) AS run_sum_qty,

    AVG(qty) OVER ( PARTITION BY empid

                  ORDER BY
    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →

    Upvotes: 173

    <=-=Sep 27 2010 2:23PM=-=>

    Hi Itzik,
    Thanks for your feedback on WINDOW clause. We will consider it for a future version of SQL Server.


    Umachandar, SQL Programmability Team

    <=-=Mar 21 2011 8:27PM=-=>

    I’m currently migrating an established application from another database platform to SQL Server. There’s a big, powerful chunk of the app missing due to the absence of the WINDOW clause functionality.

    I wouldn’t even want to think of how to implement this type of processing in SQLCLR, if that’s even possible.

    And if WINDOW is standard SQL, shouldn’t it be included in the Microsoft product? Competitors have it.

    <=-=Mar 2 2012 1:18PM=-=>

    Reuse of Window Definitions with WINDOW Clause
    This has been rolled up into our “Window Aggregates Enhancements” DCR for future consideration. Thank you for reporting it. All the information you provided has been captured for future reference.

    Thanks,
    Marc Friedman

    <=-=Nov…
  15. full justification in reporting services 2008 needed

    full justification is a basic need in a reliable reporting solution, advanced formatting options like in crystal reports would make a better product but justification is mandatory.

    37 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →

    Upvotes: 527

    <=-=Jan 27 2009 11:47AM=-=>

    Thank you for providing this feedback. We will consider adding this functionality in a future release of SQL Server. If there are other rich formatting requirement that you have, please do add details to this item for those additional features also.

    <=-=Dec 3 2009 11:21AM=-=>

    When is this justify text going to be out? You commented on 1/27/2009 and it’s nearly a year since this has been resolved. How come the Silverlight team and accommodate the top requests within a few month but SQL team cannot do the same?

    <=-=Mar 23 2010 12:37PM=-=>

    In many cases a reporting tool is the best option to provide formatted data to clients, shareholders, and other individuals where the appearance of the report is as important as the accuracy of the data. It has to look good, not just be correct.

    This is a serious deficiency, and while …

  16. Eager Index Spools Should Generate Missing Index Requests

    In query plans where an Eager Index Spool is directly after a data access operator, a missing index should be generated in the query plan, and/or missing index DMVs that describes the definition of the index needed to make the spool unnecessary.

    I would not expect this to happen when a Lazy Index Spool occurs above a subtree.

    36 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  17. Indicate "morally equivalent" forced plan where use_plan = true but is_forced = 0

    Currently, if you force a plan in query store (or if it is forced by automatic plan correction), the exact plan which is forced has isforced = 1 in sys.querystoreplan. In the plan properties, there is no useplan indication.

    After this plan is forced, often a "morally equivalent" plan will be compiled, which has a different queryplanid and different costs, but the same plan shape.

    This "morally equivalent plan" has isforced = 0 in sys.querystoreplan. In the execution plan properties, useplan = true.

    These "morally equivalent plans" are currently difficult…

    36 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  1 comment  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  18. Use gMSA accounts for everything

    Currently gMSA accounts can be used as Windows Service accounts for SQL Server. gMSA you never have to provide the password just the account name for approved devices. It would be nice if you could also use gMSA accounts for SQL Server Credentials for SSIS Jobs. For SSRS Data Connectors to a database. Essentially it would make things more secure than using a traditional "Service Account" that we put into a data source or credential and never update the password. The password is saved in some document somewhere. Same accounts being used for multiple purposes. By using a gMSA account…

    36 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  3 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  19. Trigger symbol on tables and views in object explorer

    In SSMS Object Explorer, you can find DML triggers by expanding the table (or view) and then expanding the Triggers node. That is fine.
    However, it would be great to have a visual indication, as a kind of warning, on the table or view symbol. This symbol should only appear on tables and views that have one or more active triggers
    My suggestion for the symbol would be a lightning bolt (similar to the icon used for the actual triggers). Preferably in red.

    35 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →
  20. Add PowerQuery Source connector to SSIS

    PowerQuery is a very powerful when extracting data in tabular format from web sources such as RSS feeds, APIs, scraping web pages etc.

    SSIS currently doesn't have anything approaching the simplicity and speed of development for extracting web data that PowerQuery exhibits.

    For example, recently I redeveloped a solution that sourced timesheet data from a cloud based application (workflowmax) in PowerQuery. The PowerQuery "ETL" took about 20 minutes to complete. The previous solution used SSIS packages that had days of work put into them, and the reliability and simplicity did not come close to that provided by using PowerQuery.

    35 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Suggestions  ·  Flag idea as inappropriate…  ·  Admin →

    Upvotes: 18

    <=-=Jan 12 2015 10:03PM=-=>

    Thank you for submitting this feedback. After carefully evaluating the bug, we accept the bug as a valid bug that we will plan to fix it. We do not have a specific release date at this point but we will work on this feature, and will try to release it in the next version of SQL Server.

    Thanks again for reporting the product issue and continued support in improving our product.

    thanks
    SSIS team

  • Don't see your idea?

SQL Server

Categories

Feedback and Knowledge Base