Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
1Metadata-Version: 2.4
2Name: SQLAlchemy
3Version: 2.0.49
4Summary: Database Abstraction Library
5Home-page: https://www.sqlalchemy.org
6Author: Mike Bayer
7Author-email: mike_mp@zzzcomputing.com
8License: MIT
9Project-URL: Documentation, https://docs.sqlalchemy.org
10Project-URL: Issue Tracker, https://github.com/sqlalchemy/sqlalchemy/
11Classifier: Development Status :: 5 - Production/Stable
12Classifier: Intended Audience :: Developers
13Classifier: Operating System :: OS Independent
14Classifier: Programming Language :: Python
15Classifier: Programming Language :: Python :: 3
16Classifier: Programming Language :: Python :: 3.7
17Classifier: Programming Language :: Python :: 3.8
18Classifier: Programming Language :: Python :: 3.9
19Classifier: Programming Language :: Python :: 3.10
20Classifier: Programming Language :: Python :: 3.11
21Classifier: Programming Language :: Python :: 3.12
22Classifier: Programming Language :: Python :: 3.13
23Classifier: Programming Language :: Python :: Implementation :: CPython
24Classifier: Programming Language :: Python :: Implementation :: PyPy
25Classifier: Topic :: Database :: Front-Ends
26Requires-Python: >=3.7
27Description-Content-Type: text/x-rst
28License-File: LICENSE
29Requires-Dist: importlib-metadata; python_version < "3.8"
30Requires-Dist: greenlet>=1; platform_machine == "aarch64" or (platform_machine == "ppc64le" or (platform_machine == "x86_64" or (platform_machine == "amd64" or (platform_machine == "AMD64" or (platform_machine == "win32" or platform_machine == "WIN32")))))
31Requires-Dist: typing-extensions>=4.6.0
32Provides-Extra: asyncio
33Requires-Dist: greenlet>=1; extra == "asyncio"
34Provides-Extra: mypy
35Requires-Dist: mypy>=0.910; extra == "mypy"
36Provides-Extra: mssql
37Requires-Dist: pyodbc; extra == "mssql"
38Provides-Extra: mssql-pymssql
39Requires-Dist: pymssql; extra == "mssql-pymssql"
40Provides-Extra: mssql-pyodbc
41Requires-Dist: pyodbc; extra == "mssql-pyodbc"
42Provides-Extra: mysql
43Requires-Dist: mysqlclient>=1.4.0; extra == "mysql"
44Provides-Extra: mysql-connector
45Requires-Dist: mysql-connector-python; extra == "mysql-connector"
46Provides-Extra: mariadb-connector
47Requires-Dist: mariadb!=1.1.10,!=1.1.2,!=1.1.5,>=1.0.1; extra == "mariadb-connector"
48Provides-Extra: oracle
49Requires-Dist: cx_oracle>=8; extra == "oracle"
50Provides-Extra: oracle-oracledb
51Requires-Dist: oracledb>=1.0.1; extra == "oracle-oracledb"
52Provides-Extra: postgresql
53Requires-Dist: psycopg2>=2.7; extra == "postgresql"
54Provides-Extra: postgresql-pg8000
55Requires-Dist: pg8000>=1.29.1; extra == "postgresql-pg8000"
56Provides-Extra: postgresql-asyncpg
57Requires-Dist: greenlet>=1; extra == "postgresql-asyncpg"
58Requires-Dist: asyncpg; extra == "postgresql-asyncpg"
59Provides-Extra: postgresql-psycopg2binary
60Requires-Dist: psycopg2-binary; extra == "postgresql-psycopg2binary"
61Provides-Extra: postgresql-psycopg2cffi
62Requires-Dist: psycopg2cffi; extra == "postgresql-psycopg2cffi"
63Provides-Extra: postgresql-psycopg
64Requires-Dist: psycopg>=3.0.7; extra == "postgresql-psycopg"
65Provides-Extra: postgresql-psycopgbinary
66Requires-Dist: psycopg[binary]>=3.0.7; extra == "postgresql-psycopgbinary"
67Provides-Extra: pymysql
68Requires-Dist: pymysql; extra == "pymysql"
69Provides-Extra: aiomysql
70Requires-Dist: greenlet>=1; extra == "aiomysql"
71Requires-Dist: aiomysql>=0.2.0; extra == "aiomysql"
72Provides-Extra: aioodbc
73Requires-Dist: greenlet>=1; extra == "aioodbc"
74Requires-Dist: aioodbc; extra == "aioodbc"
75Provides-Extra: asyncmy
76Requires-Dist: greenlet>=1; extra == "asyncmy"
77Requires-Dist: asyncmy!=0.2.4,!=0.2.6,>=0.2.3; extra == "asyncmy"
78Provides-Extra: aiosqlite
79Requires-Dist: greenlet>=1; extra == "aiosqlite"
80Requires-Dist: aiosqlite; extra == "aiosqlite"
81Requires-Dist: typing_extensions!=3.10.0.1; extra == "aiosqlite"
82Provides-Extra: sqlcipher
83Requires-Dist: sqlcipher3_binary; extra == "sqlcipher"
84Dynamic: license-file
85
86SQLAlchemy
87==========
88
89|PyPI| |Python| |Downloads|
90
91.. |PyPI| image:: https://img.shields.io/pypi/v/sqlalchemy
92    :target: https://pypi.org/project/sqlalchemy
93    :alt: PyPI
94
95.. |Python| image:: https://img.shields.io/pypi/pyversions/sqlalchemy
96    :target: https://pypi.org/project/sqlalchemy
97    :alt: PyPI - Python Version
98
99.. |Downloads| image:: https://static.pepy.tech/badge/sqlalchemy/month
100    :target: https://pepy.tech/project/sqlalchemy
101    :alt: PyPI - Downloads
102
103
104The Python SQL Toolkit and Object Relational Mapper
105
106Introduction
107-------------
108
109SQLAlchemy is the Python SQL toolkit and Object Relational Mapper
110that gives application developers the full power and
111flexibility of SQL. SQLAlchemy provides a full suite
112of well known enterprise-level persistence patterns,
113designed for efficient and high-performing database
114access, adapted into a simple and Pythonic domain
115language.
116
117Major SQLAlchemy features include:
118
119* An industrial strength ORM, built
120  from the core on the identity map, unit of work,
121  and data mapper patterns.   These patterns
122  allow transparent persistence of objects
123  using a declarative configuration system.
124  Domain models
125  can be constructed and manipulated naturally,
126  and changes are synchronized with the
127  current transaction automatically.
128* A relationally-oriented query system, exposing
129  the full range of SQL's capabilities
130  explicitly, including joins, subqueries,
131  correlation, and most everything else,
132  in terms of the object model.
133  Writing queries with the ORM uses the same
134  techniques of relational composition you use
135  when writing SQL.  While you can drop into
136  literal SQL at any time, it's virtually never
137  needed.
138* A comprehensive and flexible system
139  of eager loading for related collections and objects.
140  Collections are cached within a session,
141  and can be loaded on individual access, all
142  at once using joins, or by query per collection
143  across the full result set.
144* A Core SQL construction system and DBAPI
145  interaction layer.  The SQLAlchemy Core is
146  separate from the ORM and is a full database
147  abstraction layer in its own right, and includes
148  an extensible Python-based SQL expression
149  language, schema metadata, connection pooling,
150  type coercion, and custom types.
151* All primary and foreign key constraints are
152  assumed to be composite and natural.  Surrogate
153  integer primary keys are of course still the
154  norm, but SQLAlchemy never assumes or hardcodes
155  to this model.
156* Database introspection and generation.  Database
157  schemas can be "reflected" in one step into
158  Python structures representing database metadata;
159  those same structures can then generate
160  CREATE statements right back out - all within
161  the Core, independent of the ORM.
162
163SQLAlchemy's philosophy:
164
165* SQL databases behave less and less like object
166  collections the more size and performance start to
167  matter; object collections behave less and less like
168  tables and rows the more abstraction starts to matter.
169  SQLAlchemy aims to accommodate both of these
170  principles.
171* An ORM doesn't need to hide the "R".   A relational
172  database provides rich, set-based functionality
173  that should be fully exposed.   SQLAlchemy's
174  ORM provides an open-ended set of patterns
175  that allow a developer to construct a custom
176  mediation layer between a domain model and
177  a relational schema, turning the so-called
178  "object relational impedance" issue into
179  a distant memory.
180* The developer, in all cases, makes all decisions
181  regarding the design, structure, and naming conventions
182  of both the object model as well as the relational
183  schema.   SQLAlchemy only provides the means
184  to automate the execution of these decisions.
185* With SQLAlchemy, there's no such thing as
186  "the ORM generated a bad query" - you
187  retain full control over the structure of
188  queries, including how joins are organized,
189  how subqueries and correlation is used, what
190  columns are requested.  Everything SQLAlchemy
191  does is ultimately the result of a developer-initiated 
192  decision.
193* Don't use an ORM if the problem doesn't need one.
194  SQLAlchemy consists of a Core and separate ORM
195  component.   The Core offers a full SQL expression
196  language that allows Pythonic construction
197  of SQL constructs that render directly to SQL
198  strings for a target database, returning
199  result sets that are essentially enhanced DBAPI
200  cursors.
201* Transactions should be the norm.  With SQLAlchemy's
202  ORM, nothing goes to permanent storage until
203  commit() is called.  SQLAlchemy encourages applications
204  to create a consistent means of delineating
205  the start and end of a series of operations.
206* Never render a literal value in a SQL statement.
207  Bound parameters are used to the greatest degree
208  possible, allowing query optimizers to cache
209  query plans effectively and making SQL injection
210  attacks a non-issue.
211
212Documentation
213-------------
214
215Latest documentation is at:
216
217https://www.sqlalchemy.org/docs/
218
219Installation / Requirements
220---------------------------
221
222Full documentation for installation is at
223`Installation <https://www.sqlalchemy.org/docs/intro.html#installation>`_.
224
225Getting Help / Development / Bug reporting
226------------------------------------------
227
228Please refer to the `SQLAlchemy Community Guide <https://www.sqlalchemy.org/support.html>`_.
229
230Code of Conduct
231---------------
232
233Above all, SQLAlchemy places great emphasis on polite, thoughtful, and
234constructive communication between users and developers.
235Please see our current Code of Conduct at
236`Code of Conduct <https://www.sqlalchemy.org/codeofconduct.html>`_.
237
238License
239-------
240
241SQLAlchemy is distributed under the `MIT license
242<https://www.opensource.org/licenses/mit-license.php>`_.
243
244 
codekingpro/portable-devtools · Team Ai