public class Database extends DatabaseInfo
Represents a Cloud Spanner database. Database
adds a layer of service related
functionality over DatabaseInfo
.
Constructors
Database(DatabaseId id, DatabaseInfo.State state, DatabaseAdminClient dbClient)
public Database(DatabaseId id, DatabaseInfo.State state, DatabaseAdminClient dbClient)
Methods
backup(Backup backup)
public OperationFuture<Backup,CreateBackupMetadata> backup(Backup backup)
Backs up this database to the location specified by the Backup. The given Backup must have an expire time. The backup must belong to the same instance as this database.
Parameter |
---|
Name | Description |
backup | Backup
|
drop()
exists()
Returns true
if a database with the id of this Database exists on Cloud
Spanner.
getDdl()
public Iterable<String> getDdl()
Returns the schema of a Cloud Spanner database as a list of formatted DDL statements. This
method does not show pending schema updates.
getIAMPolicy()
public Policy getIAMPolicy()
Returns the IAM Policy for this database.
Returns |
---|
Type | Description |
com.google.cloud.Policy | |
listDatabaseOperations()
public Page<Operation> listDatabaseOperations()
Returns the long-running operations for this database.
reload()
Fetches the database's current information.
setIAMPolicy(Policy policy)
public Policy setIAMPolicy(Policy policy)
Updates the IAM policy for this database and returns the resulting policy. It is highly
recommended to first get the current policy and base the updated policy on the returned policy.
See Policy.Builder#setEtag(String) for information on the recommended read-modify-write
cycle.
Parameter |
---|
Name | Description |
policy | com.google.cloud.Policy
|
Returns |
---|
Type | Description |
com.google.cloud.Policy | |
testIAMPermissions(Iterable<String> permissions)
public Iterable<String> testIAMPermissions(Iterable<String> permissions)
Tests for the given permissions on this database for the caller.
Parameter |
---|
Name | Description |
permissions | Iterable<String>
the permissions to test for. Permissions with wildcards (such as '',
'spanner.', 'spanner.instances.*') are not allowed.
|
Returns |
---|
Type | Description |
Iterable<String> | the subset of the tested permissions that the caller is allowed.
|
updateDdl(Iterable<String> statements, String operationId)
public OperationFuture<Void,UpdateDatabaseDdlMetadata> updateDdl(Iterable<String> statements, String operationId)
Enqueues the given DDL statements to be applied, in order but not necessarily all at once, to
the database schema at some point (or points) in the future. The server checks that the
statements are executable (syntactically valid, name tables that exist, etc.) before enqueueing
them, but they may still fail upon later execution (e.g., if a statement from another batch of
statements is applied first and it conflicts in some way, or if there is some data-related
problem like a NULL
value in a column to which NOT NULL
would be added). If a statement
fails, all subsequent statements in the batch are automatically cancelled.
Parameters |
---|
Name | Description |
statements | Iterable<String>
|
operationId | String
Operation id assigned to this operation. If null, system will autogenerate
one. This must be unique within a database abd must be a valid identifier
a-zA-Z*.
|