스키마 옵션 지정Specify Schema Options

이 항목에서는 SQL Server 2017SQL Server 2017 또는 SQL Server Management StudioSQL Server Management Studio 을 사용하여 Transact-SQLTransact-SQL에서 스키마 옵션을 지정하는 방법에 대해 설명합니다.This topic describes how to specify schema options in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. 테이블 또는 뷰를 게시하는 경우 게시된 개체에 대해 복제되는 개체 작성 옵션을 제어할 수 있습니다.When you are publishing a table or view, you can control the object creation options that are replicated for the published object. 아티클을 만들 때 이 옵션을 설정할 수 있으며 나중에 이 옵션을 변경할 수도 있습니다.You can set these option when the article is created, and you can also change them at a later time. 아티클에 대해 이 옵션을 명시적으로 지정하지 않으면 기본 옵션 집합이 정의됩니다.If you do not explicitly specify these options for an article, a default set of options will be defined.

참고

복제 저장 프로시저를 사용할 때의 기본 스키마 옵션은 SQL Server Management StudioSQL Server Management Studio를 사용하여 아티클을 추가할 때의 기본 옵션과 다를 수 있습니다.The default schema options when using replication stored procedures may differ from the default options when articles are added using SQL Server Management StudioSQL Server Management Studio.

항목 내용In This Topic

시작하기 전 주의 사항 Before You Begin

제한 사항 Limitations and Restrictions

  • 게시가 만들어진 후 스키마 옵션을 변경하면 새 스냅숏을 생성해야 합니다.If you change schema options after a publication is created, you must generate a new snapshot.

권장 사항 Recommendations

SQL Server Management Studio 사용 Using SQL Server Management Studio

제약 조건 및 트리거를 구독자에 복사할지 여부 등의 스키마 옵션을 아티클 속성-<Article> 대화 상자의 속성 탭에 지정합니다.Specify schema options, such as whether to copy constraints and triggers to Subscribers, on the Properties tab of the Article Properties - <Article> dialog box. 이 탭은 새 게시 마법사 및 게시 속성 - <게시> 대화 상자에서 사용할 수 있습니다.This tab is available in the New Publication Wizard and the Publication Properties - <Publication> dialog box. 마법사 사용 및 대화 상자 액세스에 대한 자세한 내용은 게시 만들기게시 속성 보기 및 수정을 참조하세요.For more information about using the wizard and accessing the dialog box, see Create a Publication and View and Modify Publication Properties.

스키마 옵션을 지정하려면To specify schema options

  1. 새 게시 마법사의 아티클 페이지 또는 게시 속성 - <게시> 대화 상자에서 아티클을 선택하고 아티클 속성을 클릭합니다.On the Articles Page of the New Publication Wizard or Publication Properties - <Publication> dialog box, select an article, and then click Article Properties.

  2. 스키마 옵션 변경 내용을 적용할 아티클을 선택합니다.Select which articles schema option changes should apply to:

    • 선택한 <ObjectType> 아티클 속성 설정을 클릭하여 아티클 속성 - <ObjectName> 대화 상자를 엽니다. 이 대화 상자에서 변경한 속성은 아티클 페이지의 개체 창에 강조 표시된 개체에만 적용됩니다.Click Set Properties of Highlighted <ObjectType> Article to launch the Article Properties - <ObjectName> dialog box; property changes made in this dialog box are applied only to the object that is highlighted in the object pane on the Articles page.

    • 모든 <ObjectType> 아티클 속성 설정을 클릭하여 모든 <ObjectType> 아티클의 속성 대화 상자를 엽니다. 이 대화 상자에서 변경한 속성은 게시용으로 아직 선택하지 않은 개체를 비롯하여 아티클 페이지의 개체 창에서 해당 형식을 갖는 모든 개체에 적용됩니다.Click Set Properties of All <ObjectType> Articles to launch the Properties for All <ObjectType> Articles dialog box; property changes made in this dialog box are applied to all objects of that type in the object pane on the Articles page, including ones not yet selected for publication.

      참고

      모든 <ObjectType> 아티클의 속성 대화 상자에서 변경한 속성은 이전에 아티클 속성 - <ObjectName> 대화 상자에서 지정한 내용을 재정의합니다.Property changes made in the Properties for All <ObjectType> Articles dialog box override any made previously in the Article Properties - <ObjectName> dialog box. 예를 들어 특정 개체 유형의 모든 아티클에 대해 여러 기본값을 설정하고 개별 개체에 대해 일부 속성도 설정하려면 먼저 모든 아티클의 기본값을 설정합니다.If, for example, you want to set a number of defaults for all articles of an object type, but also want to set some properties for individual objects, set the defaults for all articles first. 그런 다음 개별 개체에 대해 속성을 설정합니다.Then set the properties for the individual objects.

  3. 아티클 속성 - <아티클> 대화 상자의속성 탭에 있는 구독자에게 개체 및 설정 복사대상 개체 섹션은 옵션에 대한 값을 지정합니다.In the Copy Objects and Settings to Subscriber and Destination Object sections of the Properties tab of the Article Properties - <Article> dialog box, specify values for the options.

  4. 필요한 경우 속성을 수정한 다음 확인을 클릭합니다.Modify any properties if necessary, and then click OK.

  5. 게시 속성 - <게시> 대화 상자에 있는 경우 확인을 클릭하여 대화 상자를 저장하고 닫습니다.If you are in the Publication Properties - <Publication> dialog box, click OK to save and close the dialog box.

