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

Function convertValue

backend/plugin/db/bigquery/bigquery.go:331–374  ·  view source on GitHub ↗
(v bigquery.Value, fieldType bigquery.FieldType)

Source from the content-addressed store, hash-verified

329}
330
331func convertValue(v bigquery.Value, fieldType bigquery.FieldType) *v1pb.RowValue {
332 if v == nil {
333 return &v1pb.RowValue{Kind: &v1pb.RowValue_NullValue{NullValue: structpb.NullValue_NULL_VALUE}}
334 }
335 switch fieldType {
336 case bigquery.StringFieldType:
337 if s, ok := v.(string); ok {
338 return &v1pb.RowValue{Kind: &v1pb.RowValue_StringValue{StringValue: s}}
339 }
340 case bigquery.BytesFieldType:
341 if bytes, ok := v.([]byte); ok {
342 return &v1pb.RowValue{Kind: &v1pb.RowValue_BytesValue{BytesValue: bytes}}
343 }
344 case bigquery.IntegerFieldType:
345 if i, ok := v.(int64); ok {
346 return &v1pb.RowValue{Kind: &v1pb.RowValue_Int64Value{Int64Value: i}}
347 }
348 case bigquery.FloatFieldType:
349 if f, ok := v.(float64); ok {
350 return &v1pb.RowValue{Kind: &v1pb.RowValue_DoubleValue{DoubleValue: f}}
351 }
352 case bigquery.BooleanFieldType:
353 if b, ok := v.(bool); ok {
354 return &v1pb.RowValue{Kind: &v1pb.RowValue_BoolValue{BoolValue: b}}
355 }
356 case bigquery.TimestampFieldType:
357 case bigquery.RecordFieldType:
358 case bigquery.DateFieldType:
359 case bigquery.TimeFieldType:
360 case bigquery.DateTimeFieldType:
361 case bigquery.NumericFieldType:
362 case bigquery.GeographyFieldType:
363 case bigquery.BigNumericFieldType:
364 case bigquery.IntervalFieldType:
365 case bigquery.JSONFieldType:
366 case bigquery.RangeFieldType:
367 default:
368 // Unknown field type, will fall back to string representation
369 }
370
371 // Fall back to string representation.
372 s := fmt.Sprintf("%v", v)
373 return &v1pb.RowValue{Kind: &v1pb.RowValue_StringValue{StringValue: s}}
374}

Callers 1

QueryConnMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected