We have a table that has more than 20 million records and has more than 50 columns. I recently added a new column to it of type bit. After my change was done, some of the stored procedures that used this table were performing poorly. The DBA asked me to run the SP_Recompile 'tableName' command to update the table statistics. After I did that, the procedures were performing well. Could someone please explain what happens when a table is altered and a new column is added? How does it affect the performance?
Recompile an Altered Table
360 views Asked by joemac12 At
1
There are 1 answers
Related Questions in SQL
- SQL schema for a fill-in-the-blank exercise
- Hibernate: JOIN inheritance question - why the need for two left joins
- What's supposed to be the problem in this query?
- Compare fields in two tables
- How to change woocomerce or full wordpress currency with value from USD to AUD
- Dynamic query creation with Array like implementation
- SQL query to get student enrolled in this month in a course - Moodle
- SQL LAG() function returning 0 for every row despite available previous rows
- Convert C# DateTime.Ticks to Bigquery DateTime Format
- Use row values from another table to select them as columns and establish relations between them (pivot table)
- SQL: Generate combination table based on source and destination column from same table
- how to use system's environnement variables in sql script
- PHP fetchAll on JOIN
- Multitable joining in Sql
- How to display name starting from 'z' by using BETWEEN cmd only?
Related Questions in SQL-SERVER
- Dynamic query creation with Array like implementation
- 'pyodbc.Cursor' object has no attribute 'callproc', mssql with django
- Driver com.microsoft.sqlserver.jdbc.SQLServerDriver claims to not accept jdbcUrl, ${SPRING_DATASOURCE_URL}: GitHub Actions
- PHP Laravel SQLServer could not find driver
- Upsert huge amount of data by EFCore.BulkExtensions
- How to locate relevant tables or columns in a SQL Server database
- Cannot delete SQL datafile (.mdf) as its currently in use
- Writing query in CTE returning the wrong output
- Group By Sum and without Group by sum Amount is different
- plan_handle is always different for each query in SQL Server Cache
- Adding a different string to a table fails
- The specified data type in the EF modelBuilder doesn't correspond to the one that is created
- SQL71561: SqlComputedColumn: When column selected
- How to Solve Error Associated with Trusted Authority
- SQL Server Data Model and Insert Performance
Related Questions in T-SQL
- Dynamic query creation with Array like implementation
- How to locate relevant tables or columns in a SQL Server database
- Calling a REST API from SQL Server
- How do I use Poor Man's T-SQL Formatter in SSMS v20?
- sp_executesql Not Working with a Parameters search nvarchar
- Using MSXML2.ServerXMLHTTP with SQL Server status, statusText and responseHeader are all null
- tsql functions like REPLACE() failing in azure data factory pipeline connected to salesforce
- GROUP BY with multiple nested queries T-SQL
- How to get the superset of all XML paths from an XML column in a table
- Split Invoice Total into multiple Rows but Split always equals Total
- Conversion failed when converting date and/or time from character string while ordering by date or string
- SQL How to add a conditional to the aggregate function within a pivot table?
- Update the column which has sequence number dynamically
- SQL query to extract incremental data from a table in SQL Server
- Convert Date format in a table
Related Questions in SSIS
- Skip null rows in SSIS of excel file
- SSIS error: delimiter for column "X" is not found - started happening after migrating package to newer SSIS
- Copy or Move Data from one Database to other Database and have one more destination option
- Odata source inside ForEach loop
- Extracting data from SAP ERP into SQL Server
- Get the URL from C# script used in ssis
- Write rows on destination even when an error occurs?
- Visual Studio 2022 Task script editor : Impossible to modify
- SSIS package writes empty CSV file
- SSIS flat file destination generating more digits than in the database
- SSIS remove $ format from csv
- Handling inconsistent record delimeters in ssis
- SSIS Data Conversion Error: Overflow Issue in Automated Job Execution
- SSIS to Snowflake connection
- SSIS - OData Connection to Sharepoint List Failed Validation Error 0xC020801F
Related Questions in MSBI
- How to use Project Level connection Managers in SSIS Script Task
- How to pass a variable value in SSIS to Python Script : Execute Process task
- Multiple CSV files to Multiple tables with different schema in SSIS
- How can I fix the error "404 requested resource is not found" when clicking the report accessible report link?
- Could not load file or assembly 'Newtonsoft.Json, Version=6.0.0.0 in SSIS 2016
- SSIS - Retrieve variable value from controle flow (no using script task) to data flow
- Why SSRS PDF link is not clicking
- Issue with ssrs parameter
- Script task Issue
- Dynamic creation of SSRS Data driven subscriptions
- Need to search the recently modified file in SSIS and rename it
- I can't see my variable name in property expressions editor in foreach loop container
- Creating flat file connection manager in ssis
- How does a non-clustered index with SQL Variant as one of the columns work?
- Recompile an Altered Table
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
This is actually explained in the documentation.
Firstly,
sys.sp_recompile N'{Table Name}';doesn't update the statistics of the table. From the documentation:Recompiling means that the next time the query plan for the query is regenerated; the old cached one is not used. Why you would want to do this, is also discussed in the documentation:
When you altered the table, you can have affects the statistics. Also, however, so do just day to day usage where rows and inserted, updated, and deleted. It appears that this was the case here, and the plan the procedures were using weren't the most efficient now. Forcing them to recompile means that they can use the new statistics and a new (hopefully more efficient) plan.