프로젝트 설정 (변환) (OracleToSQL)Project Settings (Conversion) (OracleToSQL)

변환 페이지는 프로젝트 설정 대화 상자 SSMA를 Oracle 구문을 변환 하는 방법을 사용자 지정 하는 설정이 포함 되어 SQL ServerSQL Server 구문입니다.The Conversion page of the Project Settings dialog box contains settings that customize how SSMA converts Oracle syntax to SQL ServerSQL Server syntax.

변환에서 제공 되는 프로젝트 설정기본 프로젝트 설정 대화 상자:The Conversion pane is available in the Project Settings and Default Project Settings dialog boxes:

  • 에 모든 SSMA 프로젝트에 대 한 설정을 지정 하려면는 도구 메뉴 클릭 기본 프로젝트 설정, 설정을 보거나에서 변경 하는 데 필요한는 마이그레이션 프로젝트 형식을 선택 마이그레이션 대상 버전 드롭다운을 클릭 일반 클릭 한 다음 확인 하 고 왼쪽된 창 맨 아래에 변환합니다.To specify settings for all SSMA projects, on the Tools menu click Default Project Settings, select migration project type for which settings are required to be viewed or changed from Migration Target Version drop down, then click General at the bottom of the left pane, and then click Conversion.

  • 에 현재 프로젝트에 대 한 설정을 지정 하려면는 도구 메뉴 클릭 프로젝트 설정, 클릭 일반 클릭 한 다음 확인 하 고 왼쪽된 창 맨 아래에 변환합니다.To specify settings for the current project, on the Tools menu click Project Settings, then click General at the bottom of the left pane, and then click Conversion.

변환 메시지Conversion Messages

용어Term 정의Definition
적용 되는 문제에 대 한 메시지를 생성 합니다.Generate messages about issues applied 여부를 지정 SSMA 변환 하는 동안 정보 메시지를 생성, 출력 창에 표시 변환된 된 코드에 추가 합니다.Specifies whether SSMA generates informational messages during conversion, displays them in the Output pane, and adds them to the converted code.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드: 아니요Default/Optimistic Mode: No

전체 모드: 아니요Full Mode: No

기타 옵션Miscellaneous Options

용어Term 정의Definition
정수로 캐스트 ROWNUM 식Cast ROWNUM expressions as integers SSMA ROWNUM 식을 변환, 식 옵니다 TOP 절에 식으로 변환 합니다.When SSMA converts ROWNUM expressions, it converts the expression into a TOP clause, followed by the expression. 다음 예제에서는 Oracle DELETE 문에서 ROWNUM를 보여 줍니다.The following example shows ROWNUM in an Oracle DELETE statement:

DELETE FROM Table1

WHERE ROWNUM < expression and Field1 >= 2

다음 예제에서는 결과 Transact-SQLTransact-SQL:The following example shows the resulting Transact-SQLTransact-SQL:

DELETE TOP (expression-1)

FROM Table1

WHERE Field1>=2

위쪽 TOP 절 식이 정수로 필요 합니다.The TOP requires that the TOP clauses expression evaluates to an integer. 정수가 음수 이면 명령문에서 오류가 발생 합니다.If the integer is negative, the statement will produce an error.

선택 하는 경우 , SSMA 캐스팅 하는 정수입니다.If you select Yes, SSMA casts the expression as an integer.

선택 하는 경우 아니요, SSMA를 오류로 변환된 된 코드에서 모든 정수가 아닌 식이 표시 됩니다.If you select No, SSMA will mark all non-integer expressions as an error in the converted code.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/전체 모드: 아니요Default/Full Mode: No

최적 모드:Optimistic Mode: Yes
기본 스키마 매핑Default Schema Mapping 이 설정은 Oracle 스키마를 SQL Server 스키마로 매핑되는 방법을 지정 합니다.This setting specifies how Oracle schemas are mapped to SQL Server schemas. 두 가지 옵션이이 설정을 사용할 수 있습니다.Two options are available in this setting:

데이터베이스에 스키마: Oracle이이 모드에서는 스키마 'sch1' 'dbo' SQL Server 데이터베이스 스키마에 SQL Server 'sch1' 기본적으로 매핑되지 것입니다.Schema to database: In this mode Oracle schema ‘sch1’ will be mapped by default to ‘dbo’ SQL Server schema in SQL Server database ‘sch1’.

스키마를 스키마:Oracle이이 모드에서는 스키마 'sch1' 'sch1' SQL Server 데이터베이스 스키마에 기본 SQL Server 연결 대화 상자에서 제공 되는 기본적으로 매핑되지 것입니다.Schema to schema:In this mode Oracle schema ‘sch1’ will be mapped by default to ‘sch1’ SQL Server schema in default SQL Server database provided in the connection dialog.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/Optimistic/전체 모드: 데이터베이스에 대 한 스키마Default/Optimistic/Full Mode: Schema to database
MERGE 문의 변환 방법Conversion ways of MERGE statement 선택 하는 경우 사용 하 여 삽입, 업데이트, DELETE 문이, SSMA 변환 합병 문은 INSERT, UPDATE, DELETE 문.If you select Using INSERT, UPDATE, DELETE statement, SSMA converts MERGER statement into INSERT, UPDATE, DELETE statements.

선택 하는 경우 MERGE를 사용 하 여 문은, SSMA 변환에서 MERGE 문을 합병 문을 SQL ServerSQL Server합니다.If you select Using MERGE statement, SSMA converts MERGER statement into MERGE statement in SQL ServerSQL Server.

