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

Цикл върху таблицата (без използване на курсор) за свързване на данни

Можете да свържете без цикъла чрез нещо като по-долу; просто добавете вашата собствена заявка/съединения и т.н., ако е необходимо:

DECLARE @s varchar(max) = ''

SELECT @s = @s + '<br/><b>' + CONVERT(varchar(10), i.CreatedDate, 101) + '</b>' + ISNULL(i.Notes, '')
FROM @Items i

SELECT @s

(виетрябва уверете се, че няма NULL е вътре)

но не правете това!

Базата данни ене мястото за изграждане на html; не на последно място, отваря ви огромно към XSRF уязвимости. Бих направил това в слоя на потребителския интерфейс, използвайки по подходящ начин функциите за кодиране на html, предоставени от платформата, която използвате. Сляпото свързване на низове като html е почти равно на сляпото свързване на потребителски низове в TSQL (вместо използване на параметри); в най-добрия случай форматирането ще бъде преустановено (няма правилна обработка на < , и т.н.) – в най-лошия случай излагате потребителите си на пряк риск от атака.



  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 закръглява резултатите от разделянето на две цели числа?

  2. sql ос с динамични колони

  3. Резета на SQL Server и тяхната индикация за проблеми с производителността

  4. Не може да се свърже pyODBC с SQL Server 2008 Express R2

  5. SQL Server - Обединяване на големи таблици без заключване на данните