다음을 통해 공유


SELECT 문에서 와일드카드 문자 확장

데이터베이스 프로젝트에서 SELECT 문의 와일드카드 문자를 확장하여 Transact-SQL 코드의 디자인을 향상시킬 수 있습니다. 예를 들어 뷰 또는 저장 프로시저를 정의할 때 SELECT *를 사용하여 임의 개수의 레코드를 지정할 수 있습니다. 하지만 기본 테이블 또는 뷰의 열 수가 변경됨으로써 사용자가 정의한 뷰 또는 프로시저의 소비자에게 상당한 영향을 줄 수도 있습니다.

수동으로 와일드카드 문자를 검색하는 대신 정적 코드 분석을 사용하여 모든 인스턴스를 자동으로 찾을 수 있습니다. 자세한 내용은 데이터베이스 코드를 분석하여 코드 품질 향상을 참조하십시오. 모든 인스턴스를 찾은 후 데이터베이스 리팩터링을 사용하여 해당 인스턴스를 정규화된 열 목록으로 자동 대체할 수 있습니다. 리팩터링을 사용하는 경우 코드 블록 또는 데이터베이스 프로젝트 전체에서 데이터베이스 개체에 대한 업데이트 내용을 미리 보고 적용할 수 있습니다.

배포

리팩터링을 사용할 때는 프로덕션 데이터베이스 대신 데이터베이스 프로젝트만 업데이트합니다. 이 전략을 따르면 버전 제어와 팀 개발을 비롯하여 데이터베이스 프로젝트의 모든 이점을 얻을 수 있습니다. 변경 내용을 배포할 경우 리팩터링 로그 파일을 사용하여 데이터베이스 프로젝트의 변경 의도를 보존할 수 있습니다.

자세한 내용은 데이터베이스를 빌드하여 격리된 개발 환경에 배포를 참조하십시오.

참고

팀 환경에서는 변경 내용을 프로덕션 서버에 배포하기 전에 응용 프로그램 및 데이터베이스 단위 테스트를 실행해야 합니다. 자세한 내용은 팀 데이터베이스 개발 시작을 참조하십시오.

일반 작업

다음 표에서는 이 시나리오를 지원하는 일반적인 작업에 대한 설명과 해당 작업을 성공적으로 완료하는 방법에 대한 자세한 내용을 볼 수 있는 링크를 보여 줍니다.

Task

지원 항목

실습: 연습 과정을 따라 다른 형식의 리팩터링 외에도 데이터베이스 개체를 다른 스키마로 이동하는 방법을 익힐 수 있습니다.

연습: 데이터베이스 리팩터링 기술 적용

SELECT 문에서 와일드카드 문자 확장: 리팩터링을 사용하여 데이터베이스 프로젝트에 사용된 와일드카드 문자를 확장할 수 있습니다. 리팩터링 작업의 일부로 변경 내용을 적용하기 전에 미리 볼 수 있습니다.

방법: SELECT 문에서 와일드카드 문자 확장

리팩터링 작업 실행 취소: 리팩터링 작업을 되돌려야 하는 경우 Visual Studio의 현재 세션에서 해당 리팩터링 작업의 실행을 취소할 수 있습니다.

방법: 데이터베이스 리팩터링 작업 실행 취소

데이터베이스 리팩터링 변경 내용 배포: 데이터베이스 프로젝트를 리팩터링한 후에는 해당 변경 내용을 대상 데이터베이스에 배포해야 합니다. 일반적으로 변경 내용을 버전 제어에 체크 인하기 전에 격리된 개발 환경에 배포하여 테스트합니다.

방법: 데이터베이스 리팩터링 변경 내용 배포

문제 해결: 데이터베이스 리팩터링과 관련된 일반적인 문제를 해결하는 방법에 대해 알아보십시오.

리팩터링 문제 해결

관련 시나리오

데이터베이스 개체에 대한 모든 참조 이름 바꾸기

서버 또는 데이터베이스에 대한 참조 이름 바꾸기

데이터베이스 개체를 다른 스키마로 이동

데이터베이스 개체 이름 정규화

참고 항목

개념

데이터베이스 코드 및 데이터 리팩터링

데이터베이스 및 서버 프로젝트 개요