참고: 이 프로젝트 설정 옵션은 영어로 SQL ServerSQL Server 2008 SQL ServerSQL Server 2012 SQL ServerSQL Server 2014 합니다.Note: This project setting option is available only in SQL ServerSQL Server 2008, SQL ServerSQL Server 2012, SQL ServerSQL Server 2014.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/Optimistic/전체 모드: MERGE 사용 하 여 문Default/Optimistic/Full Mode: Using MERGE statement
기본 인수를 사용 하는 하위 프로그램에 대 한 호출을 변환Convert calls to subprograms that use default arguments SQL ServerSQL Server함수는 함수 호출에 매개 변수는 생략을 지원 하지 않습니다. functions do not support the omission of parameters in the function call. 또한 SQL ServerSQL Server 함수 및 프로시저 식이 기본 매개 변수 값으로 지원 하지 않습니다.Also, SQL ServerSQL Server functions and procedures do not support expressions as default parameter values.

선택 하는 경우 및 매개 변수를 생략 하는 함수 호출, SSMA를 삽입 하는 키워드는 기본 함수 및 올바른 위치에 대 한 호출을 합니다.If you select Yes and a function call omits parameters, SSMA will insert the keyword default into the function and call in the correct position. 그런 다음 경고를 사용 하 여 호출 된 것입니다.Then, it will mark the call with a warning.

선택 하는 경우 아니요, SSMA를 오류로 함수 호출으로 표시 됩니다.If you select No, SSMA will mark the function calls as errors.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
COUNT 함수 COUNT_BIG 변환Convert COUNT function to COUNT_BIG 즉 2 COUNT 함수는 값, 2147483647 보다 큰 반환 될 경우31-1 이면 함수 COUNT_BIG을 변환 해야 합니다.If your COUNT functions are likely to return values larger than 2,147,483,647, which is 231-1, you should convert the functions to COUNT_BIG.

선택 하는 경우 , SSMA COUNT_BIG 개수 사용 되는 모든 변환 됩니다.If you select Yes, SSMA will convert all uses of COUNT to COUNT_BIG.

선택 하는 경우 아니요, 기능 수로 유지 됩니다.If you select No, the functions will remain as COUNT. SQL ServerSQL Server함수 반환 값 2 보다 큰 경우 오류가 반환 됩니다31-1입니다. will return an error if the function returns a value larger than 231-1.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/전체 모드:Default/Full Mode: Yes

최적 모드: 아니요Optimistic Mode: No
FORALL 문이 WHILE 변환할 문Convert FORALL statement to WHILE statement SSMA PL/SQL 컬렉션 요소에 대해 FORALL 루프에서 처리 방법을 정의 합니다.Defines how SSMA will treat FORALL loops on PL/SQL collection elements.

선택 하는 경우 , SSMA 컬렉션 요소가 하나씩 검색된 여기서 WHILE 루프를 만듭니다.If you select Yes, SSMA creates a WHILE loop where collection elements are retrieved one by one.

선택 하는 경우 아니요, SSMA 노드 () 메서드를 사용 하 여 컬렉션에서 생성 하는 행 집합으로 사용 하 여 단일 테이블.If you select No, SSMA generates a rowset from the collection using nodes( ) method and uses it as a single table. 더 효율적 이지만 회색조 출력 코드를 만듭니다.This is more efficient, but makes the output code less readable.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드: 아니요Default/Optimistic Mode: No

전체 모드:Full Mode: Yes
변환 된 열에 SET NULL 참조 동작으로 외래 키에서 NOT NULLConvert foreign keys with SET NULL referential action on column that is NOT NULL Oracle 여기서 SET NULL 동작 가능한 수행할 수 없습니다 참조 된 열에 Null이 허용 되지 않는 때문에 foreign key 제약 조건을 만들 수 있습니다.Oracle allows creating foreign key constraints, where a SET NULL action could not possibly be performed because NULLs are not permitted in the referenced column. SQL ServerSQL Server이러한 외래 키 구성을 허용 하지 않습니다. does not allow such foreign key configuration.

선택 하는 경우 , SSMA Oracle 처럼 참조 동작 하지만 제약 조건을 로드 하기 전에 수동으로 변경 해야 합니다 SQL ServerSQL Server합니다.If you select Yes, SSMA will generate referential actions as in Oracle, but you will need to make manual changes before loading the constraint to SQL ServerSQL Server. 예를 들어, SET NULL 대신 NO ACTION을 선택할 수 있습니다.For example, you can choose NO ACTION instead of SET NULL.

선택 하는 경우 아니요, 제약 조건 오류로 표시 됩니다.If you select No, the constraint will be marked as an error.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드: 아니요Default/Optimistic/Full Mode: No
프로시저 호출에 대 한 함수 호출 변환Convert function calls to procedure calls 일부 Oracle 함수 자치 트랜잭션을으로 정의 된 또는에서 사용할 수 없습니다 하는 문을 포함 SQL ServerSQL Server합니다.Some Oracle functions are defined as autonomous transactions or contain statements that would not be valid in SQL ServerSQL Server. 이러한 경우 SSMA는 프로시저 및 프로시저에 대 한 래퍼 함수를 만듭니다.In these cases, SSMA creates a procedure and a function that is a wrapper for the procedure. 변환 된 함수는 구현 프로시저를 호출합니다.The converted function calls the implementing procedure.

