

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Microsoft SQL Server 資料庫做為 的目標 AWS Database Migration Service
<a name="CHAP_Target.SQLServer"></a>

您可以使用 將資料遷移至 Microsoft SQL Server 資料庫 AWS DMS。使用 SQL Server 資料庫做為目標，您可以遷移其他 SQL Server 資料庫或其他受支援資料庫的資料。

如需 AWS DMS 支援做為目標之 SQL Server 版本的資訊，請參閱 [的目標 AWS DMS](CHAP_Introduction.Targets.md)。

AWS DMS 支援企業、標準、工作群組和開發人員的現場部署和 Amazon RDS 版本。

如需使用 AWS DMS 和 SQL Server 目標資料庫的其他詳細資訊，請參閱以下內容。

**Topics**
+ [使用 SQL Server 做為 目標的限制 AWS Database Migration Service](#CHAP_Target.SQLServer.Limitations)
+ [使用 SQL Server 做為 目標時的安全需求 AWS Database Migration Service](#CHAP_Target.SQLServer.Security)
+ [使用 SQL Server 做為 目標時的端點設定 AWS DMS](#CHAP_Target.SQLServer.ConnectionAttrib)
+ [Microsoft SQL Server 的目標資料類型](#CHAP_Target.SQLServer.DataTypes)

## 使用 SQL Server 做為 目標的限制 AWS Database Migration Service
<a name="CHAP_Target.SQLServer.Limitations"></a>

使用 SQL Server 資料庫做為 AWS DMS目標時有下列限制：
+ 當您手動建立附計算資料行的 SQL Server 目標資料表時，使用 BCP 大量複製公用程式時不支援完全載入複寫。若要使用完全載入複寫，請在端點上設定額外連線屬性 (ECA) `'useBCPFullLoad=false'` 以停用 BCP 載入。如需在端點上設定 ECA 的相關資訊，請參閱 [來源與目標端點](CHAP_Endpoints.Creating.md)。如需使用 BCP 的詳細資訊，請參閱 [Microsoft SQL Server 文件](https://docs.microsoft.com/en-us/sql/relational-databases/import-export/import-and-export-bulk-data-by-using-the-bcp-utility-sql-server)。
+ 使用 SQL Server 空間資料類型 (GEOMETRY 和 GEOGRAPHY) 複寫資料表時， 會 AWS DMS 取代您使用預設 SRID 插入的任何空間參考識別碼 (SRID)。GEOMETRY 的預設 SRID 為 0，而 GEOGRAPHY 的預設 SRID 為 4326。
+ 不支援暫時資料表。如果目標上的暫時資料表是以手動方式建立，則遷移這些資料表可能要在交易套用模式中使用僅複寫任務。
+ 目前 PostgreSQL 來源中的 `boolean` 資料類型會以具有不一致值的 `bit` 資料類型形式，移轉至 SQLServer 目標。

  若要解決這項問題，請執行下列動作：
  + 使用資料欄的`VARCHAR(1)`資料類型預先建立資料表 （或讓 AWS DMS 建立資料表）。然後讓下游處理將「F」視為 False，將「T」視為 True。
  + 若要避免變更下游處理，請將轉換規則新增至任務以將「F」值變更為「0」、將「T」值變更為 1，並將這些值儲存為 SQL Server 位元資料類型。
+ AWS DMS 不支援變更處理以設定資料欄 nullability （使用 `ALTER COLUMN [SET|DROP] NOT NULL`子句搭配 `ALTER TABLE` 陳述式）。
+ 不支援 Windows 驗證。

## 使用 SQL Server 做為 目標時的安全需求 AWS Database Migration Service
<a name="CHAP_Target.SQLServer.Security"></a>

以下說明 AWS DMS 搭配 Microsoft SQL Server 目標使用 的安全需求：
+  AWS DMS 使用者帳戶必須至少在您連線的 SQL Server 資料庫上具有`db_owner`使用者角色。
+ SQL Server 系統管理員必須向所有 AWS DMS 使用者帳戶提供此許可。

## 使用 SQL Server 做為 目標時的端點設定 AWS DMS
<a name="CHAP_Target.SQLServer.ConnectionAttrib"></a>

您可以使用端點設定來設定您的 SQL Server 目標，類似於使用額外的連線屬性。當您使用 AWS DMS 主控台或使用 中的 `create-endpoint`命令搭配 `--microsoft-sql-server-settings '{"EndpointSetting": "value", ...}'` JSON 語法來建立目標端點時[AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/dms/index.html)，您可以指定設定。

下列資料表顯示您可搭配 SQL Server 作為目標使用的端點設定。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/dms/latest/userguide/CHAP_Target.SQLServer.html)

## Microsoft SQL Server 的目標資料類型
<a name="CHAP_Target.SQLServer.DataTypes"></a>

下表顯示使用 時支援的 Microsoft SQL Server 目標資料類型， AWS DMS 以及來自 AWS DMS 資料類型的預設映射。如需 AWS DMS 資料類型的詳細資訊，請參閱 [AWS Database Migration Service 的資料類型](CHAP_Reference.DataTypes.md)。


|  AWS DMS 資料類型  |  SQL Server 資料類型  | 
| --- | --- | 
|  BOOLEAN  |  TINYINT  | 
|  BYTES  |  VARBINARY (長度)  | 
|  DATE  |  SQL Server 2008 和更新版本請使用 DATE。 舊版且若擴展等於或小於 3 請使用 DATETIME。所有其他案例請使用 VARCHAR (37)。  | 
|  TIME  |  SQL Server 2008 和更新版本請使用 DATETIME2 (%d)。 舊版且若擴展等於或小於 3 請使用 DATETIME。所有其他案例請使用 VARCHAR (37)。  | 
|  DATETIME  |  SQL Server 2008 和更新版本請使用 DATETIME2 (scale)。 舊版且若擴展等於或小於 3 請使用 DATETIME。所有其他案例請使用 VARCHAR (37)。  | 
|  INT1  | SMALLINT | 
|  INT2  |  SMALLINT  | 
|  INT4  | INT | 
|  INT8  |  BIGINT  | 
|  NUMERIC  |  NUMERIC (p,s)  | 
|  REAL4  |  REAL  | 
|  REAL8  | FLOAT | 
|  STRING  |  如果資料行是日期或時間資料行，請執行下列動作： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/dms/latest/userguide/CHAP_Target.SQLServer.html) 如果資料行不是日期或時間資料行，請使用 VARCHAR (長度)。  | 
|  UINT1  |  TINYINT  | 
|  UINT2  |  SMALLINT  | 
|  UINT4  |  INT  | 
|  UINT8  |  BIGINT  | 
|  WSTRING  |  NVARCHAR (長度)  | 
|  BLOB  |  VARBINARY(max) IMAGE 若要搭配 使用此資料類型 AWS DMS，您必須針對特定任務啟用 BLOBs 的使用。 僅在包含主索引鍵的資料表中 AWS DMS 支援 BLOB 資料類型。  | 
|  CLOB  |  VARCHAR(max) 若要搭配 使用此資料類型 AWS DMS，您必須針對特定任務啟用 CLOBs 的使用。在變更資料擷取 (CDC) 期間， AWS DMS 只在包含主索引鍵的資料表中支援 CLOB 資料類型。  | 
|  NCLOB  |  NVARCHAR(max) 若要搭配 使用此資料類型 AWS DMS，您必須針對特定任務啟用 NCLOBs的使用。在 CDC 期間， 僅在包含主索引鍵的資料表中 AWS DMS 支援 NCLOB 資料類型。  | 