2014-02-06 5 views
0

한 데이터베이스에서 다른 데이터베이스로 데이터를 이동하는 CLR 저장 프로 시저를 작성했습니다. 연결된 서버 또는 openrowset보다 원격 서버에 더 잘 연결할 수있는 .NET 프레임 워크의 기능을 좋아하기 때문에 CLR 저장 프로 시저를 사용했지만 이제는 대부분 내 클래스가 대부분 SQL 문자열로 포함되어 있습니다. CLR 저장 프로 시저를 사용하여 로컬 SQL Server로 데이터를 검색 한 다음 실제 삽입 및 업데이트를 위해 일반 SQL 저장 프로 시저를 사용하는 것을 고려했습니다.CLR 저장 프로 시저 v 일반 SQL 저장 프로 시저

프로 시저 또는 성능의 사전 컴파일에 대해 걱정할 필요가 없습니다. CLR 프로 시저를 사용하면 위에서 아래로 읽은 모든 논리를 한 곳에서 볼 수 있습니다.

CLR 대신 TSQL 솔루션으로 이동할 것을 고려해야하는 이유가 있습니까?

감사합니다.

답변

1

일반 저장 프로 시저를 사용해야하는 이유는 여러 가지가 있습니다. 내가 아는 것들에 대한 개요를 알려 드리겠습니다 :

  • 성능.
  • 메모리 문제. SQL Server는 자체 최대 메모리 설정으로 만 작동합니다. CLR은이 범위에서 벗어납니다. 이로 인해이 서버에서 실행중인 다른 응용 프로그램 (및 OS)이 손상 될 수 있습니다.
  • 업데이트 가능성. 간단한 스크립트로 저장 프로 시저를 업데이트 할 수 있습니다. CLR은 업데이트하기가 더 복잡합니다.
  • 보안. CLR은 종종 일반 t-sql보다 더 많은 보안 설정을 요구합니다. 그러한 특히, 복잡한 계산을 수행하는 파일에서 읽거나 MSMQ에
  • 을 메시지를 삭제 한, OS와

    1. 상호 작용 : 당신은 단지에 대한 CLR을 사용하려면 일반적으로

계산을 수행하기 위해 이미 .NET 언어로 작성된 코드가 있습니다.