SSMA는 래퍼 함수를 호출 하는 프로시저에 대 한 호출으로 변환할 수 있습니다.SSMA can convert calls to the wrapper function into calls to the procedure. 그러면 보다 읽기 쉬운 코드 만들어지고 성능을 향상 시킬 수 있습니다.This creates more readable code and can improve performance. 그러나 컨텍스트에서 항상 허용 되지 않으면 예를 들어 프로시저 호출으로는 SELECT 목록에서 함수 호출을 바꿀 수 없습니다.However, the context does not always allow it; for example, you cannot replace a function call in SELECT list with a procedure call. SSMA에 일반적인 경우를 처리 하려면 몇 가지 옵션이 있습니다.SSMA has a few options to cover the common cases:

선택 하는 경우 항상, SSMA 래퍼 함수 호출 프로시저 호출으로 변환 하려고 합니다.If you select Always, SSMA attempts to convert wrapper function calls into procedure calls. 현재 컨텍스트는이 변환을 허용 하지 않습니다, 오류 메시지가 생성 됩니다.If the current context does not allow this conversion, an error message is produced. 이러한 방식으로 더 함수 호출을 생성된 된 코드에 남아 있습니다.This way, no function calls are left in the generated code.

선택 하는 경우 가능 하면, SSMA를 사용 하면 이동 프로시저 호출에 함수에 매개 변수를 출력 하는 경우에 합니다.If you select When possible, SSMA makes a move to procedure calls only if the function has output parameters. 이동 불가능 매개 변수의 출력 특성 제거 됩니다.When the move is not possible, parameter's output attribute is removed. 다른 모든 경우에 SSMA 함수 호출을 유지합니다.In all other cases SSMA leaves function calls.

선택 하는 경우 Never, SSMA 함수 호출으로 모든 함수 호출을 종료 됩니다.If you select Never, SSMA will leave all function calls as function calls. 경우에 따라이 옵션을이 선택 수용 하지 못할 성능상의 이유로 인해 합니다.Sometimes this choice may be unacceptable because of performance reasons.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/Optimistic/전체 모드: 가능한 경우Default/Optimistic/Full Mode: When possible
변환 잠금 테이블 문Convert LOCK TABLE statements SSMA는 많은 수의 잠금 테이블로 문이 테이블 힌트를 변환할 수 있습니다.SSMA can convert many LOCK TABLE statements into table hints. SSMA SUBPARTITION, 파티션을 포함 하는 모든 잠금이 테이블 문은 변환할 수 없습니다 @dblink, NOWAIT 절 및 이러한 문의 변환 오류 메시지를 표시 합니다.SSMA cannot convert any LOCK TABLE statements that contain PARTITION, SUBPARTITION, @dblink, and NOWAIT clauses, and will mark such statements with conversion error messages.

선택 하는 경우 , SSMA 테이블 힌트로 지원 되는 문의 잠금 테이블을 변환 합니다.If you select Yes, SSMA will convert supported LOCK TABLE statements into table hints.

선택 하는 경우 아니요, SSMA 변환 오류 메시지와 함께 모든 잠금이 TABLE 문을 표시 합니다.If you select No, SSMA will mark all LOCK TABLE statements with conversion error messages.

다음 표에서 SSMA Oracle 잠금 모드를 변환 하는 방법을 보여 줍니다.The following table shows how SSMA converts Oracle lock modes:

Oracle 잠금 모드Oracle Lock Mode

행 공유ROW SHARE

단독 행ROW EXCLUSIVE

공유 업데이트 = 행 공유SHARE UPDATE = ROW SHARE

공유SHARE

공유SHARE

단독EXCLUSIVE

SQL Server 테이블 힌트SQL Server Table Hint

ROWLOCK, HOLDLOCKROWLOCK, HOLDLOCK

ROWLOCK, XLOCK, HOLDLOCKROWLOCK, XLOCK, HOLDLOCK

ROWLOCK, HOLDLOCKROWLOCK, HOLDLOCK

TABLOCK, HOLDLOCKTABLOCK, HOLDLOCK

TABLOCK, XLOCK, HOLDLOCKTABLOCK, XLOCK, HOLDLOCK

HOLDLOCK, TABLOCKXTABLOCKX, HOLDLOCK

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
변환 REF CURSOR OUT 매개 변수에 대해 오픈 FOR 문Convert OPEN-FOR statements for REF CURSOR OUT parameters Oracle에서 오픈 FOR 문 데 사용할 수 결과 하위 프로그램의 출력 형식이 REF CURSOR 매개 변수 집합을 반환 합니다.In Oracle, the OPEN-FOR statement can be used to return a result set to a subprogram's OUT parameter of type REF CURSOR. SQL ServerSQL Server, 저장된 프로시저는 직접 SELECT 문의 결과를 반환 합니다.In SQL ServerSQL Server, stored procedures directly return the results of SELECT statements.

SSMA는 여러 오픈 FOR 문에 SELECT 문으로 변환할 수 있습니다.SSMA can convert many OPEN-FOR statements into SELECT statements.

선택 하는 경우 , SSMA 오픈 FOR 문 결과 집합을 클라이언트에 반환 하는 SELECT 문이 변환 합니다.If you select Yes, SSMA converts the OPEN-FOR statement into a SELECT statement, which returns the result set to the client.

선택 하는 경우 아니요, SSMA 변환된 코드 및 출력 창에서 오류 메시지가 생성 됩니다.If you select No, SSMA will generate an error message in the converted code and in the Output pane.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
레코드 구분 변수 목록으로 변환Convert record as a list of separates variables SSMA는 변수를 구분 하며이 특정 구조를 사용 하 여 XML 변수 Oracle 레코드를 변환할 수 있습니다.SSMA can convert Oracle records into separates variables and into XML variables with specific structure.

