복붙노트

[SQL] SQL Server 2005의 흥미로운 행동 "테이블에서 등 COLA, COLB을 선택"VS "테이블에서 선택 *"

SQL

SQL Server 2005의 흥미로운 행동 "테이블에서 등 COLA, COLB을 선택"VS "테이블에서 선택 *"

긴 게시물에 대한 사과,하지만 난 문제를 설명하는 몇 가지 코드를 게시 할 필요가 있었다.

질문에 영감을 * 선택 사용하지 않는 이유는 무엇입니까?

해결법

  1. ==============================

    1.뷰 정의에 SCHEMABINDING 함께보기 또는 사용을 해결하기 위해 sp_refreshview

    뷰 정의에 SCHEMABINDING 함께보기 또는 사용을 해결하기 위해 sp_refreshview

  2. ==============================

    2.이 꽤 표준 어떤 RDBMS뿐만 아니라 MSSQL에서 뷰에 대한 행동, 포함하는 뷰의 사용은 "선택 *로부터"신중하게 취급해야하는 이유입니다.

    이 꽤 표준 어떤 RDBMS뿐만 아니라 MSSQL에서 뷰에 대한 행동, 포함하는 뷰의 사용은 "선택 *로부터"신중하게 취급해야하는 이유입니다.

    는 SQL 엔진은 각 뷰 컴파일 - 기본적으로 사전 편찬 / 분석하는 단계이며, 그 결과를 저장합니다. 당신은 따라서 기본 테이블을 변경하는 경우 데이터베이스가 이러한 상황에서 확인하는 등의 뷰 태그의 몇 가지 방법을 가지고하지 않는 한 명시 적 재 컴파일은 항상 필요합니다.

    이 문제는 또한 너무 저장 프로 시저와 유사한 데이터베이스 개체에 적용 (것) 할 수 있습니다.

  3. from https://stackoverflow.com/questions/321468/select-from-table-vs-select-cola-colb-etc-from-table-interesting-behavi by cc-by-sa and MIT license