Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Devuelve el número de filas afectadas por la última instrucción. Si el número de filas es mayor de 2 mil millones, use ROWCOUNT_BIG.
Convenciones de sintaxis de Transact-SQL
Sintaxis
@@ROWCOUNT
Tipos de valor devueltos
int
Notas
Las instrucciones Transact-SQL pueden establecer el valor de @@ROWCOUNT de las siguientes maneras:
- Establecer @@ROWCOUNT en el número de filas afectadas o leídas. Las filas pueden o no enviarse al cliente.
- Conservar @@ROWCOUNT de la anterior ejecución de una instrucción.
- Restablecer @@ROWCOUNT en 0 y no devolver el valor al cliente.
Las instrucciones que realizan una asignación simple siempre establecen el valor de @@ROWCOUNT en 1. No se envía ninguna fila al cliente. Ejemplos de estas instrucciones son: SET @local_variable, RETURN, READTEXT y Select sin instrucciones de consulta como SELECT GETDATE() o SELECT 'Texto genérico'.
Las instrucciones que realizan una asignación en una consulta o utilizan RETURN en una consulta establecen el valor de @@ROWCOUNT en el número de filas afectadas o leídas por la consulta, por ejemplo: SELECT @local_variable = c1 FROM t1.
Las instrucciones de lenguaje de manipulación de datos (DML) establecen el valor de @@ROWCOUNT en el número de filas afectadas por la consulta y devuelven ese valor al cliente. Las instrucciones DML pueden no enviar ninguna fila al cliente.
DECLARE CURSOR y FETCH establecen el valor de @@ROWCOUNT en 1.
Las instrucciones EXECUTE conservan el valor anterior de @@ROWCOUNT.
Las instrucciones como USE, SET <opción>, DEALLOCATE CURSOR, CLOSE CURSOR, BEGIN TRANSACTION o COMMIT TRANSACTION restablecen el valor de ROWCOUNT en 0.
Ejemplos
En el siguiente ejemplo se ejecuta una instrucción UPDATE y se utiliza @@ROWCOUNT para detectar si ha cambiado alguna fila.
USE AdventureWorks;
GO
UPDATE HumanResources.Employee
SET Title = N'Executive'
WHERE NationalIDNumber = 123456789
IF @@ROWCOUNT = 0
PRINT 'Warning: No rows were updated';
GO
Vea también
Referencia
Funciones del sistema (Transact-SQL)
SET ROWCOUNT (Transact-SQL)