23 lines
594 B
Go
23 lines
594 B
Go
package commontypes
|
|
|
|
import "strings"
|
|
|
|
// ExtractBaseType extracts the base type from a SQL type string
|
|
// Examples: varchar(100) → varchar, numeric(10,2) → numeric
|
|
func ExtractBaseType(sqlType string) string {
|
|
sqlType = strings.ToLower(strings.TrimSpace(sqlType))
|
|
|
|
// Remove everything after '('
|
|
if idx := strings.Index(sqlType, "("); idx > 0 {
|
|
sqlType = sqlType[:idx]
|
|
}
|
|
|
|
return sqlType
|
|
}
|
|
|
|
// NormalizeType normalizes a SQL type to its base form
|
|
// Alias for ExtractBaseType for backwards compatibility
|
|
func NormalizeType(sqlType string) string {
|
|
return ExtractBaseType(sqlType)
|
|
}
|