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