선택 하는 경우 , SSMA 가능 하면 구분 변수의 목록으로 레코드를 변환 합니다.If you select Yes, SSMA converts the record into a list of separates variables when possible.

선택 하는 경우 아니요, SSMA 특정 구조를 사용 하 여 XML 변수를 레코드를 변환 합니다.If you select No, SSMA converts the record into XML variables with specific structure.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
SUBSTRING 함수 호출에 대 한 SUBSTR 함수 호출 변환Convert SUBSTR function calls to SUBSTRING function calls SSMA는 Oracle SUBSTR 함수 호출으로 변환할 수 SQL ServerSQL Server 부분 문자열 함수 매개 변수 개수에 따라 호출 합니다.SSMA can convert Oracle SUBSTR function calls into SQL ServerSQL Server substring function calls, depending on the number of parameters. SSMA는 SUBSTR 함수 호출을 변환할 수 없습니다 매개 변수 수가 지원 되지 않거나, SSMA 사용자 지정 SSMA 함수 호출에 SUBSTR 함수 호출을 변환 합니다.If SSMA cannot convert a SUBSTR function call, or the number of parameters is not supported, SSMA will convert the SUBSTR function call into a custom SSMA function call.

선택 하는 경우 , SSMA는 세 개의 매개 변수를 사용 하는 SUBSTR 함수 호출 변환 SQL ServerSQL Server 부분 문자열합니다.If you select Yes, SSMA will convert SUBSTR function calls that use three parameters into SQL ServerSQL Server substring. 다른 SUBSTR 함수를 사용자 지정 SSMA 함수 호출 변환 됩니다.Other SUBSTR functions will be converted to call the custom SSMA function.

선택 하는 경우 아니요, SSMA 사용자 지정 SSMA 함수 호출으로 SUBSTR 함수 호출을 변환 합니다.If you select No, SSMA will convert the SUBSTR function call into a custom SSMA function call.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드:Default/Optimistic Mode: Yes

전체 모드: 아니요Full Mode: No
하위 형식 변환Convert subtypes SSMA는 PL/SQL 하위 두 가지 방법으로 변환할 수 있습니다.SSMA can convert PL/SQL subtypes in two ways:

선택 하는 경우 , SSMA 만들어집니다 SQL ServerSQL Server 사용자 정의 하위 형식에서 입력 하 고이 하위 유형의 각 변수에 대해 사용 합니다.If you select Yes, SSMA will create SQL ServerSQL Server user-defined type from a subtype and use it for each variable of this subtype.

선택 하는 경우 아니요, SSMA를 내부 형식과 하위 형식의 모든 소스 선언을 대체 하 고 결과 정상적으로 변환 됩니다.If you select No, SSMA will substitute all source declarations of the subtype with the underlying type and convert the result as usual. 이 경우에 추가 형식이 없습니다에 생성 됩니다. SQL ServerSQL ServerIn this case, no additional types are created in SQL ServerSQL Server

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드: 아니요Default/Optimistic/Full Mode: No
동의어를 변환 합니다.Convert synonyms 다음 Oracle 개체에 대 한 동의어로 마이그레이션할 수 SQL ServerSQL Server:Synonyms for the following Oracle objects can be migrated to SQL ServerSQL Server:

테이블 및 개체 테이블Tables and object tables

뷰 및 개체 보기Views and object views

저장된 프로시저 및 함수Stored procedures and functions

구체화 된 뷰Materialized views

다음에 대 한 동의어 개체에 대 한 직접 참조가으로 Oracle 개체를 대체할 수 있습니다.Synonyms for the following Oracle objects can be replaced by direct references to the objects:

시퀀스Sequences

패키지Packages

Java 클래스 스키마 개체Java class schema objects

사용자 정의 개체 유형User-defined object types

다른 동의어를 마이그레이션할 수 없습니다.Other synonyms cannot be migrated. SSMA는 동의어 및 동의어가 사용 하는 모든 참조에 대 한 오류 메시지가 생성 됩니다.SSMA will generate error messages for the synonym and all references that use the synonym.

선택 하는 경우 , SSMA 만들어집니다 SQL ServerSQL Server 동의어 및 이전 목록에 따라 직접 개체 참조입니다.If you select Yes, SSMA will create SQL ServerSQL Server synonyms and direct object references according to the previous lists.

선택 하는 경우 아니요, SSMA 여기에 나열 된 모든 동의어에 대 한 직접 개체 참조를 생성 합니다.If you select No, SSMA will create direct object references for all synonyms listed here.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
TO_CHAR (날짜, 형식)으로 변환Convert TO_CHAR(date, format) SSMA는 Oracle TO_CHAR(date, format) sysdb 데이터베이스에서 절차로 변환할 수 있습니다.SSMA can convert Oracle TO_CHAR(date, format) into procedures from sysdb database.

선택 하는 경우 함수를 사용 하 여 TO_CHAR_DATE, SSMA (날짜, 형식) TO_CHAR TO_CHAR_DATE 함수를 사용 하 여 영어의 변환에 대 한 변환 합니다.If you select Using TO_CHAR_DATE function, SSMA converts the TO_CHAR(date, format) into TO_CHAR_DATE function using of English language for conversion.

