6fadcf8c7a
* move protobuf from GreptimeDB * add license check * add other github actions
80 lines
1.6 KiB
Protocol Buffer
80 lines
1.6 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package greptime.v1;
|
|
|
|
import "greptime/v1/column.proto";
|
|
|
|
// "Data Definition Language" requests, that create, modify or delete the database structures but not the data.
|
|
// `DdlRequest` could carry more information than plain SQL, for example, the "table_id" in `CreateTableExpr`.
|
|
// So create a new DDL expr if you need it.
|
|
message DdlRequest {
|
|
oneof expr {
|
|
CreateDatabaseExpr create_database = 1;
|
|
CreateTableExpr create_table = 2;
|
|
AlterExpr alter = 3;
|
|
DropTableExpr drop_table = 4;
|
|
}
|
|
}
|
|
|
|
message CreateTableExpr {
|
|
string catalog_name = 1;
|
|
string schema_name = 2;
|
|
string table_name = 3;
|
|
string desc = 4;
|
|
repeated ColumnDef column_defs = 5;
|
|
string time_index = 6;
|
|
repeated string primary_keys = 7;
|
|
bool create_if_not_exists = 8;
|
|
map<string, string> table_options = 9;
|
|
TableId table_id = 10;
|
|
repeated uint32 region_ids = 11;
|
|
}
|
|
|
|
message AlterExpr {
|
|
string catalog_name = 1;
|
|
string schema_name = 2;
|
|
string table_name = 3;
|
|
oneof kind {
|
|
AddColumns add_columns = 4;
|
|
DropColumns drop_columns = 5;
|
|
RenameTable rename_table = 6;
|
|
}
|
|
}
|
|
|
|
message DropTableExpr {
|
|
string catalog_name = 1;
|
|
string schema_name = 2;
|
|
string table_name = 3;
|
|
}
|
|
|
|
message CreateDatabaseExpr {
|
|
//TODO(hl): maybe rename to schema_name?
|
|
string database_name = 1;
|
|
bool create_if_not_exists = 2;
|
|
}
|
|
|
|
message AddColumns {
|
|
repeated AddColumn add_columns = 1;
|
|
}
|
|
|
|
message DropColumns {
|
|
repeated DropColumn drop_columns = 1;
|
|
}
|
|
|
|
message RenameTable {
|
|
string new_table_name = 1;
|
|
}
|
|
|
|
message AddColumn {
|
|
ColumnDef column_def = 1;
|
|
bool is_key = 2;
|
|
}
|
|
|
|
message DropColumn {
|
|
string name = 1;
|
|
}
|
|
|
|
message TableId {
|
|
uint32 id = 1;
|
|
}
|