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

защо една процедура на SQLCLR ще работи по-бавно от страната на клиента със същия код

Типът код, който пишете, е силно податлив на SQL инжектиране. Вместо да обработвате четеца като вас, можете просто да използвате свойството RecordsAffected, за да намерите броя на редовете в четеца.

РЕДАКТИРАНЕ:

След като направихте известно проучване, разликата, която виждате, е разлика по дизайн между контекстната връзка и обикновената връзка. Питър Дебета публикува блог за това и пише:

„Контекстната връзка е написана така, че извлича само ред в даден момент, така че за всеки от 20-те милиона някои странни реда, кодът искаше всеки ред поотделно. Използвайки неконтекстна връзка обаче, той изисква 8K на стойност от редове наведнъж."

http://sqlblog.com /blogs/peter_debetta/archive/2006/07/21/context-connection-is-slow.aspx



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какъв е еквивалентният тип данни на Numeric на SQL Server в C#

  2. Метаданни на SQL Server в intellisense?

  3. Преобразуване на ‘time’ в ‘datetimeoffset’ в SQL Server (T-SQL примери)

  4. Полезни ли са функциите за пространствени данни на SQL Server 2008 за заявки за картографиране?

  5. Странирай със Sequelize.js в SQL 2008 (който не поддържа FETCH)