선택 하는 경우 (NLS 주의)를 사용 하 여 TO_CHAR_DATE_LS 함수, SSMA (날짜, 형식) TO_CHAR TO_CHAR_DATE_LS 함수를 사용 하 여 세션 언어의 변환에 대 한 변환If you select Using TO_CHAR_DATE_LS function (NLS care), SSMA converts the TO_CHAR(date, format) into TO_CHAR_DATE_LS function using of session language for conversion

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/Optimistic 모드: Using TO_CHAR_DATE 함수Default/Optimistic Mode: Using TO_CHAR_DATE function

전체 모드: Using TO_CHAR_DATE_LS 함수 (NLS 주의)Full Mode: Using TO_CHAR_DATE_LS function (NLS care)
트랜잭션 처리 문을 변환합니다Convert transaction processing statements SSMA는 Oracle 트랜잭션 처리 문을 변환할 수 있습니다.SSMA can convert Oracle transaction processing statements:

선택 하는 경우 , SSMA는 Oracle 트랜잭션 처리 문을 변환 SQL ServerSQL Server 문.If you select Yes, SSMA converts Oracle transaction processing statements to SQL ServerSQL Server statements.

선택 하는 경우 아니요, SSMA 문을 변환 오류로 처리 트랜잭션을 표시 합니다.If you select No, SSMA marks the transaction processing statements as conversion errors.

참고: Oracle 트랜잭션을 암시적으로 열립니다.Note: Oracle opens transactions implicitly. 이 동작을 에뮬레이트하는 데 SQL ServerSQL Server를 수동으로 추가 해야는 BEGIN TRANSACTION 문이 시작 하 여 트랜잭션을 저장할 합니다.To emulate this behavior on SQL ServerSQL Server, you must add BEGIN TRANSACTION statements manually where you want your transactions to start. 또는 세션의 시작 부분에 SET IMPLICIT_TRANSACTIONS ON 명령을 실행할 수 있습니다.Alternatively, you can execute the SET IMPLICIT_TRANSACTIONS ON command at the beginning of your session. SSMA 자치 트랜잭션 사용 하 여 서브루틴을 변환 하는 경우 SET IMPLICIT_TRANSACTIONS ON을 자동으로 추가 합니다.SSMA adds SET IMPLICIT_TRANSACTIONS ON automatically when converting subroutines with autonomous transactions.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
ORDER BY 절에서 null 동작 Oracle 에뮬레이션Emulate Oracle null behavior in ORDER BY clauses NULL 값에 다르게 정렬 됩니다 SQL ServerSQL Server 및 Oracle:NULL values are ordered differently in SQL ServerSQL Server and Oracle:

SQL ServerSQL Server, NULL 값은 정렬 된 목록에서 가장 낮은 값입니다.In SQL ServerSQL Server, NULL values are the lowest values in an ordered list. 오름차순 목록에서 NULL 값이 먼저 표시 됩니다.In an ascending list, NULL values will appear first.

Oracle에서 NULL 값은 정렬 된 목록에서 가장 높은 값입니다.In Oracle, NULL values are the highest values in an ordered list. 기본적으로 NULL 값의 마지막 오름차순 순서 목록에 표시 됩니다.By default, NULL values appear last in an ascending-order list.

Oracle에서는 Oracle에서 null 값을 정렬 하는 방법을 변경할 수 있도록 NULL 첫 번째 및 마지막 NULL 절.Oracle has NULLS FIRST and NULLS LAST clauses, which enables you to change how Oracle orders NULLs.

SSMA는 NULL 값에 대해 확인 하 여 Oracle ORDER BY 동작을 에뮬레이트할 수 있습니다.SSMA can emulate Oracle ORDER BY behavior by checking for NULL values. 다음 먼저 정렬 다른 값으로 지정 된 순서와 다음 주문에서 값이 NULL입니다.It then first orders by NULL values in the specified order, and then orders by other values.

선택 하는 경우 , SSMA는 Oracle 문을 Oracle ORDER BY 동작을 에뮬레이션 하는 방식으로 변환 됩니다.If you select Yes, SSMA will convert the Oracle statement in a way that emulates Oracle ORDER BY behavior.

선택 하는 경우 아니요, SSMA는 Oracle 규칙을 무시 하 고 NULL 첫 번째 및 마지막 NULL 절에 도달할 때 오류 메시지가 생성 됩니다.If you select No, SSMA will ignore Oracle rules and generate an error message when it encounters the NULLS FIRST and NULLS LAST clauses.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드: 아니요Default/Optimistic Mode: No

전체 모드:Full Mode: Yes
에뮬레이트하 선택에서 행 개수 예외Emulate row count exceptions in SELECT INTO 절이 있는 SELECT 명령문이 모든 행을 반환 하지 않는, Oracle NO_DATA_FOUND 예외를 발생 시킵니다.If a SELECT statement with an INTO clause does not return any rows, Oracle raises a NO_DATA_FOUND exception. 문이 두 개 이상의 행이 반환 TOO_MANY_ROWS 예외가 발생 합니다.If the statement returns two or more rows, the TOO_MANY_ROWS exception is raised. 변환된 된 문이 SQL ServerSQL Server 행 수가 하나에서 다른 경우 예외가 발생 하지 않습니다.The converted statement in SQL ServerSQL Server does not raise any exception if the row count is different from one.

