4
required string name = 1;
5
required string engine = 2;
10
message StorageEngine {
12
message EngineOption {
13
enum EngineOptionType {
19
required string name = 1;
20
required string value = 2;
21
required EngineOptionType type = 3;
24
required string name = 1;
25
repeated EngineOption option = 2;
28
message TableOptions {
29
optional uint64 auto_increment = 1;
30
optional string charset = 2;
31
optional string collation = 3;
35
optional uint32 avg_row_length = 1;
36
optional uint64 max_rows = 2;
37
optional uint32 min_rows = 3;
40
message ForeignKeyConstraint {
41
required string name = 1;
42
required Field dependent = 2;
43
required Field parent = 3;
44
/** @TODO Finish this off... */
68
message FieldOptions {
69
optional string default_value = 2;
72
message TimestampFieldOptions {
73
optional bool auto_updates = 1 [default = false];
76
message FieldConstraints {
77
required bool is_nullable = 1 [default = false];
78
optional bool is_unsigned = 2 [default = false];
79
repeated string expression = 16; /* Reserve 0-15 for frequenty accessed attributes */
82
message NumericFieldOptions {
83
optional bool is_autoincrement = 1 [default = false];
84
optional int32 length = 2;
85
optional int32 scale = 3;
86
optional int32 precision = 4;
89
message StringFieldOptions {
90
optional bool is_fixed_width = 1 [default = false];
91
optional int32 length = 2;
92
optional string charset = 3; /* Perhaps this can go away soon...*/
93
optional string collation = 4;
96
message SetFieldOptions {
97
required int32 count_elements = 1;
98
repeated string value = 2;
27
101
required string name = 1;
28
102
required FieldType type = 2;
29
optional string collation = 3;
30
optional string comment = 4;
31
optional bool unique = 5;
32
optional bool autoincrement = 6;
33
optional bool key = 7;
34
optional bool primary = 8;
35
optional bool is_unsigned = 9;
36
optional string custom_name = 10;
37
optional bool is_notnull = 11 [default = false];
38
optional int32 scale = 12;
39
optional string characterset = 13;
40
optional int32 length = 14;
41
optional string default_value = 15;
42
repeated string values = 16;
43
optional bool on_update = 17;
47
required string name = 1;
48
optional int32 length = 2;
103
optional FieldOptions options = 3;
104
optional FieldConstraints constraints = 4;
105
optional NumericFieldOptions numeric_options = 5;
106
optional StringFieldOptions string_options = 6;
107
optional string comment = 16; /* Reserve 0-15 for frequently accessed attributes */
108
optional SetFieldOptions set_options = 17;
109
optional TimestampFieldOptions timestamp_options = 18;
123
required Field field = 1;
124
optional int32 compare_length = 2;
125
optional bool in_reverse_order = 3 [default = false];
57
128
required string name = 1;
58
repeated KeyPart values = 2;
59
optional bool primary = 4;
60
optional int32 key_block_size = 5;
61
optional IndexType type = 6;
129
required bool is_primary = 2;
130
required bool is_unique = 3;
131
required IndexType type = 4 [default = UNKNOWN];
132
repeated IndexPart index_part = 5;
64
repeated Field field = 4;
65
repeated Index index = 5;
67
optional string primary = 6;
68
optional int32 auto_increment = 7;
69
optional int32 avg_row_length = 8;
70
optional string character_set = 9;
71
optional bool checksum = 10;
72
optional string collation = 11;
73
optional string comment = 12;
74
optional string connection = 13;
75
optional string data_directory = 14;
76
optional string index_directory = 15;
77
optional bool delay_key_write = 16;
78
optional int32 max_rows = 17;
79
optional int32 min_rows = 18;
80
optional bool pack_keys = 19;
81
optional string row_format = 20;
82
optional string characterset = 21;
83
optional bool temp = 22;
135
required string name = 1;
136
required TableType type = 5;
137
required StorageEngine engine = 2;
138
repeated Field field = 3;
139
repeated Index index = 4;
141
repeated ForeignKeyConstraint fk_constraint = 8;
142
optional TableOptions options = 9;
143
optional TableStats stats = 10;
145
optional string comment = 16;
86
148
message TableList {