Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak tworzyć dynamiczne zapytania SQL w CURSOR

W kursorze musisz ponownie uruchomić swój plik xml , z deklaracją wyjścia xml.

DECLARE @id VARCHAR(25)

declare @loc varchar(25)
set @loc = '/MainItem/SubItem';

declare @query varchar(max) 

DECLARE myCursor CURSOR LOCAL FAST_FORWARD FOR
     SELECT * FROM @tempcolumnname

OPEN myCursor
FETCH NEXT FROM myCursor INTO @id

WHILE @@FETCH_STATUS = 0 
BEGIN
    set @query = 'DECLARE @hdoc INT;           
    EXEC sp_xml_preparedocument @hdoc OUTPUT,'''+ @info+'''
        Select Statement
        Insert Statement exec (@query)      

    FETCH NEXT FROM myCursor INTO @id       
END

CLOSE myCursor
DEALLOCATE myCursor


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server:Znajdź domyślną wartość kolumny z zapytaniem

  2. Dwa radykalnie różne zapytania dotyczące rekordów 4 mln są wykonywane w tym samym czasie - jedno wykorzystuje brute force

  3. Dlaczego SQL Server ciągle tworzy ograniczenie DF?

  4. SELECT ONE Row z wartością MAX() w kolumnie

  5. Obliczanie rozmiaru kopii zapasowej bazy danych