선택 하는 경우 , SSMA 각 SELECT 문의 후 sysdb 프로시저 db_error_exact_one_row_check 호출을 추가 합니다.If you select Yes, SSMA adds call to sysdb procedure db_error_exact_one_row_check after each SELECT statement. 이 절차는 NO_DATA_FOUND 및 TOO_MANY_ROWS 예외를 에뮬레이션합니다.This procedure emulates the NO_DATA_FOUND and TOO_MANY_ROWS exceptions. 이것이 기본 설정 및 가능한 Oracle 동작을 재현할 수 있습니다.This is the default and it allows reproducing Oracle behavior as close as possible. 항상 선택 해야 소스 코드에 이러한 오류를 처리 하는 예외 처리기를 포함 하는 경우.You should always choose Yes if the source code has exception handlers that process these errors. SELECT 문은 사용자 정의 함수 내 발생 하는 경우 저장된 프로시저를 실행 하기 때문에이 모듈을 저장 프로시저 변환 됩니다 및와 호환 되지 않는 예외를 발생 시키는 SQL ServerSQL Server 함수 컨텍스트.Note that if the SELECT statement occurs inside a user-defined function, this module will be converted to a stored procedure, because executing stored procedures and raising exceptions is not compatible with SQL ServerSQL Server function context.

선택 하는 경우 아니요, 예외가 생성 됩니다.If you select No, no exceptions will be generated. SSMA는 사용자 정의 함수를 변환 하 고 함수에 유지 하려는 경우 유용할 수 있는 SQL ServerSQL ServerThat can be useful when SSMA converts a user-defined function and you want it to remain a function in SQL ServerSQL Server

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
DBMS_SQL에 대 한 오류를 생성 합니다. 구문 분석Generate error for DBMS_SQL.PARSE 선택 하는 경우 오류, SSMA DBMS_SQL 변환에서 오류를 생성 합니다. 구문 분석 합니다.If you select Error, SSMA generate error at the conversion DBMS_SQL.PARSE.

선택 하는 경우 경고, SSMA DBMS_SQL 변환에는 경고를 생성 합니다. 구문 분석 합니다.If you select Warning, SSMA generate warning at the conversion DBMS_SQL.PARSE.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드: 오류Default/Optimistic/Full Mode: Error
행 ID 열 생성Generate ROWID column SSMA의 테이블을 생성할 때 SQL ServerSQL Server, 행 ID 열을 만들 수 있습니다.When SSMA creates tables in SQL ServerSQL Server, it can create a ROWID column. 데이터를 마이그레이션할 때 각 행에 newid () 함수에 의해 생성 된 새 UNIQUEIDENTIFIER 값을 가져옵니다.When data is migrated, each row obtains a new UNIQUEIDENTIFIER value generated by the newid() function.

선택 하는 경우 , 모든 테이블에 행 ID 열은 생성 및 SQL ServerSQL Server 값을 삽입할 때 Guid를 생성 합니다.If you select Yes, the ROWID column is created on all tables and SQL ServerSQL Server generates GUIDs as you insert values. 항상 선택 SSMA 테스터를 사용 하도록 하려는 경우.Always choose Yes if you are planning to use the SSMA Tester.

선택 하는 경우 아니요, ROWID 열 테이블에 추가 되지 않습니다.If you select No, ROWID columns are not added to tables.

트리거가 있는 테이블의 행 ID 열을 추가 ROWID 트리거를 포함 하는 테이블에 대 한 추가 합니다.Add ROWID column for tables with triggers add ROWID for the tables containing triggers.

참고: SQL Server 2005, SQL Server 2008 및 SQL Server 2012 및 2014의 경우 기본 설정은 트리거가 포함 된 테이블에 대 한 추가 행 ID 열합니다.Note: Default setting in the case of SQL Server 2005 , SQL Server 2008 and SQL Server 2012 and 2014 is Add ROWID column for tables with triggers.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting :

기본/Optimistic 모드: 트리거가 있는 테이블의 행 ID 열을 추가 합니다.Default/Optimistic Mode: Add ROWID column for tables with triggers

전체 모드:Full Mode: Yes
행 ID 열에 고유 인덱스를 생성 합니다.Generate unique index on ROWID column 여부 SSMA 생성 하는 행 ID 열에 고유 인덱스 열을 생성 하는지 여부를 지정 합니다.Specifies whether SSMA generates unique index column on the ROWID generated column or not. 고유 인덱스 생성 되는 옵션을 "예"로 설정 하 고 행 ID 열에 "아니요"로 설정 된 경우 고유 인덱스가 생성 되지 않습니다.If the option is set to “YES”, unique index is generated and if it is set to “NO”, unique index is not generated on the ROWID column.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
로컬 모듈 변환Local modules conversion 중첩 된 oracle (독립 실행형 저장 프로시저 또는 함수에서 선언 됨) 하는 하위 프로그램 변환 형식을 정의합니다.Defines the type of oracle nested subprogram (declared in standalone stored procedure or function) conversion.

선택 하는 경우 인라인, 중첩 된 하위 프로그램 호출 본문으로 대체 됩니다.If you select Inline, the nested subprogram calls will be replaced by its body.

선택 하는 경우 저장 프로시저, SQL Server 저장 프로시저에 중첩 된 하위 프로그램 변환 되 고,이 프로시저 호출에서 해당 호출을 대체 됩니다.If you select Stored procedures, nested subprogram will be converted to a SQL Server stored procedure, and its calls will be replaced on this procedure call.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드: 인라인Default/Optimistic/Full Mode: Inline
문자열 연결의 ISNULL 사용Use ISNULL in string concatenation Oracle 및 SQL ServerSQL Server 문자열 연결 NULL 값을 포함 하는 경우 다른 결과 반환 합니다.Oracle and SQL ServerSQL Server return different results when string concatenations include NULL values. Oracle에서는 빈 문자 집합 처럼 NULL 값을 처리 합니다.Oracle treats the NULL value like an empty character set. SQL ServerSQL ServerNULL을 반환합니다. returns NULL.

