1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
3 NAMEBASE= python-SQLAlchemy
7 SDESC[py310]= Database Abstraction Library (3.10)
8 SDESC[py39]= Database Abstraction Library (3.9)
9 HOMEPAGE= https://www.sqlalchemy.org
10 CONTACT= Python_Automaton[python@ironwolf.systems]
13 SITES[main]= PYPI/S/SQLAlchemy
14 DISTFILE[1]= SQLAlchemy-1.4.27.tar.gz:main
19 OPTIONS_AVAILABLE= PY39 PY310
20 OPTIONS_STANDARD= none
21 VOPTS[py310]= PY39=OFF PY310=ON
22 VOPTS[py39]= PY39=ON PY310=OFF
26 DISTNAME= SQLAlchemy-1.4.27
28 CPE_PRODUCT= sqlalchemy
29 CPE_VENDOR= sqlalchemy
32 [PY39].USES_ON= python:py39,sutools
34 [PY310].USES_ON= python:py310,sutools
36 [FILE:3699:descriptions/desc.single]
40 |PyPI| |Python| |Downloads|
44 :alt: PyPI - Python Version
46 :alt: PyPI - Downloads
48 The Python SQL Toolkit and Object Relational Mapper
53 SQLAlchemy is the Python SQL toolkit and Object Relational Mapper
54 that gives application developers the full power and
55 flexibility of SQL. SQLAlchemy provides a full suite
56 of well known enterprise-level persistence patterns,
57 designed for efficient and high-performing database
58 access, adapted into a simple and Pythonic domain
61 Major SQLAlchemy features include:
63 * An industrial strength ORM, built
64 from the core on the identity map, unit of work,
65 and data mapper patterns. These patterns
66 allow transparent persistence of objects
67 using a declarative configuration system.
69 can be constructed and manipulated naturally,
70 and changes are synchronized with the
71 current transaction automatically.
72 * A relationally-oriented query system, exposing
73 the full range of SQL's capabilities
74 explicitly, including joins, subqueries,
75 correlation, and most everything else,
76 in terms of the object model.
77 Writing queries with the ORM uses the same
78 techniques of relational composition you use
79 when writing SQL. While you can drop into
80 literal SQL at any time, it's virtually never
82 * A comprehensive and flexible system
83 of eager loading for related collections and objects.
84 Collections are cached within a session,
85 and can be loaded on individual access, all
86 at once using joins, or by query per collection
87 across the full result set.
88 * A Core SQL construction system and DBAPI
89 interaction layer. The SQLAlchemy Core is
90 separate from the ORM and is a full database
91 abstraction layer in its own right, and includes
92 an extensible Python-based SQL expression
93 language, schema metadata, connection pooling,
94 type coercion, and custom types.
95 * All primary and foreign key constraints are
96 assumed to be composite and natural. Surrogate
97 integer primary keys are of course still the
98 norm, but SQLAlchemy never assumes or hardcodes
100 * Database introspection and generation. Database
101 schemas can be "reflected" in one step into
102 Python structures representing database metadata;
103 those same structures can then generate
104 CREATE statements right back out - all within
105 the Core, independent of the ORM.
107 SQLAlchemy's philosophy:
109 * SQL databases behave less and less like object
110 collections the more size and performance start to
111 matter; object collections behave less and less like
112 tables and rows the more abstraction starts to matter.
113 SQLAlchemy aims to accommodate both of these
115 * An ORM doesn't need to hide the "R". A relational
116 database provides rich, set-based functionality
117 that should be fully exposed. SQLAlchemy's
118 ORM provides an open-ended set of patterns
119 that allow a developer to construct a custom
120 mediation layer between a domain model and
121 a relational schema, turning the so-called
122 "object relational impedance" issue into
124 * The developer, in all cases, makes all decisions
125 regarding the design, structure, and naming conventions
126 of both the object model as well as the relational
127 schema. SQLAlchemy only provides the means
128 to automate the execution of these decisions.
129 * With SQLAlchemy, there's no such thing as
130 "the ORM generated a bad query" - you
131 retain full control over the structure of
132 queries, including how joins are organized,
133 how subqueries and correlation is used, what
134 columns are requested. Everything SQLAlchemy
135 does is ultimately the result of a developer-
140 d768359daeb3a86644f3854c6659e4496a3e6bba2b4651ecc87ce7ad415b320c 7907686 SQLAlchemy-1.4.27.tar.gz