code: def pyarrow_type_to_duckdb_type_name(
      field_type: pa.Schema,
  ) -> Optional[str]:
      if field_type in (pa.utf8(), pa.large_utf8()):
          return "VARCHAR"
      elif field_type in (pa.float16(), pa.float32()):
          return "FLOAT"
      elif field_type == pa.float64():
          return "DOUBLE"
      elif field_type == pa.int8():
          return "TINYINT"
      elif field_type == pa.int16():
          return "SMALLINT"
      elif field_type == pa.int32():
          return "INTEGER"
      elif field_type == pa.int64():
          return "BIGINT"
      elif field_type == pa.uint8():
          return "UTINYINT"
      elif field_type == pa.uint16():
          return "USMALLINT"
      elif field_type == pa.uint32():
          return "UINTEGER"
      elif field_type == pa.uint64():
          return "UBIGINT"
      elif field_type == pa.bool_():
          return "BOOLEAN"
      elif field_type == pa.date32():
          return "DATE"
      else:
          return None
  
imports: import re
  import warnings
  from .None import SqlConnection, CsvReadOptions
  from typing import Dict, Optional
  from distutils.version import LooseVersion
  import duckdb
  import pyarrow
  import pyarrow.feather
  import pandas
  import logging
  import uuid
label_desc: Use image node_id 3 for calling a global function with example usage: pyarrow_type_to_duckdb_type_name(field_type) and returns: str, str, str, str, str, str, str, str, str, str, str, str, str, None