

在仔細考慮之後，我們決定停止 Amazon Kinesis Data Analytics for SQL 應用程式：

1. 從 **2025 年 9 月 1 日起，**我們不會為 Amazon Kinesis Data Analytics for SQL 應用程式提供任何錯誤修正，因為考慮到即將終止，我們將對其提供有限的支援。

2. 從 **2025 年 10 月 15 日起，**您將無法建立新的 Kinesis Data Analytics for SQL 應用程式。

3. 我們將自 **2026 年 1 月 27** 日起刪除您的應用程式。您將無法啟動或操作 Amazon Kinesis Data Analytics for SQL 應用程式。從那時起，Amazon Kinesis Data Analytics for SQL 將不再提供支援。如需詳細資訊，請參閱[Amazon Kinesis Data Analytics for SQL 應用程式終止](discontinuation.md)。

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

# UpdateApplication
<a name="API_UpdateApplication"></a>

**注意**  
此文件適用於 Amazon Kinesis Data Analytics API 第 1 版，僅支援 SQL 應用程式。第 2 版的 API 則支援 SQL 和 Java 應用程式。如需第 2 版的詳細資訊，請參閱 [Amazon Kinesis Data Analytics API V2 文件](/kinesisanalytics/latest/apiv2/Welcome.html)。

更新現有的 Amazon Kinesis Analytics 應用程式。使用此 API，您可以更新應用程式碼、輸入組態和輸出設定。

請注意，Amazon Kinesis Analytics 會在您每次更新應用程式時更新 `CurrentApplicationVersionId`。

這項操作需要 `kinesisanalytics:UpdateApplication` 動作的許可。

## 請求語法
<a name="API_UpdateApplication_RequestSyntax"></a>

```
{
   "ApplicationName": "string",
   "ApplicationUpdate": { 
      "ApplicationCodeUpdate": "string",
      "CloudWatchLoggingOptionUpdates": [ 
         { 
            "CloudWatchLoggingOptionId": "string",
            "LogStreamARNUpdate": "string",
            "RoleARNUpdate": "string"
         }
      ],
      "InputUpdates": [ 
         { 
            "InputId": "string",
            "InputParallelismUpdate": { 
               "CountUpdate": number
            },
            "InputProcessingConfigurationUpdate": { 
               "InputLambdaProcessorUpdate": { 
                  "ResourceARNUpdate": "string",
                  "RoleARNUpdate": "string"
               }
            },
            "InputSchemaUpdate": { 
               "RecordColumnUpdates": [ 
                  { 
                     "Mapping": "string",
                     "Name": "string",
                     "SqlType": "string"
                  }
               ],
               "RecordEncodingUpdate": "string",
               "RecordFormatUpdate": { 
                  "MappingParameters": { 
                     "CSVMappingParameters": { 
                        "RecordColumnDelimiter": "string",
                        "RecordRowDelimiter": "string"
                     },
                     "JSONMappingParameters": { 
                        "RecordRowPath": "string"
                     }
                  },
                  "RecordFormatType": "string"
               }
            },
            "KinesisFirehoseInputUpdate": { 
               "ResourceARNUpdate": "string",
               "RoleARNUpdate": "string"
            },
            "KinesisStreamsInputUpdate": { 
               "ResourceARNUpdate": "string",
               "RoleARNUpdate": "string"
            },
            "NamePrefixUpdate": "string"
         }
      ],
      "OutputUpdates": [ 
         { 
            "DestinationSchemaUpdate": { 
               "RecordFormatType": "string"
            },
            "KinesisFirehoseOutputUpdate": { 
               "ResourceARNUpdate": "string",
               "RoleARNUpdate": "string"
            },
            "KinesisStreamsOutputUpdate": { 
               "ResourceARNUpdate": "string",
               "RoleARNUpdate": "string"
            },
            "LambdaOutputUpdate": { 
               "ResourceARNUpdate": "string",
               "RoleARNUpdate": "string"
            },
            "NameUpdate": "string",
            "OutputId": "string"
         }
      ],
      "ReferenceDataSourceUpdates": [ 
         { 
            "ReferenceId": "string",
            "ReferenceSchemaUpdate": { 
               "RecordColumns": [ 
                  { 
                     "Mapping": "string",
                     "Name": "string",
                     "SqlType": "string"
                  }
               ],
               "RecordEncoding": "string",
               "RecordFormat": { 
                  "MappingParameters": { 
                     "CSVMappingParameters": { 
                        "RecordColumnDelimiter": "string",
                        "RecordRowDelimiter": "string"
                     },
                     "JSONMappingParameters": { 
                        "RecordRowPath": "string"
                     }
                  },
                  "RecordFormatType": "string"
               }
            },
            "S3ReferenceDataSourceUpdate": { 
               "BucketARNUpdate": "string",
               "FileKeyUpdate": "string",
               "ReferenceRoleARNUpdate": "string"
            },
            "TableNameUpdate": "string"
         }
      ]
   },
   "CurrentApplicationVersionId": number
}
```

