SQLObject is een veel gebruikte, vrij verspreid open source ORM (Object Relational Manager), ook bekend als databank wrapper, in Python uitgevoerd en ontworpen voor gebruik als een object interface naar een database met tafels klassen , kolommen en rijen attributen als voorbeelden.
De software wordt geleverd met een Python-object-gebaseerde query-taal die wordt gebruikt door develoopers aanzienlijke gegevensbestand onafhankelijk aan alle applicaties, alsmede SQL meer abstraheren.
Ondersteunt alle belangrijke databaseservers / motoren
Een ander interessant aspect van de SQLObject project, is dat het ondersteunt alle belangrijke database-servers en database-engines, waaronder de bekende MySQL, PostgreSQL, Firebird, SQLite, Microsoft SQL Server, MaxDB (SAPDB), en Sybase. Het is compatibel met zowel Python 2.6 of 2.7 programmeertalen.
Verplichte voorbeeld
De volgende regels code zal Python / SQL ontwikkelaars die de SQLObject software werkt tonen ...
>>> van sqlobject import *
>>>
>>> sqlhub.processConnection = connectionForURI ('sqlite: /: geheugen:')
>>>
>>> class Persoon (SQLObject):
... fname = StringCol ()
... mi = StringCol (lengte = 1, default = None)
... lname = StringCol ()
...
>>> Person.createTable ()
... en hoe je het object moet gebruiken ...
>>> p = Persoon (fname = "John", lname = "Doe")
>>> p
>>> p.fname
'John'
>>> p.mi = 'Q'
>>> p2 = Person.get (1)
>>> p2
>>> p p2
True
Draait op elk besturingssysteem ondersteund door Python
Wordt geschreven in Python, SQLObject is cross-platform, ondersteund op alle besturingssystemen, waar Python 2.6 en Python 2.7 zijn beschikbaar, met inbegrip van alle GNU / Linux distributies, evenals de Microsoft Windows en Mac OS X-besturingssystemen.
Het gemakkelijk gemakkelijk te installeren van zowel de bron-pakket, met behulp van de & lsquo; sudo python setup.py installeren & rsquo; commando in de hoofdmap, of easy_install, met behulp van de & lsquo; easy_install -U SQLObject & rsquo; commando in een terminal emulator aanvraag.
De software is succesvol getest met computers ter ondersteuning van een van de 32 of 64-bit instructieset architecturen. Voor meer informatie, kijk dan op haar officiële website (zie homepage link hieronder)
Wat is nieuw in deze release:.
< ul>
Wat is nieuw in versie 2.1.0:
- Minor kenmerken:
- In queries gegenereerd met SQLObject tabellen kolommen worden gesorteerd in de volgorde waarin ze worden gedeclareerd in de tabel.
- In queries gegenereerd met sqlbuilder Invoegen / bijwerken, indien waarden worden doorgegeven met behulp van woordenboeken, kolommen worden alfabetisch gesorteerd.
- Lijsten in SELECT ... FROM-component worden alfabetisch gesorteerd.
- MySqlConnection, PostgresConnection en SQLiteConnection heb een nieuwe methode listDatabases () die databases lijsten in de verbinding en geeft een lijst met namen.
- MySqlConnection, PostgresConnection en SQLiteConnection heb een nieuwe methode listTables (), die een lijst van tabelnamen in de database terug.
Wat is nieuw in versie 1.5.0:
- Kenmerken & Interface:
- Helpers voor klasse Outer werden veranderd om kolommen in de verklaringen tabel opzoeken.
- Ondersteuning voor Python 2.4 is achterhaald verklaard en zal in de volgende release worden verwijderd.
- Minor kenmerken:
- Wanneer een PostgresConnection werpt een uitzondering het geval is code / fout attributen gekopieerd van psycopg2's pgcode / pgerror attributen.
- Encode Unicode enum waarden Str.
- Verwijderd setDeprecationLevel uit de lijst met publieke functies.
- Een aantal fixes voor tests.
- Bugfixes:
- Een bug werd vastgesteld in DBConnection.close (); close () niet verhogen een UnboundLocalError als de verbinding zwembad is leeg.
- Vaste parameters voor pymssql.
- Documentatie:
- GNU LGPL tekst werd toegevoegd als docs / licentiebestand.
- Oude FSF-adres is gewijzigd in de nieuwe.
Wat is nieuw in versie 1.4.0:.
- PostgresConnection werd geoptimaliseerd
- SQLObject gebruikt nu INSERT ... TERUG id aan de autoincremented ID krijgen in een vraag in plaats van twee (INSERT + SELECT id) (PostgreSQL 8.2 vereist).
- SQLObject genereert nu NCHAR / NVARCHAR en N '- geciteerd snaren voor MS SQL .
Wat is nieuw in versie 1.2.0:
- Strings zijn speciaal behandeld Selecteer om Select toestaan ( ['id,' naam '], waarbij =' value = 42 ').
- ForeignKey ('Table', refColumn = 'refcol_id') kan ForeignKey te wijzen op een non-id kolom.
- Ondersteuning voor PostgreSQL 7. * is gedaald; de minimale ondersteunde versie van PostgreSQL is 8.1.
- citeren regels zijn veranderd voor PostgreSQL: SQLObject maakt gebruik van de E '' escape reeks .
- Een bug veroorzaakt door psycopg2 onlangs het toevoegen van een nieuwe Booleaanse niet-vervroegd aflosbare attribuut autocommit werd vastgesteld.
- sqlobject .__ doc__ en belangrijkste .__ doc__ niet meer het versienummer bevatten:. gebruik sqlobject.version of version_info
Wat is nieuw in versie 1.1.2:
- Een bug werd vastgesteld in SelectResults slicing dat u verhinderd snijden van een segment (bijvoorbeeld my_results [20] [1: 5]).
Wat is nieuw in versie 0.12.2.
- Bugfixes overgedragen van SQLObject 0.11.4
Wat is nieuw in versie 0.10.6:
- Betere ondersteuning voor Python 2.6: niet importeren deprecated sets module.
- Een aantal veranderingen overgedragen van SQLObject 0.9.11.
Wat is nieuw in versie 0.10.4:
- createSQL dringt generatie is vastgesteld in het kader van MySQL als de Naam tabel bevat de naam van de database (bevat een punt).
Wat is nieuw in versie 0.10.3:
- Gewijzigde interpretatie van strings in de DB URI voor boolean parameters:. '0', 'nee', 'uit' en 'valse' worden nu geïnterpreteerd als False
- Fixed a bug met onjuiste afhandeling van gesprekken, zoals connectionForURI (dburi, cache = false) wanneer dburi bevat al enkele parameters in de URI.
- Zet decimal.to_eng_string () STR om te werken rond een bug in Python 2.5.2; zie http://mail.python.org/pipermail/python-dev/2008-March/078189.html
- Toegevoegd test_default_style.py.
- Vast een kleine bug in SQLiteConnection die niet aan Enum kolommen ontleden.
Eisen
- Python
Reacties niet gevonden