MSDN Library
콘텐츠의 테이블 축소
콘텐츠의 테이블 확장

Windows Phone의 로컬 데이터베이스 연결 문자열

2012-02-09

Windows Phone OS 7.1 에서는 응용프로그램이 LINQ to SQL을 사용하여 로컬 데이터베이스에 관계형 데이터를 저장할 수 있습니다. 이 항목에서는 응용프로그램에서 로컬 데이터베이스와 함께 사용할 수 있는 지원되는 연결 문자열 매개 변수에 대해 설명합니다. 로컬 데이터베이스 사용에 대한 자세한 내용은 Windows Phone의 로컬 데이터베이스 개요를 참조하십시오.

데이터베이스를 만들기 전에 연결 문자열을 사용하여 데이터베이스 구성 값을 지정할 수 있습니다. 예를 들어 연결 문자열에서 데이터베이스를 암호화하고 비밀번호로 보호할지 여부를 지정할 수 있습니다.

연결 문자열에서 개별 매개 변수는 세미콜론으로 구분되며 매개 변수 값이 작은따옴표 안에 있습니다. 일부 매개 변수는 데이터베이스를 만드는 경우에만 적용할 수 있습니다. 데이터베이스가 생성된 후에는 해당 매개 변수가 무시됩니다.

다음 표에서는 로컬 데이터베이스 연결 문자열에 대해 지원되는 모든 매개 변수를 보여 줍니다.

매개 변수

설명

data source 또는 datasource

로컬 데이터베이스 파일의 파일 경로와 이름입니다. 지정된 유일한 연결 문자열 속성인 경우 속성 값만 있으면 데이터 컨텍스트 개체를 인스턴스화할 수 있습니다. 데이터 컨텍스트에 대한 자세한 내용은 Windows Phone의 로컬 데이터베이스 개요를 참조하십시오.

경로의 루트 위치를 명시적으로 지정하려면 다음 접두사를 사용합니다.

  • isostore: 경로가 격리된 저장소에 적용됩니다.

  • appdata: 경로가 설치 폴더에 적용됩니다.

접두사를 지정하지 않으면 파일 경로가 격리된 저장소에 적용됩니다.

Password 또는 Pwd 또는 database password 또는 ssce:database password

최대 길이가 40자인 데이터베이스 비밀번호입니다. 지정되지 않은 경우 기본값은 비밀번호 없음입니다. 이 속성은 데이터베이스에서 암호화를 사용하도록 설정하는 경우에 필요합니다. 비밀번호를 지정하면 데이터베이스에서 암호화가 자동으로 사용됩니다. 공백 비밀번호를 지정하면 데이터베이스가 암호화되지 않습니다.

참고참고:
데이터베이스가 생성된 후에는 데이터베이스를 암호화할 수 없습니다.

데이터베이스는 AES-128을 사용하여 암호화되고 비밀번호는 SHA-256을 사용하여 해시됩니다.

전체 데이터베이스가 아닌 일부 데이터를 암호화하려면 방법: Windows Phone 응용프로그램에서 데이터 암호화를 참조하십시오.

max buffer size 또는 ssce:max buffer size

로컬 데이터베이스가 변경 사항을 디스크에 플러시하기 전에 사용할 수 있는 최대 메모리 크기(KB)입니다. 지정되지 않은 경우 기본값은 384입니다. 최대값은 5120입니다.

max database size 또는 ssce:max database size

로컬 데이터베이스의 최대 크기(MB)입니다. 지정되지 않은 경우 기본값은 32입니다. 최대값은 512입니다.

Mode 또는 file mode 또는 ssce:mode

데이터베이스 파일을 열 때 사용할 모드입니다. 유효한 값은 다음과 같습니다.

  • Read Write: 여러 프로세스에서 데이터베이스를 열고 수정할 수 있습니다. mode 속성이 지정되지 않은 경우 이것이 기본 설정입니다.

  • Read Only: 데이터베이스의 읽기 전용 복사본을 열 수 있습니다.

  • Exclusive: 다른 프로세스에서 데이터베이스를 열거나 수정할 수 없습니다.

  • Shared Read: 데이터베이스가 열려 있는 동안 다른 프로세스에서 데이터베이스를 읽을 수 있지만 수정할 수는 없습니다.

