Azure SQL Database에 연결 추가

Visual Studio를 사용하면 연결된 서비스 기능을 사용하여 Azure SQL Database에 다음을 연결할 수 있습니다.

  • .NET Framework 콘솔 앱
  • ASP.NET MVC(Model-View-Controller)(.NET Framework)
  • ASP.NET Core
  • .NET Core(콘솔 앱, WPF, Windows Forms, 클래스 라이브러리 포함)
  • .NET Core 작업자 역할
  • Azure Functions
  • 유니버설 Windows 플랫폼 앱
  • Xamarin
  • Cordova

연결된 서비스 기능은 필요한 모든 참조와 연결 코드를 프로젝트에 추가하고 구성 파일을 적절하게 수정합니다.

참고

이 토픽은 Windows용 Visual Studio에만 적용됩니다. Mac용 Visual Studio는 Mac용 Visual Studio의 연결된 서비스를 참조하세요.

사전 요구 사항

연결된 서비스를 사용하여 Azure SQL Database에 연결

  1. Visual Studio에서 새 프로젝트를 엽니다.

  2. 솔루션 탐색기에서 연결된 서비스 노드를 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 추가를 선택하여 사용 가능한 서비스 메뉴를 엽니다.

    Screenshot showing Connected Services context menu options.

  3. SQL Server 데이터베이스를 선택합니다 . 디펜던시 연결 페이지가 나타납니다. 몇 가지 옵션이 표시됩니다.

    • Visual Studio와 함께 설치되는 기본 제공 SQL 데이터베이스 제품인 SQL Server Express LocalDB
    • 컴퓨터의 로컬 컨테이너에 있는 SQL Server 데이터베이스
    • 로컬 네트워크의 온프레미스 SQL 서버인 SQL Server 데이터베이스
    • Azure SQL Database, Azure 서비스로 실행되는 SQL 데이터베이스의 경우

    로컬 데이터베이스로 시작하면 비용을 절감하고 초기 개발을 간소화할 수 있습니다. 나중에 이 단계를 반복하고 다른 옵션을 선택하여 Azure의 라이브 서비스로 마이그레이션할 수 있습니다. 로컬에서 데이터베이스를 만들어 Azure에서 다시 만들려는 경우, 그 시점에 데이터베이스를 Azure로 마이그레이션할 수 있습니다.

    Screenshot showing SQL Database choices.

    나중에 이 단계를 반복하고 다른 옵션을 선택하여 라이브 서비스로 마이그레이션할 수 있습니다.Azure 서비스에 연결하려면 다음 단계를 계속 진행하거나 아직 로그인하지 않은 경우 계속하기 전에 Azure 계정에 로그인하세요. Azure 계정이 없으면 평가판에 등록할 수 있습니다.

  4. Azure SQL Database 구성 화면에서 기존 Azure SQL Database를 선택하고 다음을 선택합니다.

    새 구성 요소를 만들어야 하는 경우 다음 단계로 이동합니다. 그러지 않은 경우 7단계로 건너뜁니다.

    Screenshot showing

  5. Azure SQL Database를 만들려면 다음을 수행합니다.

    1. 녹색 더하기 기호로 새로 만들기를 선택합니다.

    2. Azure SQL Database: 새로 만들기 화면에 입력하고 만들기를 선택합니다.

      Screenshot showing

    3. Azure SQL Database 구성 화면이 표시되면 새 데이터베이스가 목록에 표시됩니다. 목록에서 새 데이터베이스를 선택하고 다음을 선택합니다.

  6. 연결 문자열 이름을 입력하거나 기본값을 선택하고 연결 문자열을 로컬 비밀 파일에 저장할지, 아니면 Azure Key Vault에 저장할지 선택합니다.

    Screenshot showing

  7. 변경 내용 요약 화면에는 프로세스를 완료할 경우 프로젝트에 적용되는 모든 수정 사항이 표시됩니다. 변경 내용이 맞으면 마침을 선택합니다.

    Screenshot showing

    방화벽 규칙을 설정하라는 메시지가 표시되면 를 선택합니다.

    Screenshot showing firewall rules.

  8. 솔루션 탐색기에서 연결된 서비스 노드를 두 번 클릭하여 연결된 서비스 탭을 엽니다. 연결은 서비스 종속성 섹션 아래에 나타납니다:

    Screenshot showing

    추가한 종속성 옆의 점 3개를 클릭하면 연결과 같은 다양한 옵션이 표시되어 마법사를 다시 열고 연결을 변경할 수 있습니다. 창 오른쪽 상단에 있는 점 3개를 클릭하면 로컬 종속성을 시작하고 설정을 변경하는 등의 옵션을 볼 수도 있습니다.

연결 문자열에 액세스

개발 중인 앱의 비밀을 안전하게 저장하기를 따라 비밀을 안전하게 저장하는 방법을 알아보세요. 특히, 시크릿 저장소에서 연결 문자열을 읽으려면 설정 API를 통해 시크릿 읽기와 같이 코드를 추가하면 됩니다. ASP.NET Core의 종속성 주입