선택 하는 경우 , SSMA 대체 Oracle 연결 문자 (| |)와 SQL ServerSQL Server 연결 문자 (+).If you select Yes, SSMA replaces the Oracle concatenation character (||) with the SQL ServerSQL Server concatenation character (+). SSMA는 NULL 값에 대 한 연결의 양쪽 모두에 있는 식을 확인합니다.SSMA also checks the expressions on both sides of the concatenation for NULL values.

선택 하는 경우 아니요, SSMA 연결 문자를 대체 하지만 NULL 값을 확인 하지 않습니다.If you select No, SSMA replaces the concatenation characters, but does not check for NULL values.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
REPLACE 함수 호출에서 ISNULL 사용Use ISNULL in REPLACE function calls ISNULL 문은 REPLACE 함수 호출에서 Oracle 동작을 에뮬레이트하는 데 사용 됩니다.ISNULL statement is used in REPLACE function calls to emulate Oracle behavior. 다음 옵션은이 설정에 대 한.The following options are present for this setting:

YESYES

아니요NO

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드: 아니요Default/Optimistic Mode: No

전체 모드:Full Mode: Yes
CONCAT 함수 호출에서 ISNULL 사용Use ISNULL in CONCAT function calls ISNULL 문은 CONCAT 함수 호출에서 Oracle 동작을 에뮬레이트하는 데 사용 됩니다.ISNULL statement is used in CONCAT function calls to emulate Oracle behavior. 다음 옵션은이 설정에 대 한.The following options are present for this setting:

YESYES

아니요NO

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드: 아니요Default/Optimistic Mode: No

전체 모드:Full Mode: Yes
가능한 경우 네이티브 convert 함수를 사용 하 여Use native convert function when possible 선택 하는 경우 , SSMA TO_CHAR (날짜, 형식) 가능 하면 네이티브 convert 함수로 변환 합니다.If you select Yes, SSMA converts the TO_CHAR(date, format) into native convert function when possible.

선택 하는 경우 아니요, SSMA TO_CHAR_DATE 또는 ("TO_CHAR(date, format) 변환" 옵션에 정의 된) TO_CHAR_DATE_LS TO_CHAR (날짜, 형식)을 변환 합니다.If you select No, SSMA converts the TO_CHAR(date, format) into TO_CHAR_DATE or TO_CHAR_DATE_LS (It is defined by “Convert TO_CHAR(date, format)” options).

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적 모드:Default/Optimistic Mode: Yes

전체 모드: 아니요Full Mode: No
SELECT를 사용 하는 중... XML 변환 하는 경우에 대 한 선택... INTO 레코드 변수에 대 한Use SELECT...FOR XML when converting SELECT...INTO for record variable 레코드 변수로 선택 설정 XML 결과 생성할 것인지 지정 합니다.Specifies whether to generate an XML result set when you select into a record variable.

선택 하는 경우 , SELECT 문은 XML을 반환 합니다.If you select Yes, the SELECT statement returns XML.

선택 하는 경우 아니요, SELECT 문의 결과 집합을 반환 합니다.If you select No, the SELECT statement returns a result set.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드: 아니요Default/Optimistic/Full Mode: No

절 변환을 반환합니다.RETURNING Clause Conversion

용어Term 정의Definition
DELETE 문에 RETURNING 절 출력으로 변환Convert RETURNING clause in DELETE statement to OUTPUT Oracle 즉시 삭제 된 값을 검색 하는 방법으로 RETURNING 절을 제공 합니다.Oracle provides a RETURNING clause as a way to immediately obtain deleted values. SQL ServerSQL ServerOUTPUT 절에 해당 기능을 제공합니다. provides that functionality with the OUTPUT clause.

선택 하는 경우 , SSMA는 출력 절 RETURNING 절을 DELETE 문 변환 합니다.If you select Yes, SSMA will convert RETURNING clauses in DELETE statements to OUTPUT clauses. 반환된 된 값에서 다를 수 있습니다 테이블의 트리거 값을 변경할 수 있으므로 SQL ServerSQL Server Oracle 에서보다 합니다.Because triggers on a table can change values, the returned value might be different in SQL ServerSQL Server than it was in Oracle.

선택 하는 경우 아니요, SSMA DELETE 문 반환 된 값을 검색 하기 전에 SELECT 문을 생성 합니다.If you select No, SSMA will generate a SELECT statement before DELETE statements to retrieve returned values.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
INSERT 문에서 RETURNING 절을 출력으로 변환Convert RETURNING clause in INSERT statement to OUTPUT Oracle 즉시 삽입 된 값을 검색 하는 방법으로 RETURNING 절을 제공 합니다.Oracle provides a RETURNING clause as a way to immediately obtain inserted values. SQL ServerSQL ServerOUTPUT 절에 해당 기능을 제공합니다. provides that functionality with the OUTPUT clause.

선택 하는 경우 , SSMA는 INSERT 문에서 RETURNING 절 출력 변환 됩니다.If you select Yes, SSMA will convert a RETURNING clause in an INSERT statement to OUTPUT. 반환된 된 값에서 다를 수 있습니다 테이블의 트리거 값을 변경할 수 있으므로 SQL ServerSQL Server Oracle 에서보다 합니다.Because triggers on a table can change values, the returned value might be different in SQL ServerSQL Server than it was in Oracle.

