Class Database (3.11.0)

public sealed class Database : IMessage<Database>, IEquatable<Database>, IDeepCloneable<Database>, IBufferMessage, IMessage

A Cloud Spanner database.

Inheritance

Object > Database

Namespace

Google.Cloud.Spanner.Admin.Database.V1

Assembly

Google.Cloud.Spanner.Admin.Database.V1.dll

Constructors

Database()

public Database()

Database(Database)

public Database(Database other)
Parameter
NameDescription
otherDatabase

Properties

CreateTime

public Timestamp CreateTime { get; set; }

Output only. If exists, the time at which the database creation started.

Property Value
TypeDescription
Timestamp

DatabaseName

public DatabaseName DatabaseName { get; set; }

Google.Cloud.Spanner.Common.V1.DatabaseName-typed view over the Name resource name property.

Property Value
TypeDescription
Google.Cloud.Spanner.Common.V1.DatabaseName

DefaultLeader

public string DefaultLeader { get; set; }

Output only. The read-write region which contains the database's leader replicas.

This is the same as the value of default_leader database option set using DatabaseAdmin.CreateDatabase or DatabaseAdmin.UpdateDatabaseDdl. If not explicitly set, this is empty.

Property Value
TypeDescription
String

EarliestVersionTime

public Timestamp EarliestVersionTime { get; set; }

Output only. Earliest timestamp at which older versions of the data can be read. This value is continuously updated by Cloud Spanner and becomes stale the moment it is queried. If you are using this value to recover data, make sure to account for the time from the moment when the value is queried to the moment when you initiate the recovery.

Property Value
TypeDescription
Timestamp

EncryptionConfig

public EncryptionConfig EncryptionConfig { get; set; }

Output only. For databases that are using customer managed encryption, this field contains the encryption configuration for the database. For databases that are using Google default or other types of encryption, this field is empty.

Property Value
TypeDescription
EncryptionConfig

EncryptionInfo

public RepeatedField<EncryptionInfo> EncryptionInfo { get; }

Output only. For databases that are using customer managed encryption, this field contains the encryption information for the database, such as encryption state and the Cloud KMS key versions that are in use.

For databases that are using Google default or other types of encryption, this field is empty.

This field is propagated lazily from the backend. There might be a delay from when a key version is being used and when it appears in this field.

Property Value
TypeDescription
RepeatedField<EncryptionInfo>

Name

public string Name { get; set; }

Required. The name of the database. Values are of the form projects/&lt;project>/instances/&lt;instance>/databases/&lt;database>, where &lt;database> is as specified in the CREATE DATABASE statement. This name can be passed to other API methods to identify the database.

Property Value
TypeDescription
String

RestoreInfo

public RestoreInfo RestoreInfo { get; set; }

Output only. Applicable only for restored databases. Contains information about the restore source.

Property Value
TypeDescription
RestoreInfo

State

public Database.Types.State State { get; set; }

Output only. The current database state.

Property Value
TypeDescription
Database.Types.State

VersionRetentionPeriod

public string VersionRetentionPeriod { get; set; }

Output only. The period in which Cloud Spanner retains all versions of data for the database. This is the same as the value of version_retention_period database option set using [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl]. Defaults to 1 hour, if not set.

Property Value
TypeDescription
String