Update database - Amazon Timestream

Update database

You can use the following code snippets to update your databases.

Note

These code snippets are based on full sample applications on GitHub. For more information about how to get started with the sample applications, see Sample application.

Java
public void updateDatabase(String kmsId) { System.out.println("Updating kmsId to " + kmsId); UpdateDatabaseRequest request = new UpdateDatabaseRequest(); request.setDatabaseName(DATABASE_NAME); request.setKmsKeyId(kmsId); try { UpdateDatabaseResult result = amazonTimestreamWrite.updateDatabase(request); System.out.println("Update Database complete"); } catch (final ValidationException e) { System.out.println("Update database failed:"); e.printStackTrace(); } catch (final ResourceNotFoundException e) { System.out.println("Database " + DATABASE_NAME + " doesn't exist = " + e); } catch (final Exception e) { System.out.println("Could not update Database " + DATABASE_NAME + " = " + e); throw e; } }
Java v2
public void updateDatabase(String kmsKeyId) { if (kmsKeyId == null) { System.out.println("Skipping UpdateDatabase because KmsKeyId was not given"); return; } System.out.println("Updating database"); UpdateDatabaseRequest request = UpdateDatabaseRequest.builder() .databaseName(DATABASE_NAME) .kmsKeyId(kmsKeyId) .build(); try { timestreamWriteClient.updateDatabase(request); System.out.println("Database [" + DATABASE_NAME + "] updated successfully with kmsKeyId " + kmsKeyId); } catch (ResourceNotFoundException e) { System.out.println("Database [" + DATABASE_NAME + "] does not exist. Skipping UpdateDatabase"); } catch (Exception e) { System.out.println("UpdateDatabase failed: " + e); } }
Go
// Update Database. updateDatabaseInput := &timestreamwrite.UpdateDatabaseInput { DatabaseName: aws.String(*databaseName), KmsKeyId: aws.String(*kmsKeyId), } updateDatabaseOutput, err := writeSvc.UpdateDatabase(updateDatabaseInput) if err != nil { fmt.Println("Error:") fmt.Println(err) } else { fmt.Println("Update database is successful, below is the output:") fmt.Println(updateDatabaseOutput) }
Python
def update_database(self, kms_id): print("Updating database") try: result = self.client.update_database(DatabaseName=Constant.DATABASE_NAME, KmsKeyId=kms_id) print("Database [%s] was updated to use kms [%s] successfully" % (Constant.DATABASE_NAME, result['Database']['KmsKeyId'])) except self.client.exceptions.ResourceNotFoundException: print("Database doesn't exist") except Exception as err: print("Update database failed:", err)
Node.js

The following snippet uses AWS SDK for JavaScript v3. For more information about how to install the client and usage, see Timestream Write Client - AWS SDK for JavaScript v3.

Also see Class UpdateDatabaseCommand and UpdateDatabase.

import { TimestreamWriteClient, UpdateDatabaseCommand } from "@aws-sdk/client-timestream-write"; const writeClient = new TimestreamWriteClient({ region: "us-east-1" }); let updatedKmsKeyId = "<updatedKmsKeyId>"; const params = { DatabaseName: "testDbFromNode", KmsKeyId: updatedKmsKeyId }; const command = new UpdateDatabaseCommand(params); try { const data = await writeClient.send(command); console.log(`Database ${data.Database.DatabaseName} updated kmsKeyId to ${updatedKmsKeyId}`); } catch (error) { if (error.code === 'ResourceNotFoundException') { console.log("Database doesn't exist."); } else { console.log("Update database failed.", error); } }

The following snippet uses the AWS SDK for JavaScript V2 style. It is based on the sample application at Node.js sample Amazon Timestream for LiveAnalytics application on GitHub.

async function updateDatabase(updatedKmsKeyId) { if (updatedKmsKeyId === undefined) { console.log("Skipping UpdateDatabase; KmsKeyId was not given"); return; } console.log("Updating Database"); const params = { DatabaseName: constants.DATABASE_NAME, KmsKeyId: updatedKmsKeyId } const promise = writeClient.updateDatabase(params).promise(); await promise.then( (data) => { console.log(`Database ${data.Database.DatabaseName} updated kmsKeyId to ${updatedKmsKeyId}`); }, (err) => { if (err.code === 'ResourceNotFoundException') { console.log("Database doesn't exist."); } else { console.log("Update database failed.", err); } } ); }
.NET
public async Task UpdateDatabase(String updatedKmsKeyId) { Console.WriteLine("Updating Database"); try { var updateDatabaseRequest = new UpdateDatabaseRequest { DatabaseName = Constants.DATABASE_NAME, KmsKeyId = updatedKmsKeyId }; UpdateDatabaseResponse response = await writeClient.UpdateDatabaseAsync(updateDatabaseRequest); Console.WriteLine($"Database {Constants.DATABASE_NAME} updated with KmsKeyId {updatedKmsKeyId}"); } catch (ResourceNotFoundException) { Console.WriteLine("Database does not exist."); } catch (Exception e) { Console.WriteLine("Update database failed: " + e.ToString()); } } private void PrintDatabases(List<Database> databases) { foreach (Database database in databases) Console.WriteLine($"Database:{database.DatabaseName}"); }