Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как мога да избегна използването на Cursor за прилагане на този псевдо код - SQL Server

Обикновено не можете да избегнете зацикляне, тъй като извиквате EXEC, което не може да се направи като базирана на SET операция; трябва да се прави един по един.

Ако просто искате да избегнете CURSOR като цяло, можете да го приложите с помощта на WHILE цикъл.

В противен случай друга опция е да използвате оператор SELECT + FOR XML, който изгражда операторите EXEC като един оператор NVARCHAR(MAX) в променлива, след което EXEC само този динамичен SQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да коригирате „Изразът EXECUTE не бе успешен, защото неговата клауза WITH RESULT SETS посочи 2 колона(и) за набор от резултати...“ Msg 11537 в SQL Server

  2. ODBC заявка на MS SQL Server, връщаща първите 255 знака само в PHP PDO (FreeTDS)

  3. Достъп до колони на таблица по индекс вместо име в съхранена процедура на SQL Server

  4. Задайте дата в SQL сървър

  5. Как да получите експортиран изход в реален CSV формат в SQL Server Management Studio?