Use the @@ROWCOUNT function to return the number of inserted rows to the client application. If ANSI_PADDING is set to OFF, all trailing spaces are removed from data inserted into varchar and nvarchar columns, except in strings that contain only spaces. If ANSI_PADDING is set to ON, trailing spaces are inserted.For more information, see @@ROWCOUNT (Transact-SQL). Variable names can be used in UPDATE statements to show the old and new values affected, but this should be used only when the UPDATE statement affects a single record. The Microsoft SQL Server ODBC driver and OLE DB Provider for SQL Server automatically set ANSI_PADDING ON for each connection.If it is incorrect, then you can get wrong results.The reason I am mentioning this is because I have seen people write wrong where clauses and then wondering what went wrong because they specified the correct condition in the SET clause.
Use caution when specifying the FROM clause to provide the criteria for the update operation. For more information, see SET ANSI_PADDING (Transact-SQL).Table1', ' U') IS NOT NULL DROP TABLE dbo. Table2', ' U') IS NOT NULL DROP TABLE dbo. Table1 (Col A int NOT NULL, Col B decimal(10,3) NOT NULL); GO CREATE TABLE dbo. If the UPDATE statement could change more than one row while updating both the clustering key and one or more text, ntext, or image columns, the partial update to these columns is executed as a full replacement of the values.Table2 (Col A int PRIMARY KEY NOT NULL, Col B decimal(10,3) NOT NULL); GO INSERT INTO dbo. Important The ntext, text, and image data types will be removed in a future version of Microsoft SQL Server.There is no limit to the number of predicates that can be included in a search condition.For more information about predicates and search conditions, see Search Condition (Transact-SQL). Table2; USE Adventure Works2012; GO IF OBJECT_ID ('dbo.Note Any call to OPENDATASOURCE, OPENQUERY, or OPENROWSET in the FROM clause is evaluated separately and independently from any call to these functions used as the target of the update, even if identical arguments are supplied to the two calls.In particular, filter or join conditions applied on the result of one of those calls have no effect on the results of the other.The results of an UPDATE statement are undefined if the statement includes a FROM clause that is not specified in such a way that only one value is available for each column occurrence that is updated, that is if the UPDATE statement is not deterministic. Modifying a text, ntext, or image column with UPDATE initializes the column, assigns a valid text pointer to it, and allocates at least one data page, unless the column is being updated with NULL.For example, in the UPDATE statement in the following script, both rows in USE Adventure Works2012; GO IF OBJECT_ID ('dbo. To replace or modify large blocks of text, ntext, or image data, use WRITETEXT or UPDATETEXT instead of the UPDATE statement.Any characters not found in this code page are lost.DEFAULT Specifies that the default value defined for the column is to replace the existing value in the column.