선택 하는 경우 아니요, SSMA 삽입 한 다음 참조 테이블에서 값을 선택 하 여 Oracle 기능을 에뮬레이트합니다.If you select No, SSMA emulates Oracle functionality by inserting and then selecting values from a reference table.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes
UPDATE 문에서 RETURNING 절 출력으로 변환Convert RETURNING clause in UPDATE statement to OUTPUT Oracle에서는 즉시 업데이트 된 값을 검색 하는 방법으로 RETURNING 절을 제공 합니다.Oracle provides a RETURNING clause as a way to immediately obtain updated values. SQL ServerSQL ServerOUTPUT 절에 해당 기능을 제공합니다. provides that functionality with the OUTPUT clause.

선택 하는 경우 , SSMA는 출력 절 UPDATE 문에서 RETURNING 절 변환 합니다.If you select Yes, SSMA will convert RETURNING clauses in UPDATE statements to OUTPUT clauses. 반환된 된 값에서 다를 수 있습니다 테이블의 트리거 값을 변경할 수 있으므로 SQL ServerSQL Server Oracle 에서보다 합니다.Because triggers on a table can change values, the returned value might be different in SQL ServerSQL Server than it was in Oracle.

선택 하는 경우 아니요, SSMA SELECT 문이 반환 값을 검색 하는 UPDATE 문을 생성 합니다.If you select No, SSMA will generate SELECT statements after UPDATE statements to retrieve returning values.

변환 모드를 선택 하면는 모드 SSMA 상자에서 다음 설정이 적용 됩니다.When you select a conversion mode in the Mode box, SSMA applies the following setting:

기본/낙관적/전체 모드:Default/Optimistic/Full Mode: Yes

시퀀스 변환Sequence Conversion

용어Term 정의Definition
시퀀스 생성기를 변환 합니다.Convert Sequence Generator Oracle에서는 고유 식별자를 생성 하는 순서를 사용할 수 있습니다.In Oracle, you can use a Sequence to generate unique identifiers.

SSMA는 다음에 시퀀스를 변환할 수 있습니다.SSMA can convert Sequences to the following.

(이 옵션은만 사용할 수 있는 SQL Server 2012 및 SQL Server 2014를 변환 하는 경우)는 SQL Server 시퀀스 생성기를 사용 합니다.Using SQL Server sequence generator (this option is only available when converting to SQL Server 2012 and SQL Server 2014).

SSMA 시퀀스 생성기를 사용합니다.Using SSMA sequence generator.

열 id를 사용 합니다.Using column identity.

SQL Server 2012 또는 SQL Server 2014를 변환할 때 기본 옵션 SQL Server 시퀀스 생성기를 사용 하는 것입니다.The default option when converting to SQL Server 2012 or SQL Server 2014 is to use SQL Server sequence generator. 그러나 SQL Server 2012 및 SQL Server 2014 지원 하지 않습니다 (예: Oracle 시퀀스 currval 메서드의) 현재 시퀀스 값 가져오기.However, SQL Server 2012 and SQL Server 2014 does not support obtaining current sequence value (such as that of Oracle sequence currval method). Oracle 시퀀스 currval 메서드 마이그레이션에 대 한 지침은 SSMA 팀 블로그 사이트를 참조 하십시오.Refer to SSMA team blog site for guidance on migrating Oracle sequence currval method.

SSMA는 또한 Oracle 시퀀스 SSMA 시퀀스 에뮬레이터를 변환 하는 옵션을 제공 합니다.SSMA also provides an option to convert Oracle sequence to SSMA sequence emulator. SQL server 2012 이전의 변환 하는 경우 기본 옵션입니다.This is the default option when you convert to SQL Server prior to 2012

마지막으로, SQL Server id 값을 테이블의 열에 할당 된 시퀀스를 변환할 수 있습니다.Finally, you can also convert sequence assigned to a column in table to SQL Server identity values. Oracle에서 identity 열에 시퀀스 간의 매핑을 지정 해야 테이블You must specify the mapping between the sequences to an identity column on Oracle Table tab
트리거 밖에 CURRVAL 변환Convert CURRVAL outside triggers 변환할 시퀀스 생성기로 설정 된 경우에 표시 열 id를 사용 하합니다.Visible only when the Convert Sequence Generator is set to using column identity. Oracle 시퀀스는 테이블에서 별도 개체를 생성 하 고 새 시퀀스 값을 삽입 트리거를 사용 하는 시퀀스를 사용 하는 여러 테이블.Because Oracle Sequences are objects separate from tables, many tables that use Sequences use a trigger to generate and insert a new sequence value. SSMA는 이러한 문을 주석으로 처리 하거나 주석 달기 아웃 오류를 생성 하는 경우 오류로 표시 합니다.SSMA comments out these statements, or marks them as errors when the commenting out would generate errors.

선택 하는 경우 , SSMA 모든 참조의 변환 된 트리거 외부 CURRVAL 경고와 함께 시퀀스를 표시 합니다.If you select Yes, SSMA will mark all references to outside triggers on the converted sequence CURRVAL with a warning.

선택 하는 경우 아니요, SSMA로의 변환 된 트리거 외부 CURRVAL 오류가 발생 하 여 시퀀스에 모든 참조 표시 됩니다.If you select No, SSMA will mark all references to outside triggers on the converted sequence CURRVAL with an error.

관련 항목:See Also

사용자 인터페이스 참조 ( OracleToSQL )User Interface Reference (OracleToSQL)