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