Search
 
SCRIPT & CODE EXAMPLE
 

SQL

cursor in sql server

DECLARE @TempTable AS TABLE (Id INT, [Name] VARCHAR(200));

INSERT INTO @TempTable
VALUES (1,'Test Name1'),
(2,'Test Name2'),
(3,'Test Name2')

DECLARE 
    @Id INT, 
    @Name VARCHAR(200);

DECLARE cursor_personInfo CURSOR
FOR SELECT 
        Id, 
        [Name]
    FROM 
       @TempTable;

OPEN cursor_personInfo;

FETCH NEXT FROM cursor_personInfo INTO 
    @Id, 
    @Name;

WHILE @@FETCH_STATUS = 0
    BEGIN
        PRINT CONVERT(VARCHAR(10),@Id) +' '+ @Name;

        FETCH NEXT FROM cursor_personInfo INTO 
            @Id, 
            @Name;
    END;

CLOSE cursor_personInfo;

DEALLOCATE cursor_personInfo;

/*
Declare – Declares the cursor with a name and the select statement which populates the result set
Open – Opens a cursor and populates the cursor by executing the select statement which is specified while declaring a cursor
Fetch – To retrieve a specific row from the cursor based on the fetch arguments like NEXT, FIRST, LAST, etc
Close – Closes the current result set of SQL Server cursor and can be reopened
Deallocate – Removes cursor reference and releases all the resources associated with a cursor
*/
Comment

MSSQL CURSOR

/* DECLARA EL CURSOR PARA EL id de product */
/* Y CARGA EN MEMORIA */
DECLARE ProdId CURSOR FOR SELECT id FROM product
/* DECLARA VARIABLE DONDE SE ALMACENARA */
DECLARE @identificador INT
/* UTILITZA EN MEMORIA*/
OPEN ProdId 
/* AGAFA EL PRIMER VALOR */
FETCH next FROM ProdInfo INTO @identificador
WHILE @@fetch_status = 0
BEGIN
    PRINT @identificador
    FETCH NEXT FROM ProdId INTO @identificador
END
/* TANCA UTILITZACIO */
CLOSE  ProdId 
/* ELIMINA DE MEMORIA */
DEALLOCATE ProdId
Comment

what is cursor in sql server with example

/*
Declare – Declares the cursor with a name and the select statement which populates the result set
Open – Opens a cursor and populates the cursor by executing the select statement which is specified while declaring a cursor
Fetch – To retrieve a specific row from the cursor based on the fetch arguments like NEXT, FIRST, LAST, etc
Close – Closes the current result set of SQL Server cursor and can be reopened
Deallocate – Removes cursor reference and releases all the resources associated with a cursor
*/

ECLARE @TempTable AS TABLE (Id INT, [Name] VARCHAR(200));

INSERT INTO @TempTable
VALUES (1,'Test Name1'),
(2,'Test Name2'),
(3,'Test Name2')

DECLARE 
    @Id INT, 
    @Name VARCHAR(200);

DECLARE cursor_personInfo CURSOR
FOR SELECT 
        Id, 
        [Name]
    FROM 
       @TempTable;

OPEN cursor_personInfo;

FETCH NEXT FROM cursor_personInfo INTO 
    @Id, 
    @Name;

WHILE @@FETCH_STATUS = 0
    BEGIN
        PRINT CONVERT(VARCHAR(10),@Id) +' '+ @Name;

        FETCH NEXT FROM cursor_personInfo INTO 
            @Id, 
            @Name;
    END;

CLOSE cursor_personInfo;

DEALLOCATE cursor_personInfo;
Comment

attributes of cursor in sql

/*
Declare – Declares the cursor with a name and the select statement which populates the result set
Open – Opens a cursor and populates the cursor by executing the select statement which is specified while declaring a cursor
Fetch – To retrieve a specific row from the cursor based on the fetch arguments like NEXT, FIRST, LAST, etc
Close – Closes the current result set of SQL Server cursor and can be reopened
Deallocate – Removes cursor reference and releases all the resources associated with a cursor
*/

DECLARE @TempTable AS TABLE (Id INT, [Name] VARCHAR(200));

INSERT INTO @TempTable
VALUES (1,'Test Name1'),
(2,'Test Name2'),
(3,'Test Name2')

DECLARE 
    @Id INT, 
    @Name VARCHAR(200);

DECLARE cursor_personInfo CURSOR
FOR SELECT 
        Id, 
        [Name]
    FROM 
       @TempTable;

OPEN cursor_personInfo;

FETCH NEXT FROM cursor_personInfo INTO 
    @Id, 
    @Name;

WHILE @@FETCH_STATUS = 0
    BEGIN
        PRINT CONVERT(VARCHAR(10),@Id) +' '+ @Name;

        FETCH NEXT FROM cursor_personInfo INTO 
            @Id, 
            @Name;
    END;

CLOSE cursor_personInfo;

DEALLOCATE cursor_personInfo;
Comment

SQL Cursor

DECLARE @CONTACTID INT 

--will need to declare at least one variable

--in this case, to store values when iterating through cursor

DECLARE SIMPLE_CURSOR CURSOR FOR 
SELECT ID
FROM CONTACT

OPEN SIMPLE_CURSOR

FETCH NEXT FROM SIMPLE_CURSOR  --Start the cursor
INTO @CONTACTID

WHILE @@FETCH_STATUS = 0  --while there is a loaded record, keep processing
BEGIN

--do whatever you need to do
print ('This is where the magic happens! 
Do whatever you need to do (update/insert/delete/stored proc/etc.')

FETCH NEXT FROM SIMPLE_CURSOR INTO @CONTACTID  --fetch next record
END

CLOSE SIMPLE_CURSOR   --close and deallocate
DEALLOCATE SIMPLE_CURSOR
Comment

PREVIOUS NEXT
Code Example
Sql :: oracle scan source ddl 
Sql :: how to select department from table 
Sql :: Sql Server join multiple column values and separate with comma 
Sql :: table information in sql server 
Sql :: insert postgres 
Sql :: sql query with replace function 
Sql :: duplicate column values sql 
Sql :: mysql disable foreign keys check 
Sql :: postgresql show owner of database 
Sql :: check mysql version phpmyadmin 
Sql :: mysql breakline on string 
Sql :: psql: error: FATAL: role "postgres" does not exist 
Sql :: sql primary key with multiple columns 
Sql :: sql server query list all databases 
Sql :: mysql substract count and distinct count 
Sql :: postgresql difference between two dates in days 
Sql :: oracle sql day of month from date 
Sql :: oracle list service names 
Sql :: clear screen command in psql 
Sql :: spark sql convert string to date 
Sql :: sql myisam vs innodb 
Sql :: postgres describe query 
Sql :: create mysql user 
Sql :: postgres power 
Sql :: turn off safe mode mysql 
Sql :: mysql pretty date format 
Sql :: sql random number between 1000 and 9999 
Sql :: Incorrect format parameter 
Sql :: mssql how to insert more than 1000 rows 
Sql :: sql insert inserted id 
ADD CONTENT
Topic
Content
Source link
Name
2+1 =