Culture Identifier

데이터베이스와 함께 사용할 문화권 코드입니다. 예를 들어 미국 영어의 경우 en-US를 사용합니다. Windows Phone OS 7.1 에서 지원되는 문화권 코드의 전체 목록을 보려면 Windows Phone에 대한 문화권 및 언어 지원을 참조하십시오.

참고참고:
기존 데이터베이스에 연결할 때 이 속성을 사용하면 속성이 무시됩니다.

Case Sensitive 또는 CaseSensitive

데이터베이스 데이터 정렬에서 대/소문자를 구분할지 여부를 결정하는 부울 값입니다. 대/소문자를 구분하는 데이터 정렬을 사용하려면 true로 설정하고, 대/소문자를 구분하지 않는 데이터 정렬을 사용하려면 false로 설정해야 합니다. 지정되지 않은 경우 기본값은 false입니다.

참고참고:
기존 데이터베이스에 연결할 때 이 속성을 사용하면 속성이 무시됩니다.
중요중요:

이 Windows Phone 응용프로그램 플랫폼 릴리스에서는 일부 Microsoft SQL Compact 연결 문자열 매개 변수가 작동할 수도 있습니다. 이 항목에 나열되지 않은 연결 문자열 매개 변수는 사용하지 않는 것이 좋습니다.

다음 예제에서는 로컬 데이터베이스와 함께 연결 문자열을 사용하는 방법을 보여 줍니다.

단일 매개 변수 사용

데이터 소스 속성만 사용 중인 경우 다음 예제에 표시된 대로 연결 문자열에 속성 이름을 포함할 필요가 없습니다.

// Create the data context.
MyDataContext db = new MyDataContext ("isostore:/mydb.sdf")

이 예제에서 isostore 접두사는 파일이 격리된 저장소에 있음을 나타냅니다.

설치 폴더에서 읽기

설치 폴더는 쓰기 작업을 지원하지 않습니다. 설치 폴더의 로컬 데이터베이스에 연결하는 경우 File Mode 속성을 사용하여 연결을 읽기 전용으로 지정해야 합니다. 다음 예제에서는 설치 폴더에 대해 읽기 전용 연결을 만드는 방법을 보여 줍니다.

// Create the data context.
MyDataContext db = new MyDataContext("Data Source = 'appdata:/mydb.sdf'; File Mode = read only;");

암호화된 데이터베이스 만들기

암호화된 데이터베이스를 만들려는 경우 데이터베이스가 생성되기 전에 연결 문자열과 함께 비밀번호를 지정해야 합니다. 이 예제에서는 데이터베이스가 생성되기 전에 비밀번호를 지정합니다.

// Create the data context.
MyDataContext db = new MyDataContext("Data Source='isostore:/mydb.sdf';Password='securepassword';");

// Create an encrypted database after confirming that it does not exist.
if (!db.DatabaseExists()) db.CreateDatabase();

전체 데이터베이스가 아닌 일부 데이터를 암호화하려면 방법: Windows Phone 응용프로그램에서 데이터 암호화를 참조하십시오.

읽기 전용 연결

다음 예제에서는 읽기 전용 방식으로 큰 데이터베이스에 연결하는 과정을 보여 줍니다.

// Create the data context.
MyDataContext db = new MyDataContext("Data Source = 'mydb.sdf'; File Mode = read only; Max Database Size = 256; Max Buffer Size = 1024;");

특정 문화권을 사용하여 데이터베이스 만들기

이 예제에서는 독일어 문화권과 대/소문자 구분 데이터 정렬을 사용하는 데이터베이스가 생성됩니다.

// Create the data context.
MyDataContext db = new MyDataContext("Data Source = 'mydb.sdf'; Culture Identifier = de-de; Case Sensitive = true;");

// Create a database after confirming that it does not exist.
if (!db.DatabaseExists()) db.CreateDatabase();

표시:
© 2016 Microsoft