MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / format_column

Method format_column

lib/sqlalchemy/sql/compiler.py:8244–8288  ·  view source on GitHub ↗

Prepare a quoted column name.

(
        self,
        column: ColumnElement[Any],
        use_table: bool = False,
        name: Optional[str] = None,
        table_name: Optional[str] = None,
        use_schema: bool = False,
        anon_map: Optional[Mapping[str, Any]] = None,
    )

Source from the content-addressed store, hash-verified

8242 return self.quote(name)
8243
8244 def format_column(
8245 self,
8246 column: ColumnElement[Any],
8247 use_table: bool = False,
8248 name: Optional[str] = None,
8249 table_name: Optional[str] = None,
8250 use_schema: bool = False,
8251 anon_map: Optional[Mapping[str, Any]] = None,
8252 ) -> str:
8253 """Prepare a quoted column name."""
8254
8255 if name is None:
8256 name = column.name
8257 assert name is not None
8258
8259 if anon_map is not None and isinstance(
8260 name, elements._truncated_label
8261 ):
8262 name = name.apply_map(anon_map)
8263
8264 if not getattr(column, "is_literal", False):
8265 if use_table:
8266 return (
8267 self.format_table(
8268 column.table, use_schema=use_schema, name=table_name
8269 )
8270 + "."
8271 + self.quote(name)
8272 )
8273 else:
8274 return self.quote(name)
8275 else:
8276 # literal textual elements get stuck into ColumnClause a lot,
8277 # which shouldn't get quoted
8278
8279 if use_table:
8280 return (
8281 self.format_table(
8282 column.table, use_schema=use_schema, name=table_name
8283 )
8284 + "."
8285 + name
8286 )
8287 else:
8288 return name
8289
8290 def format_table_seq(self, table, use_schema=True):
8291 """Format table name and schema as a tuple."""

Calls 3

format_tableMethod · 0.95
quoteMethod · 0.95
apply_mapMethod · 0.45

Tested by

no test coverage detected