SQLObject er et mye brukt, fritt distribueres og åpen kildekode ORM (Object Relational leder), også kjent som database wrapper, implementert i Python og designet for å brukes som et objekt grensesnitt til en database, med tabeller som klasser , kolonner som attributter og rader som instanser.
Programvaren leveres med en Python-objektbasert spørrespråk, som vil bli brukt av develoopers å gi betydelig database uavhengighet til alle programmer, så vel som å gjøre SQL mer abstrakt.
Støtter alle store database servere / motorer
Et annet interessant trekk ved SQLObject prosjektet, er at den støtter alle de store databaseservere og databasemotorer, inkludert den velkjente MySQL, PostgreSQL, Firebird, SQLite, Microsoft SQL Server, MaxDB (SAPDB), og Sybase. Den er kompatibel med både Python 2.6 eller 2.7 programmeringsspråk.
Obligatorisk eksempel
Følgende linjer med kode vil vise Python / SQL-utviklere som den SQLObject programvaren fungerer ...
>>> fra sqlobject import *
>>>
>>> sqlhub.processConnection = connectionForURI ('sqlite: /: minne:')
>>>
>>> class Person (SQLObject):
... fname = StringCol ()
... mi = StringCol (lengde = 1, standard = Ingen)
... lname = StringCol ()
...
>>> Person.createTable ()
... samt hvordan du bør bruke objektet ...
>>> p = Person (fname = "John", lname = "Doe")
>>> p
>>> p.fname
'John'
>>> p.mi = 'Q'
>>> p2 = Person.get (1)
>>> p2
>>> p er p2
Sanne
Kjører på alle operativsystemer som støttes av Python
Å være skrevet i Python, er SQLObject cross-platform, støttet på alle operativsystemer hvor Python 2.6 og Python 2.7 er tilgjengelig, inkludert alle GNU / Linux-distribusjoner, samt Microsoft Windows og Mac OS X operativsystemer.
Det lett lett installeres enten fra sin kilde pakken ved hjelp av & quot; sudo python setup.py installere & rsquo; kommandoen i rotmappen, eller easy_install, ved hjelp av & quot; easy_install -U SQLObject & rsquo; kommando, i en terminalemulator.
Programvaren har blitt testet med datamaskiner som støtter en av de 32 eller 64-bits instruksjonssett arkitekturer. For mer informasjon, vennligst se sin offisielle hjemmeside (se hjemmesiden link nedenfor)
Hva er nytt i denne utgaven.
< ul>
Hva er nytt i versjon 2.1.0:
- Mindre egenskaper:
- I spørringer generert med SQLObject tabeller kolonner er sortert i den rekkefølgen de er deklarert i tabellen.
- I spørringer generert med sqlbuilder sin Insert / Update, hvis verdier er gått bruker ordbøker, søyler er sortert alfabetisk.
- Tabeller i SELECT ... Fra klausulen er sortert alfabetisk.
- MySQLConnection, PostgresConnection og SQLiteConnection har fått en ny metode listDatabases () som viser databaser i forbindelse og returnerer en liste med navn.
- MySQLConnection, PostgresConnection og SQLiteConnection har fått en ny metode listTables () som returnerer en liste over tabellnavn i databasen.
Hva er nytt i versjon 1.5.0:
- Funksjoner og grensesnitt:
- Hjelpere for klasse Ytre ble endret til oppslag kolonner i tabellen erklæringer.
- Støtte for Python 2.4 er erklært foreldet og vil bli fjernet i neste versjon.
- Mindre egenskaper:
- Når en PostgresConnection hever et unntak forekomsten har kode / feil attributter kopiert fra psycopg2 sin pgcode / pgerror attributter.
- Socket Unicode enum verdier til str.
- Fjernet setDeprecationLevel fra listen over offentlige funksjoner.
- En rekke feilrettinger for tester.
- Bugfikses:
- En feil ble fikset i DBConnection.close (); close () hever ikke en UnboundLocalError hvis forbindelsen bassenget er tomt.
- Faste rammer for pymssql.
- Dokumentasjon:
- GNU LGPL teksten ble lagt til som docs / LISENS fil.
- Old FSF adresse ble endret til den nye.
Hva er nytt i versjon 1.4.0.
- PostgresConnection var optimalisert
- SQLObject nå bruker INSERT ... RETURNERER id for å få autoincremented ID i en spørring i stedet for to (INSERT + SELECT id) (PostgreSQL 8.2 kreves).
- SQLObject genererer nå nchar / nvarchar og N '' - sitert strenger for MS SQL .
Hva er nytt i versjon 1.2.0:
- Strenger er behandlet spesielt i Velg å tillate Velg ( ['id' name '], der =' value = 42 ').
- ForeignKey ('tabell', refColumn = 'refcol_id') gjør ForeignKey å peke på et ikke-id kolonne.
- Støtte for PostgreSQL 7. * droppes; minimal støttet versjon av PostgreSQL er 8.1.
- Siterer reglene har endret seg for PostgreSQL: SQLObject bruker E '' escape string .
- En bug forårsaket av psycopg2 nylig å legge til en ny boolsk ikke-oppsigelige autocommit attributtet ble fikset.
- sqlobject .__ doc__ og hoved .__ doc__ inneholder ikke lenger versjonsnummeret. bruk sqlobject.version eller version_info
Hva er nytt i versjon 1.1.2:
- En feil ble fikset i SelectResults slicing som hindret deg fra slicing en skive (for eksempel my_results [20] [1: 5]).
Hva er nytt i versjon 0.12.2:.
- Bugfikses portet fra SQLObject 0.11.4
Hva er nytt i versjon 0.10.6:
- Bedre støtte for Python 2.6: ikke importere frarådet sett modulen.
- En rekke endringer portet fra SQLObject 0.9.11.
Hva er nytt i versjon 0.10.4:
- createSQL begrenser generasjon har blitt fikset i henhold MySQL når tabellens navn inkluderer databasen navn (inneholder en prikk).
Hva er nytt i versjon 0.10.3:
- Endret tolkning av strenger i DB URI for boolsk parametere:. '0', 'nei', 'off' og 'falske' blir nå tolket som False
- Fikset en bug med feil håndtering av samtaler som connectionForURI (dburi, cache = False) når dburi inneholder allerede noen parametre i URI.
- Convert decimal.to_eng_string () strengen å omgå en feil i Python 2.5.2; se http://mail.python.org/pipermail/python-dev/2008-March/078189.html
- Lagt test_default_style.py.
- Fikset en mindre feil i SQLiteConnection som ikke klarer å analysere Enum kolonner.
Krav
- Python
Kommentarer ikke funnet