func (f *FluxColumn) SetDataType(dataType string) {
	f.dataType = dataType
}
SetDataType sets data type for the column
package query
import (
	"fmt"
	"strings"
	"time"
)
type FluxTableMetadata struct {
	position int
	columns  []*FluxColumn
}
type FluxColumn struct {
	index        int
	name         string
	dataType     string
	group        bool
	defaultValue string
}
type FluxRecord struct {
	table  int
	values map[string]interface{}
}
func NewFluxTableMetadata(position int) *FluxTableMetadata {
	return NewFluxTableMetadataFull(position, make([]*FluxColumn, 0, 10))
}
func NewFluxTableMetadataFull(position int, columns []*FluxColumn) *FluxTableMetadata {
	return &FluxTableMetadata{position: position, columns: columns}
}
func (f *FluxTableMetadata) Position() int {
	return f.position
}
func (f *FluxTableMetadata) Columns() []*FluxColumn {
	return f.columns
}
func (f *FluxTableMetadata) AddColumn(column *FluxColumn) *FluxTableMetadata {
	f.columns = append(f.columns, column)
	return f
}
func (f *FluxTableMetadata) Column(index int) *FluxColumn {
	if len(f.columns) == 0 || index < 0 || index >= len(f.columns) {
		return nil
	}
	return f.columns[index]
}
func (f *FluxTableMetadata) String() string {
	var buffer strings.Builder
	for i, c := range f.columns {
		if i > 0 {
			buffer.WriteString(",")
		}
		buffer.WriteString("col")
		buffer.WriteString(c.String())
	}
	return buffer.String()
}
func NewFluxColumn(index int) *FluxColumn {
	return &FluxColumn{index: index}
}
func NewFluxColumnFull(dataType string, defaultValue string, name string, group bool, index int) *FluxColumn {
	return &FluxColumn{index: index, name: name, dataType: dataType, group: group, defaultValue: defaultValue}
}
func (f *FluxColumn) SetDefaultValue(defaultValue string) {
	f.defaultValue = defaultValue
}
func (f *FluxColumn) SetGroup(group bool) {
	f.group = group
}