Transact-SQL 사용 Using Transact-SQL

스키마 옵션은 하나 이상의 옵션에 대한 |(비트 OR) 결과인 16진수 값으로 지정됩니다.Schema options are specified as a hexadecimal value that is the | (Bitwise OR) result of one or more options. 자세한 내용은 sp_addarticlesp_addmergearticle을 참조하세요.For more information, see sp_addarticle and sp_addmergearticle.

참고

비트 연산을 수행하기 전에 스키마 옵션 값을 binary 에서 int 로 변환해야 합니다.You must convert schema option values from binary to int before performing a bitwise operation. 자세한 내용은 CAST 및 CONVERT(Transact-SQL)를 참조하세요.For more information, see CAST and CONVERT (Transact-SQL).

스냅숏 또는 트랜잭션 게시에 대한 아티클을 정의할 때 스키마 옵션을 지정하려면To specify schema options when defining an article for a snapshot or transactional publication

  1. 게시 데이터베이스의 게시자에서 sp_addarticle을 실행합니다.At the Publisher on the publication database, execute sp_addarticle. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @source_object에 게시되는 데이터베이스 개체, @type에 대한 데이터베이스 개체 유형 및 @schema_option에 하나 이상의 스키마 옵션에 대한 |(비트 OR) 결과를 지정합니다.Specify the name of the publication to which the article belongs for @publication, a name for the article for @article, the database object being published for @source_object, the type of database object for @type, and the | (Bitwise OR) result of one or more schema options for @schema_option. 자세한 내용은 Define an Article을 참조하세요.For more information, see Define an Article.

병합 게시에 대한 아티클을 정의할 때 스키마 옵션을 지정하려면To specify schema options when defining an article for a merge publication

  1. 게시 데이터베이스의 게시자에서 sp_addmergearticle을 실행합니다.At the Publisher on the publication database, execute sp_addmergearticle. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @source_object에 게시되는 데이터베이스 개체, @schema_option에 하나 이상의 스키마 옵션에 대한 |(비트 OR) 결과를 지정합니다.Specify the name of the publication to which the article belongs for @publication, a name for the article for @article, the database object being published for @source_object, and the | (Bitwise OR) result of one or more schema options for @schema_option. 자세한 내용은 Define an Article을 참조하세요.For more information, see Define an Article.

스냅숏 또는 트랜잭션 게시의 기존 아티클에 대한 스키마 옵션을 변경하려면To change schema options for an existing article in a snapshot or transactional publication

  1. 게시 데이터베이스의 게시자에서 sp_helparticle을 실행합니다.At the Publisher on the publication database, execute sp_helparticle. @publication에 아티클이 속한 게시의 이름을 지정하고 @article에 아티클의 이름을 지정합니다.Specify the name of the publication to which the article belongs for @publication and the name of the article for @article. 결과 집합에서 schema_option 열의 값을 확인합니다.Note the value of the schema_option column in the result set.

  2. 옵션이 설정되었는지 판단하기 위해 1단계의 값과 원하는 스키마 옵션 값을 사용하여 &(비트 AND) 연산을 실행합니다.Execute a & (Bitwise AND) operation using the value from step 1 and the desired schema option value to determine if the option is set.

    • 결과가 0이면 옵션이 설정되지 않은 것입니다.If the result is 0, the option is not set.

    • 결과가 옵션 값이면 옵션이 이미 설정된 것입니다.If the result is the option value, the option is already set.

  3. 옵션이 설정되지 않은 경우 1단계의 값과 원하는 스키마 옵션 값을 사용하여 |(비트 OR) 연산을 실행합니다.If the option is not set, execute a | (Bitwise OR) operation using the value from step 1 and the desired schema option value.

  4. 게시 데이터베이스의 게시자에서 sp_changearticle을 실행합니다.At the Publisher on the publication database, execute sp_changearticle. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @propertyschema_option값, @value에 3단계의 16진수 결과를 지정합니다.Specify the name of the publication to which the article belongs for @publication, the name of the article for @article, a value of schema_option for @property, and the hexadecimal result from step 3 for @value.

  5. 스냅숏 에이전트를 실행하여 새 스냅숏을 생성합니다.Run the Snapshot Agent to generate a new snapshot. 자세한 내용은 Create and Apply the Initial Snapshot을 참조하세요.For more information, see Create and Apply the Initial Snapshot.

병합 게시의 기존 아티클에 대한 스키마 옵션을 변경하려면To change schema options for an existing article in a merge publication

  1. 게시 데이터베이스의 게시자에서 sp_helpmergearticle을 실행합니다.At the Publisher on the publication database, execute sp_helpmergearticle. @publication에 아티클이 속한 게시의 이름을 지정하고 @article에 아티클의 이름을 지정합니다.Specify the name of the publication to which the article belongs for @publication and the name of the article for @article. 결과 집합에서 schema_option 열의 값을 확인합니다.Note the value of the schema_option column in the result set.

  2. 옵션이 설정되었는지 판단하기 위해 1단계의 값과 원하는 스키마 옵션 값을 사용하여 &(비트 AND) 연산을 실행합니다.Execute a & (Bitwise AND) operation using the value from step 1 and the desired schema option value to determine if the option is set.

    • 결과가 0이면 옵션이 설정되지 않은 것입니다.If the result is 0, the option is not set.

    • 결과가 옵션 값이면 옵션이 이미 설정된 것입니다.If the result is the option value, the option is already set.

  3. 옵션이 설정되지 않은 경우 1단계의 값과 원하는 스키마 옵션 값을 사용하여 |(비트 OR) 연산을 실행합니다.If the option is not set, execute a | (Bitwise OR) operation using the value from step 1 and the desired schema option value.

  4. 게시 데이터베이스의 게시자에서 sp_changemergearticle을 실행합니다.At the Publisher on the publication database, execute sp_changemergearticle. @publication에 아티클이 속한 게시의 이름, @article에 아티클의 이름, @propertyschema_option값, @value에 3단계의 16진수 결과를 지정합니다.Specify the name of the publication to which the article belongs for @publication, the name of the article for @article, a value of schema_option for @property, and the hexadecimal result from step 3 for @value.

  5. 스냅숏 에이전트를 실행하여 새 스냅숏을 생성합니다.Run the Snapshot Agent to generate a new snapshot. 자세한 내용은 Create and Apply the Initial Snapshot을 참조하세요.For more information, see Create and Apply the Initial Snapshot.

참고 항목See Also

데이터 및 데이터베이스 개체 게시 Publish Data and Database Objects
트랜잭션 복제를 위한 아티클 옵션 Article Options for Transactional Replication