MCPcopy Create free account
hub / github.com/sqlalchemy/sqlalchemy / Values

Class Values

lib/sqlalchemy/sql/selectable.py:3326–3480  ·  view source on GitHub ↗

Represent a ``VALUES`` construct that can be used as a FROM element in a statement. The :class:`_expression.Values` object is created from the :func:`_expression.values` function. .. versionadded:: 1.4

Source from the content-addressed store, hash-verified

3324
3325
3326class Values(roles.InElementRole, HasCTE, Generative, LateralFromClause):
3327 """Represent a ``VALUES`` construct that can be used as a FROM element
3328 in a statement.
3329
3330 The :class:`_expression.Values` object is created from the
3331 :func:`_expression.values` function.
3332
3333 .. versionadded:: 1.4
3334
3335 """
3336
3337 __visit_name__ = "values"
3338
3339 _data: Tuple[Sequence[Tuple[Any, ...]], ...] = ()
3340 _column_args: Tuple[NamedColumn[Any], ...]
3341
3342 _unnamed: bool
3343 _traverse_internals: _TraverseInternalsType = [
3344 ("_column_args", InternalTraversal.dp_clauseelement_list),
3345 ("_data", InternalTraversal.dp_dml_multi_values),
3346 ("name", InternalTraversal.dp_string),
3347 ("literal_binds", InternalTraversal.dp_boolean),
3348 ] + HasCTE._has_ctes_traverse_internals
3349
3350 name_cte_columns = True
3351
3352 def __init__(
3353 self,
3354 *columns: _OnlyColumnArgument[Any],
3355 name: Optional[str] = None,
3356 literal_binds: bool = False,
3357 ):
3358 super().__init__()
3359 self._column_args = tuple(
3360 coercions.expect(roles.LabeledColumnExprRole, col)
3361 for col in columns
3362 )
3363
3364 if name is None:
3365 self._unnamed = True
3366 self.name = _anonymous_label.safe_construct(id(self), "anon")
3367 else:
3368 self._unnamed = False
3369 self.name = name
3370 self.literal_binds = literal_binds
3371 self.named_with_column = not self._unnamed
3372
3373 @property
3374 def _column_types(self) -> List[TypeEngine[Any]]:
3375 return [col.type for col in self._column_args]
3376
3377 @util.ro_non_memoized_property
3378 def _all_selected_columns(self) -> _SelectIterable:
3379 return self._column_args
3380
3381 @_generative
3382 def alias(self, name: Optional[str] = None, flat: bool = False) -> Self:
3383 """Return a new :class:`_expression.Values`

Callers 1

valuesFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected