문제

나는 항상 SQL 컴파일러가 파손될 것이라고 생각했지만 분명히 Nesing은 거의 무한 할 수 있습니다. 이 코드는 즉시 쓰레기를 버릴까요? 아니면 이와 같은 것이 기능 할 수 있다는 희망이 있습니까?

이 쿼리는 실제로 나에게 속하지 않으므로 게시 할 수 없습니다 ...하지만 그냥 척하자 이 하나:

[SELECT /*+ NOPARALLEL bypass_recursive_check */ 
SP_ALIAS_190, 
((CASE SP_ALIAS_191
WHEN 1
THEN 'PROVIDER::ALL_PROV::'
WHEN 0]
도움이 되었습니까?

해결책

쿼리가 도구 (또는 코드에 의해)에 의해 생성되는 경우, 쿼리 생성 코드가 실제로 잘 쓰여지고 유지 관리 가능하다는 의미에서 유지하기가 비교적 간단 할 수 있습니다.

다른 팁

분명히, 당신은 SharePoint dal에서 나오는 SQL을 본 적이 없습니다.

나는 최근에 이와 비슷한 문제를 겪었고 몇 가지를 고려하여 결정을 내 렸습니다.

  • 재 작성 대 유지하는 데 얼마나 걸립니까?
  • 이것이 얼마나 중요한가요? 풀기 어려울 수있는 많은 논리가있을 수 있으며 "작동"이 즉각적인 재 작성에서 값을 초과한다는 사실의 가치가있을 수 있습니다.

물론, 최근에 만들어진 무언가가 왜 다시 작성되어야하는지 설명하는 위험에 관한 정치적 결정 관리가있었습니다.

결국 (나를 위해) 찾기 + 교체는 내 친구였습니다.

그것을 사용하여 refactor 와 함께 성명. 많은 의견을 추가하십시오.

관리 할 수있는 조각으로 나누면 훨씬 더 좋은 기회가 있습니다.

그것이 둥지의 할당이 포함되어 있다면 나는 아니오라고 말할 것입니다.

어떤 코드와 마찬가지로 어떤 코드와 마찬가지로, 어떤 언어와 마찬가지로, 어떤 언어가 더 효율적이거나 이해하기 쉽게 만들 수 있기 때문에 언어를 다시 작성해야합니다.

내 경험을 바탕으로 Origonal Auther는 실제로는 전혀 몰랐기 때문에 잘못 쓰여진 SQL을 4 ~ 5 배 크기의 크기 4 ~ 5 배 줄일 수있었습니다.

If you think that's bad, you should see Industrial Logic's sample video on code smells: Technical Debt. Definitely not autogenerated.

Is it possible to maintain a 43 page function, say, in C#? The answer is obvious ;). I just cannot imagine this. If I were you I would break it into smaller parts.

Two things:

  • Will only machines ever need to read this SQL?
  • Are you stuck with the underlying schema?

If you have a 43 page query and you answered yes to the first two questions, welcome to SharePoint development

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top