ALTER BLOCKCHAIN (bSQL) | Blockpoint Docs
Modifies the current schema of a specified blockchain. For examples, see Examples.
Syntax​
ALTER BLOCKCHAIN { database_name.blockchain_name | blockchain_name }
{
ALTER COLUMN column_name <column_definition>
| ADD COLUMN <column_definition>
| DELETE COLUMN column_name
}
Full Syntax​
<column_definition> ::= (
{column_name <data_type>}
[ PACKED [= <bool>] | PADDED [= <bool>]]
[ NULLABLE [= <bool>] ]
[ DEFAULT VALUE = default_value ]
[ ENCRYPT = "key_name" ]
[ TRACK VALIDITY = '['"key_name" , validity_level']']
[ <column_constraint> [, ...n ] ]
[ CHECK '['logical_expression']']
[ COMPUTED '['computed_expression']']
)
Arguments​
database_name
The name of the database in which the blockchain was created.
blockchain_name
The name of the blockchain to be altered. If the blockchain isn't in the current database, you must explicitly specify the database.
ALTER COLUMN
Specifies that the named column is to be changed or altered.
The modified column can't be:
A column with a timestamp data type.
[!NOTE] Statistics that are automatically generated by the query optimizer are automatically dropped by ALTER COLUMN.
Used in a
PRIMARY KEY
,FOREIGN KEY
, orHISTORICAL REFERENCE
constraint.Has an index on it.
column_name
The name of the column to be altered, added, or dropped.
column_definition The new column to be added to the blockchain in case of an "ADD_COLUMN" command. Or the modified column definition for column_name in the case of an "ALTER COLUMN" command.
ADD COLUMN
Specifies that the new column to be added to the blockchain.
The additional column:
- Must have a
DEFAULT VALUE
specified, or be aNULLABLE
field unless the blockchain contains no data. - Can't be a
PRIMARY KEY
,FOREIGN KEY
, orHISTORICAL REFERENCE
. - Is appended to the end of the blockchain.
DELETE COLUMN
Specifies the column to dropped from the blockchain.
The deleted column can't be:
- A primary key or foreign key.
Permissions​
ALTER
permissions required on the target blockchain.
ALTER
permissions on a blockchain container default to members of the admin fixed database role.
Members of the admin role can transfer permissions to other users.
Examples​
Basic Syntax​
Examples in this section demonstrate the basic functionality of the ALTER BLOCKCHAIN statement using the minimum required syntax.A. Modifying a Column​
The following example alters the column named price
to be of type float64
blockchain.
ALTER BLOCKCHAIN financial.pricing
ALTER COLUMN price (price FLOAT64)
B. Adding a Column​
The following example adds the column named profitable
.
ALTER BLOCKCHAIN financial.companies
ADD COLUMN (profitable BOOL NULLABLE = TRUE)
C. Deleting a Column​
The following example deletes the column named 52_week_high
.
ALTER BLOCKCHAIN
DELETE COLUMN 52_week_high