@@ -21,7 +21,10 @@ var _ datasource.TypeMapper = typeMapper{}
2121type typeMapper struct {}
2222
2323//nolint:gocyclo
24- func (typeMapper ) SQLTypeToYDBColumn (columnName , typeName string , rules * api_service_protos.TTypeMappingSettings ) (* Ydb.Column , error ) {
24+ func (typeMapper ) SQLTypeToYDBColumn (
25+ columnDescription * datasource.ColumnDescription ,
26+ rules * api_service_protos.TTypeMappingSettings ,
27+ ) (* Ydb.Column , error ) {
2528 var (
2629 ydbType * Ydb.Type
2730 err error
@@ -31,7 +34,7 @@ func (typeMapper) SQLTypeToYDBColumn(columnName, typeName string, rules *api_ser
3134
3235 // MS SQL Server Data Types https://learn.microsoft.com/ru-ru/sql/t-sql/data-types/data-types-transact-sql?view=sql-server-ver16
3336 // Reference table: https://github.com/ydb-platform/fq-connector-go/blob/main/docs/type_mapping_table.md
34- switch typeName {
37+ switch columnDescription . Type {
3538 case "bit" :
3639 ydbType = common .MakePrimitiveType (Ydb .Type_BOOL )
3740 case "tinyint" :
@@ -72,17 +75,17 @@ func (typeMapper) SQLTypeToYDBColumn(columnName, typeName string, rules *api_ser
7275 return nil , fmt .Errorf ("make YDB date time type: %w" , err )
7376 }
7477 default :
75- return nil , fmt .Errorf ("convert type '%s': %w" , typeName , common .ErrDataTypeNotSupported )
78+ return nil , fmt .Errorf ("convert type '%s': %w" , columnDescription . Type , common .ErrDataTypeNotSupported )
7679 }
7780
7881 if err != nil {
79- return nil , fmt .Errorf ("convert type '%s': %w" , typeName , err )
82+ return nil , fmt .Errorf ("convert type '%s': %w" , columnDescription . Type , err )
8083 }
8184
8285 ydbType = common .MakeOptionalType (ydbType )
8386
8487 return & Ydb.Column {
85- Name : columnName ,
88+ Name : columnDescription . Name ,
8689 Type : ydbType ,
8790 }, nil
8891}
0 commit comments