Entity Framework 마이그레이션

초기 개발 중에 로컬 데이터 저장소로 작업하는 것이 편리할 수 있지만 Entity Framework Core를 사용하면 클라우드로 이동할 준비가 되었을 때 Visual Studio의 Entity Framework 마이그레이션 지원을 사용하여 데이터베이스를 이동하거나 변경 내용을 원격 데이터 저장소와 병합할 수 있습니다. 마이그레이션 개요를 참조하세요.

연결된 서비스 탭에서 스크린샷과 같이 세 개의 점을 클릭하여 마이그레이션 명령을 찾을 수 있습니다.

Screenshot showing migration commands.

새 마이그레이션을 만들거나, 직접 적용하거나, 마이그레이션을 적용하는 SQL 스크립트를 생성하는 명령을 사용할 수 있습니다.

마이그레이션 추가

데이터 모델 변경이 도입되면 Entity Framework Core 도구를 사용하여 데이터베이스 스키마를 동기화 상태로 유지하는 데 필요한 업데이트를 코드에 설명하는 해당 마이그레이션을 추가할 수 있습니다. Entity Framework Core는 현재 모델을 이전 모델의 스냅샷과 비교하여 차이점을 확인하고 마이그레이션 원본 파일을 생성합니다. 파일은 일반적으로 Migrations라는 폴더에 있는 프로젝트에 추가되며 다른 소스 파일과 마찬가지로 프로젝트의 소스 제어에서 추적할 수 있습니다.

이 옵션을 선택하면 마이그레이션하려는 데이터베이스 스키마를 나타내는 컨텍스트 클래스 이름을 입력하라는 메시지가 표시됩니다.

Screenshot showing adding an Entity Framework migration.

데이터베이스 업데이트

마이그레이션을 만든 후에는 데이터베이스에 적용할 수 있습니다. Entity Framework는 마이그레이션 코드에 지정된 변경 내용으로 데이터베이스와 스키마를 업데이트합니다. 이 옵션을 선택하면 마이그레이션하려는 데이터베이스 스키마를 나타내는 컨텍스트 클래스 이름을 입력하라는 메시지가 표시됩니다.

SQL 스크립트 생성

프로덕션 데이터베이스에 마이그레이션을 배포하는 권장 방법은 SQL 스크립트를 생성하는 것입니다. 이 전략의 장점은 다음과 같습니다.

  • 정확성을 위해 SQL 스크립트를 검토할 수 있습니다. 이는 프로덕션 데이터베이스에 스키마 변경 내용을 적용하는 것이 데이터 손실을 수반할 수 있는 잠재적으로 위험한 작업이므로 중요합니다.
  • 경우에 따라 프로덕션 데이터베이스의 특정 요구 사항에 맞게 스크립트를 조정할 수 있습니다.
  • SQL 스크립트는 배포 기술과 함께 사용할 수 있으며 CI 프로세스의 일부로 생성될 수도 있습니다.
  • SQL 스크립트는 DBA에 제공할 수 있으며 별도로 관리 및 보관할 수 있습니다.

이 옵션을 사용하면 데이터베이스 컨텍스트 클래스와 스크립트 파일의 위치를 묻는 메시지가 표시됩니다.

Screenshot showing the Generate SQL script option.

SQL Server 개체 탐색기에서 열기

편의를 위해 이 명령을 사용하면 SQL Server 개체 탐색기로 이동하여 테이블 및 기타 데이터베이스 엔터티를 보고 데이터로 직접 작업할 수 있습니다. 개체 탐색기를 참조하세요.

Screenshot showing SQL Server Object Explorer.

다음 단계

Azure SQL Database용 빠른 시작을 계속할 수 있지만 처음부터 시작하는 대신 초기 연결이 설정된 후에 시작할 수 있습니다. Entity Framework를 사용하는 경우 코드 추가에서 시작하여 Azure SQL Database에 연결할 수 있습니다. 데이터 클래스를 사용 SqlClient 하거나 ADO.NET 경우 코드 추가에서 시작하여 Azure SQL Database에 연결할 수 있습니다.

연결 문자열을 가져오는 다른 방법을 사용하는 빠른 시작에 사용된 코드와 정확히 일치하지 않습니다. 연결 문자열 비밀이며 ASP.NET Core에서 개발 중인 앱 비밀의 금고 스토리지에 설명된 대로 안전하게 저장됩니다. 특히, 시크릿 저장소에서 연결 문자열을 읽으려면 설정 API를 통해 시크릿 읽기와 같이 코드를 추가하면 됩니다. ASP.NET Core 프로젝트에서 연결된 서비스에서 만든 연결 문자열은 구성 개체에서 사용할 수 있습니다. 다음 예제와 같이 클래스의 WebApplicationBuilder 속성(builder 많은 프로젝트 템플릿)으로 액세스할 수 있습니다.

var connection = builder.Configuration["ConnectionStrings:ConnectionString1"];