MCPcopy Index your code
hub / github.com/bytebase/bytebase / insertAllColumns

Method insertAllColumns

backend/plugin/parser/tsql/completion.go:162–195  ·  view source on GitHub ↗
(c *Completer)

Source from the content-addressed store, hash-verified

160}
161
162func (m CompletionMap) insertAllColumns(c *Completer) {
163 _, databaseMeta, err := c.metadataGetter(c.ctx, c.instanceID, c.defaultDatabase)
164 if err != nil {
165 return
166 }
167 for _, schema := range databaseMeta.ListSchemaNames() {
168 schemaMeta := databaseMeta.GetSchemaMetadata(schema)
169 if schemaMeta == nil {
170 continue
171 }
172 for _, table := range schemaMeta.ListTableNames() {
173 tableMeta := schemaMeta.GetTable(table)
174 if tableMeta == nil {
175 continue
176 }
177 for _, column := range tableMeta.GetProto().GetColumns() {
178 columnID := getColumnID(c.defaultDatabase, schema, table, column.Name)
179 if _, ok := m[columnID]; !ok {
180 definition := fmt.Sprintf("%s.%s.%s | %s", c.defaultDatabase, schema, table, column.Type)
181 if !column.Nullable {
182 definition += ", NOT NULL"
183 }
184 m[columnID] = base.Candidate{
185 Type: base.CandidateTypeColumn,
186 Text: c.quotedIdentifierIfNeeded(column.Name),
187 Definition: definition,
188 Comment: column.Comment,
189 Priority: c.getPriority(c.defaultDatabase, schema, table),
190 }
191 }
192 }
193 }
194 }
195}
196
197func (c *Completer) getPriority(database string, schema string, table string) int {
198 if database == "" {

Callers 1

convertCandidatesMethod · 0.45

Calls 9

getColumnIDFunction · 0.85
ListSchemaNamesMethod · 0.80
GetSchemaMetadataMethod · 0.80
ListTableNamesMethod · 0.80
getPriorityMethod · 0.80
GetTableMethod · 0.45
GetColumnsMethod · 0.45
GetProtoMethod · 0.45

Tested by

no test coverage detected