## 請求參數
<a name="API_UpdateApplication_RequestParameters"></a>

請求接受採用 JSON 格式的下列資料。

 ** [ApplicationName](#API_UpdateApplication_RequestSyntax) **   <a name="analytics-UpdateApplication-request-ApplicationName"></a>
要更新之 Amazon Kinesis Analytics 應用程式的名稱。  
類型：字串  
長度限制：長度下限為 1。長度上限為 128。  
模式：`[a-zA-Z0-9_.-]+`  
必要：是

 ** [ApplicationUpdate](#API_UpdateApplication_RequestSyntax) **   <a name="analytics-UpdateApplication-request-ApplicationUpdate"></a>
說明應用程式更新。  
類型：[ApplicationUpdate](API_ApplicationUpdate.md) 物件  
必要：是

 ** [CurrentApplicationVersionId](#API_UpdateApplication_RequestSyntax) **   <a name="analytics-UpdateApplication-request-CurrentApplicationVersionId"></a>
目前的應用程式版本 ID。您可以使用 [DescribeApplication](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_DescribeApplication.html) 作業取得此值 。  
類型：Long  
有效範圍：最小值為 1。最大值為 999999999。  
必要：是

## 回應元素
<a name="API_UpdateApplication_ResponseElements"></a>

如果動作成功，則服務會傳回具空 HTTP 內文的 HTTP 200 回應。

## 錯誤
<a name="API_UpdateApplication_Errors"></a>

 ** CodeValidationException **   
使用者提供的應用程式碼 (查詢) 無效。這可能是一個簡單的語法錯誤。    
 ** message **   
測試
HTTP 狀態碼：400

 ** ConcurrentModificationException **   
並行修改應用程式的結果拋出例外。例如，有兩個人嘗試同時編輯相同的應用程式。    
 ** message **   

HTTP 狀態碼：400

 ** InvalidArgumentException **   
指定的輸入參數值無效。    
 ** message **   

HTTP 狀態碼：400

 ** ResourceInUseException **   
應用程式不適用於此作業。    
 ** message **   

HTTP 狀態碼：400

 ** ResourceNotFoundException **   
找不到指定的應用程式。    
 ** message **   

HTTP 狀態碼：400

 ** UnsupportedOperationException **   
請求被拒絕，因為指定的參數不受支持，或指定的資源對此操作無效。  
HTTP 狀態碼：400

## 另請參閱
<a name="API_UpdateApplication_SeeAlso"></a>

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊，請參閱下列內容：
+  [AWS 命令列界面 V2](https://docs.aws.amazon.com/goto/cli2/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 .NET V4 的 SDK](https://docs.aws.amazon.com/goto/DotNetSDKV4/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 C\$1\$1 的 SDK](https://docs.aws.amazon.com/goto/SdkForCpp/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 Go 的 SDK v2](https://docs.aws.amazon.com/goto/SdkForGoV2/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 Java V2 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 JavaScript V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 Kotlin 的 SDK](https://docs.aws.amazon.com/goto/SdkForKotlin/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 PHP V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 Python 的 SDK](https://docs.aws.amazon.com/goto/boto3/kinesisanalytics-2015-08-14/UpdateApplication) 
+  [AWS 適用於 Ruby V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/kinesisanalytics-2015-08-14/UpdateApplication) 