in internal/database/mysql/mysql.go [396:420]
func (h mysqlHandler) GetColumnComment(ctx context.Context, db *database.DB, tableName string, columnName string) (string, error) {
query := `
SELECT column_comment
FROM information_schema.columns
WHERE table_name = ?
AND column_name = ?
AND table_schema = DATABASE();
`
var comment sql.NullString // Use sql.NullString to handle NULL values
err := db.QueryRowContext(ctx, query, tableName, columnName).Scan(&comment)
if err != nil {
if err == sql.ErrNoRows {
return "", nil // No comment found, return empty string
}
return "", fmt.Errorf("failed to retrieve column comment: %w", err)
}
if comment.Valid {
return comment.String, nil
} else {
return "", nil // Comment is NULL in DB, return empty string
}
}