SQLAlchemy

Screenshot Λογισμικό:
SQLAlchemy
Στοιχεία Λογισμικού:
Εκδοχή: 0.9.8
Ανεβάστε ημερομηνία: 17 Feb 15
Προγραμματιστής: Michael Bayer
Άδεια: Δωρεάν
Δημοτικότητα: 85

Rating: 3.5/5 (Total Votes: 2)

SQLAlchemy είναι μια ανοικτή πηγή, ανεξάρτητα από την πλατφόρμα και το ελεύθερο λογισμικό βιβλιοθήκη γραμμένη στη γλώσσα Python προγραμματισμός και έχουν σχεδιαστεί από το μηδέν για να λειτουργήσει ως βιβλιοθήκη αφαίρεσης της βάσης δεδομένων, ORM (Object Relational Mapper) και SQL εργαλειοθήκη για την Python.
Αν & rsquo? Re προγραμματιστής Python, SQLAlchemy θα σας δώσει την πλήρη ευελιξία και τη δύναμη του SQL, παρέχοντας μια πλήρη συλλογή από σχέδια επιμονή δημοφιλής σε επίπεδο επιχείρησης, που έχουν σχεδιαστεί για υψηλές επιδόσεις και αποτελεσματική access.Features βάση δεδομένων σε ένα λογισμικό glanceThe είναι εξαιρετικά εύκολη στη χρήση, αρκετά ισχυρό για εξεζητημένες εργασίες, και σπονδυλωτή. Με SQLAlchemy θα είστε σε θέση να οργανώσει εκκρεμείς πράξεις σάλτσες, επιτρέπει τη χρήση λογικών εκφράσεων, τις λειτουργίες, οι φορείς εκμετάλλευσης, τραπέζι ψευδώνυμα, ρήτρες ΕΝΩΣΗΣ, συσχετίζονται ΥΠΑΡΧΕΙ ρήτρες, τη δημιουργία, εισαγωγή, διαγραφή και ενημέρωση ερωτήματα, επιλέξιμο υποερωτήματα, συσχετισμένες ενημερώσεις, εσωτερική και εξωτερικές συνδέσεις, και τις παραμέτρους δεσμεύουν.
Επιπλέον, μπορεί να χρησιμοποιηθεί για τη δημιουργία βάσεων δεδομένων, καθώς και να τους εξετάζω τον εαυτό μου, την υποστήριξη για τη φόρτωση που σχετίζονται με αντικείμενα και συλλογές, υποστήριξη για τη δημιουργία διαφανούς επιμονή των αντικειμένων που βασίζονται σε πρότυπα, υποστήριξη για το χειρισμό και την κατασκευή μοντέλων τομέα, καθώς και υποστήριξη για το συγχρονισμό όλες οι αλλαγές με την τρέχουσα συναλλαγή αυτόματα.
Μεταξύ άλλων χαρακτηριστικών, μπορούμε να αναφέρουμε μια relationally σύστημα προσανατολισμένο ερώτημα που & rsquo? S που μπορούν να εκθέσουν όλα του SQL & rsquo? S λειτουργικότητα, συμπεριλαμβανομένης της συσχέτισης, ενώνει και υποερωτήματα, ένα στρώμα αλληλεπίδραση DBAPI, ένα κεντρικό σύστημα κατασκευής SQL, ένα πλήρες, αυτόνομο αφαίρεση της βάσης δεδομένων στρώμα, υποστήριξη για επεκτάσιμη μεταδεδομένα SQL σχήμα, τη γλώσσα της έκφρασης, η ομαδοποίηση συνδέσεων, προσαρμοσμένους τύπους και coercion.Supports τύπου μια μεγάλη ποικιλία από databasesThe πρόγραμμα περιλαμβάνει διαλέκτους για μια μεγάλη ποικιλία από εξυπηρετητές βάσεων δεδομένων και μηχανών, συμπεριλαμβανομένων των δεδομένων MySQL, PostgreSQL, Firebird, η Oracle, η Microsoft SQL Server, SQLite, Sybase, και πολλοί άλλοι.
Το έργο είναι ανεξάρτητο από το λειτουργικό σύστημα, το οποίο σημαίνει ότι μπορεί να αναπτυχθεί και να χρησιμοποιηθεί σε οποιαδήποτε διανομή GNU / Linux, καθώς και σχετικά με το Microsoft Windows, BSD ή λειτουργικά συστήματα Mac OS X. Και οι δύο αρχιτεκτονικές υλικού 32-bit και 64-bit που υποστηρίζεται αυτή τη στιγμή

Τι είναι καινούργιο σε αυτή την έκδοση:.

  • ORM:
  • [ORM] [bug] [κινητήρα] Fixed bug που επηρέασε γενικά τις ίδιες κατηγορίες περίπτωση όπως αυτή του # 3199, όταν θα πρέπει να χρησιμοποιείται το όνομά του = True παράμετρο. Ορισμένες εκδηλώσεις θα αποτύχουν να εγγραφείτε, και άλλοι δεν θα επικαλεστεί τα επιχειρήματα εκδήλωση σωστά, γενικά, στην περίπτωση του όταν ένα συμβάν ήταν & quot? Τυλιγμένο & quot? για την προσαρμογή με κάποιο άλλο τρόπο. Το quot &? Ονομάζεται & quot? Οι μηχανικοί έχουν αναδιαταχθεί να μην παρεμβαίνει με την υπογραφή επιχείρημα που αναμένεται από τις εσωτερικές λειτουργίες περιτύλιγμα.
  • [ORM] [bug] Fixed bug που επηρέασε πολλές κατηγορίες της εκδήλωσης, ιδιαίτερα ORM γεγονότα αλλά και γεγονότα του κινητήρα, όπου η συνήθης λογική του & quot? De αντιγραφή & quot? μια περιττή πρόσκληση να event.listen () με τα ίδια επιχειρήματα θα αποτύχει, για τα γεγονότα αυτά, όπου η λειτουργία ακροατή είναι τυλιγμένο. Ένας ισχυρισμός θα πρέπει να χτυπήσει μέσα registry.py. Αυτός ο ισχυρισμός έχει πλέον ενσωματωθεί στο έλεγχο deduplication, με το πρόσθετο πλεονέκτημα της ένα απλούστερο μέσο ελέγχου deduplication σε όλους τους τομείς.
  • [ORM] [bug] Σταθερή προειδοποίηση που θα εκπέμπει όταν ένα συγκρότημα αυτοαναφορική primaryjoin περιείχε λειτουργίες, ενώ την ίδια στιγμή remote_side ορίστηκε? η προειδοποίηση θα πρότεινα τη ρύθμιση & quot? απομακρυσμένη πλευρά & quot ;. Τώρα εκπέμπει μόνο αν remote_side δεν υπάρχει.
  • ORM δηλωτική:
  • [bug] [δηλωτική] [ORM] Σταθερή & quot? Αντικείμενο «NoneType» δεν έχει καμία ιδιότητα «μπετόν» & quot? σφάλμα κατά τη χρήση AbstractConcreteBase σε συνδυασμό με μια υποκατηγορία που δηλώνει __abstract __.
  • κινητήρα:
  • [κινητήρα] [bug] Οι επιλογές εκτέλεσης πέρασε σε μια μηχανή, είτε μέσω create_engine.execution_options ή Engine.update_execution_options () δεν έχουν περάσει στην ειδική σύνδεση χρησιμοποιείται για να προετοιμάσει τη διάλεκτο μέσα & quot? Πρώτα σύνδεση & quot? εκδήλωση? διάλεκτοι θα εκτελούν συνήθως τις δικές τους απορίες σε αυτή την φάση, και καμία από τις τρέχουσες διαθέσιμες επιλογές θα πρέπει να εφαρμοστεί εδώ. Ειδικότερα, η & quot? Autocommit & quot? επιλογή αυτή προκαλεί μια προσπάθεια να autocommit σε αυτό το αρχικό συνδέσετε η οποία θα καταρρεύσει με έναν AttributeError λόγω της μη-τυπική κατάσταση της σύνδεσης.
  • [κινητήρα] [bug] Τα κλειδιά κορδόνι που χρησιμοποιούνται για να καθορίσουν τις στήλες επηρεάζονται για ένα ένθετο ή ενημερωμένη έκδοση είναι τώρα ταξινομούνται όταν αυτές συμβάλλουν στην & quot? Καταρτίζονται μνήμη cache & quot? κλειδί κρυφή μνήμη. Αυτά τα κλειδιά τα οποία προηγουμένως δεν νομοτελειακά εντολή, που σημαίνει ότι η ίδια κατάσταση θα μπορούσε να αποθηκευτεί προσωρινά πολλές φορές σε ισοδύναμες κλειδιά, που κοστίζει τόσο όσον αφορά τη μνήμη, καθώς και την απόδοση.
  • SQL:
  • [SQL] [bug] Fixed bug όπου ένας ικανός αριθμός στοιχείων SQL μέσα στο πακέτο SQL θα αποτύχει να __repr __ () με επιτυχία, εξαιτίας της λείπει περιγραφή χαρακτηριστικό που στη συνέχεια θα επικαλεστεί την υπερχείλιση αναδρομή όταν μια εσωτερική AttributeError τότε θα ξανά -invoke __repr __ ().
  • [SQL] [bug] Μια προσαρμογή στο τραπέζι / αντανάκλαση δείκτη έτσι ώστε αν ένας δείκτης αναφέρει μια στήλη που δεν έχει βρεθεί να είναι παρούσα στο τραπέζι, μια προειδοποίηση εκπέμπεται και η στήλη παραλείπεται. Αυτό μπορεί να συμβεί για ορισμένες ειδικές περιπτώσεις στήλη του συστήματος, όπως έχει παρατηρηθεί με την Oracle.
  • [SQL] [bug] Fixed bug στο ΣΤΕ όπου literal_binds επιχείρημα compiler δεν θα είναι πάντα να αναπαραχθεί σωστά όταν ένας ΣΤΕ που αναφέρεται σε μια άλλη ψευδώνυμα ΣΤΕ σε μια δήλωση.
  • [SQL] [bug] Σταθερή 0.9.7 παλινδρόμηση προκαλείται από # 3067 σε συνδυασμό με μία δοκιμή μονάδα λανθασμένη ονομάζονται έτσι ώστε λεγόμενο & quot? Σχήμα & quot? είδη όπως Boolean και Enum δεν μπορούσε πλέον να τουρσί.
  • PostgreSQL:
  • [PostgreSQL] [χαρακτηριστικό] [pg8000] Προστέθηκε υποστήριξη για & quot? Υγιής πολλαπλών σειρά μετράνε & quot? με τον οδηγό pg8000, η ​​οποία ισχύει κατά μείζονα λόγο όταν χρησιμοποιείτε εκδόσεων με την ORM. Το χαρακτηριστικό είναι η εκδοχή που ανιχνεύονται με βάση pg8000 1.9.14 ή μεγαλύτερη σε χρήση. Τραβήξτε το αίτημα ευγένεια Τόνι Locke.
  • [PostgreSQL] [bug] Μια επανέλθουμε σε αυτό το θέμα, πρώτα πρόχειρα σε 0.9.5, προφανώς .closed accessor psycopg2 δεν είναι τόσο αξιόπιστη όσο υποθέταμε, έτσι έχουμε προσθέσει μια ρητή επιταγή για τα μηνύματα εξαίρεση & quot? Σφάλμα SSL syscall : Κακή περιγραφέα αρχείου & quot? και & quot? Σφάλμα SSL syscall: ΕΟΦ ανιχνεύονται & quot? όταν ανιχνεύει ένα σενάριο αποσύνδεσης. Θα συνεχίσει να διαβουλεύεται psycopg2 του connection.closed ως ένα πρώτο έλεγχο.
  • [PostgreSQL] [bug] Fixed bug όπου το είδος Postgresql JSON δεν ήταν σε θέση να επιμένουν ή να καθιστούν ένα SQL μηδενική τιμή της στήλης, αντί για ένα JSON-κωδικοποιημένο «μηδενική». Για να υποστηρίξει αυτήν την περίπτωση, οι αλλαγές έχουν ως εξής:
  • Η τιμή null () μπορεί τώρα να καθοριστεί, η οποία θα οδηγήσει πάντα σε τιμή NULL αποτέλεσμα την δήλωση.
  • Μια νέα παράμετρος JSON.none_as_null προστίθεται, η οποία όταν ισχύει δείχνει ότι η κατάσταση Καμία αξία Python πρέπει να peristed ως SQL NULL, παρά JSON-κωδικοποιημένο «μηδενική».
  • retrival του μηδενισμού σαν Κανένας επίσης επισκευαστεί για DBAPIs πλην psycopg2, δηλαδή pg8000.
  • [PostgreSQL] [bug] Το σύστημα περιτύλιξης εξαίρεση για τα λάθη DBAPI μπορεί να φιλοξενήσει πλέον μη τυποποιημένων εξαιρέσεις DBAPI, όπως η TransactionRollbackError psycopg2. Οι εξαιρέσεις αυτές θα πρέπει τώρα να αυξηθεί χρησιμοποιώντας την πλησιέστερη διαθέσιμη υποκατηγορία στην sqlalchemy.exc, στην περίπτωση του TransactionRollbackError, sqlalchemy.exc.OperationalError.
  • [PostgreSQL] [bug] Fixed bug στο postgresql.array αντικείμενο όπου σύγκριση με μια απλή λίστα Python θα αποτύχει να χρησιμοποιήσετε το σωστό κατασκευαστής πίνακα. Τραβήξτε το αίτημα ευγένεια Ανδρέα.
  • [PostgreSQL] [bug] Προστέθηκε ένα υποστηριζόμενο FunctionElement.alias () μέθοδος για τις λειτουργίες, π.χ. το κατασκεύασμα FUNC. Προηγουμένως, η συμπεριφορά για τη μέθοδο αυτή ήταν απροσδιόριστο. Οι τρέχουσες μιμείται τη συμπεριφορά αυτή του προ-0.9.4, η οποία είναι ότι η λειτουργία είναι ενεργοποιημένη σε ένα ενιαίο-στήλη ΑΠΟ ρήτρα με το συγκεκριμένο ψευδώνυμο, όταν η ίδια η στήλη είναι ανώνυμα όνομά του.
  • MySQL:
  • [MySQL] [bug] [mysqlconnector] Mysqlconnector από την έκδοση 2.0, πιθανώς ως μια παρενέργεια της συγχώνευσης πύθωνα 3, τώρα δεν αναμένει σημάδια τοις εκατό (π.χ. όπως χρησιμοποιείται ως ο διαχειριστής του μέτρου και άλλοι) που πρέπει να διπλασιαστεί, ακόμη και όταν χρησιμοποιείτε το & quot? pyformat & quot? δεσμευμένη μορφή παραμέτρων (η αλλαγή αυτή δεν τεκμηριώνεται από Mysqlconnector). Η διάλεκτος τώρα ελέγχει για py2k και για mysqlconnector λιγότερο από την έκδοση 2.0, όταν ανιχνεύει εάν ο φορέας εκμετάλλευσης μέτρο θα πρέπει να αποδοθεί σαν %% ή%.
  • [MySQL] [bug] [mysqlconnector] Unicode SQL έχει περάσει τώρα για την έκδοση MySQLconnector 2.0 και άνω? για Py2k και MySQL & lt? 2.0, χορδές κωδικοποιούνται.
  • SQLite:
  • [SQLite] [bug] Κατά την επιλογή από ένα ΕΝΩΣΗΣ χρησιμοποιώντας ένα συνημμένο αρχείο βάσης δεδομένων, τα ονόματα εκθέσεις του οδηγού pysqlite στήλη cursor.description ως «dbname.tablename.colname», αντί του «tablename.colname», όπως συνήθως κάνει για μια Ένωση (σημειώστε ότι είναι υποτίθεται ότι είναι απλώς «colname» για τους δύο, αλλά δουλεύουμε γύρω από αυτό). Η λογική μετάφραση στήλη εδώ έχει προσαρμοστεί για να ανακτήσετε το δεξιότερο τρόπο, όχι με το δεύτερο τρόπο, έτσι ώστε να λειτουργεί και στις δύο περιπτώσεις. Λύση ευγένεια Τόνι Ρόμπερτς.
  • MSSQL:
  • [MSSQL] [bug] Σταθερή την ανίχνευση έκδοση συμβολοσειράς στο pymssql διάλεκτο για να συνεργαστεί με τη Microsoft SQL Azure, η οποία αντικαθιστά τη λέξη & quot? SQL Server & quot? σε & quot? SQL Azure & quot?.
  • χρησμό:
  • [μαντείο] [bug] Σταθερή μακροχρόνια bug στο Oracle διάλεκτο όπου δεν θα αναγράφουν δεσμεύεται ονόματα των παραμέτρων που ξεκίνησε με τους αριθμούς, καθώς η Oracle δεν αρέσει αριθμών σε δεσμευμένο ονόματα των παραμέτρων.
  • Διάφορα:
  • [bug] [δηλωτική] Σταθερά ένα απίθανο κατάσταση κούρσας που παρατηρείται σε ορισμένες εξωτικές ρυθμίσεις του τελικού χρήστη, όπου η προσπάθεια για τον έλεγχο & quot? Διπλότυπο όνομα & quot τάξη? στη δηλωτική θα χτυπήσει σε μια μη-εντελώς-καθαρίζονται-up αδύναμη αναφορά σχετίζεται με κάποια άλλη τάξη να αφαιρεθεί? ο έλεγχος εδώ διασφαλίζει πλέον την weakref εξακολουθεί να αναφέρεται σε ένα αντικείμενο πριν καλώντας την περαιτέρω.
  • [bug] [EXT] Fixed bug στον κατάλογο όπου η σειρά των στοιχείων θα πρέπει να αποτινάξει τη διάρκεια μιας συλλογής αντικαταστήσει περίπτωση, εάν η σημαία reorder_on_append τέθηκαν σε True παραγγελία. Η επιδιόρθωση εξασφαλίζει ότι ο κατάλογος παραγγελία επηρεάζει μόνο τη λίστα που είναι ρητά σχετίζεται με το αντικείμενο.
  • [bug] [EXT] Fixed bug όπου ext.mutable.MutableDict απέτυχε να εφαρμόσει την ενημέρωση () λεξικό μέθοδος, έτσι δεν πιάσει αλλαγές. Τραβήξτε το αίτημα ευγένεια Ματ Chisholm.
  • [bug] [EXT] Fixed bug όπου ένα έθιμο υποκατηγορία των ext.mutable.MutableDict δεν θα εμφανιστεί σε μια & quot? Εξαναγκάσει & quot? λειτουργία, και θα επιστρέψει αντί ένα απλό ext.mutable.MutableDict. Τραβήξτε το αίτημα ευγένεια Ματ Chisholm.
  • [bug] [πισίνα] Fixed bug στην πισίνα σύνδεση υλοτομία όπου quot & η? Σύνδεση ελεγχθεί & quot? Μήνυμα καταγραφής εντοπισμού σφαλμάτων δεν θα εκπέμπει εάν η καταγραφή στήθηκαν χρησιμοποιώντας logging.setLevel (), αντί να χρησιμοποιούν τη σημαία echo_pool. Έχουν προστεθεί δοκιμές για να διεκδικήσει αυτήν την καταγραφή. Αυτή είναι μια παλινδρόμηση που παρουσιάστηκε στο 0.9.0.

Τι είναι καινούργιο στην έκδοση 0.5.0:

  • νέα χαρακτηριστικά
  • Γενικά
  • Τεκμηρίωση έχει μετατραπεί σε Σφίγγα. Ειδικότερα, η παραγόμενη τεκμηρίωση API έχει κατασκευαστεί σε ένα πλήρες εμφυσημένα & quot? Αναφορά API & quot? τμήμα που οργανώνει συντακτική τεκμηρίωση σε συνδυασμό με δημιουργούνται docstrings. Η διασύνδεση μεταξύ των τμημάτων και docs API είναι σημαντικά βελτιωμένη, ένα JavaScript που κινούνται με δυνατότητα αναζήτησης παρέχεται, και ένα πλήρες ευρετήριο όλων των κατηγοριών, τις λειτουργίες και τα μέλη παρέχεται.
  • setup.py εισάγει τώρα setuptools μόνο προαιρετικά. Αν δεν υπάρχει, distutils χρησιμοποιείται. Το νέο & quot? Pip & quot? εγκαταστάτη συνιστάται πάνω easy_install όπως εγκαθιστά σε ένα πιο απλοποιημένο τρόπο.
  • προστεθεί ένα πολύ βασικό παράδειγμα μιας ενσωμάτωσης PostGIS στο φάκελο παραδείγματα.
  • ORM
  • Query.with_polymorphic () δέχεται τώρα ένα τρίτο επιχείρημα & quot? Διευκρινιστής & quot? η οποία θα αντικαταστήσει την αξία της mapper.polymorphic_on για το συγκεκριμένο ερώτημα. Χαρτογράφους οι ίδιοι δεν απαιτούν πλέον polymorphic_on να οριστεί, έστω και αν ο Mapper έχει polymorphic_identity. Όταν δεν έχει οριστεί, τον πίνακα αντιστοίχισης θα φορτώσει μη πολυμορφικά από προεπιλογή. Μαζί, αυτά τα δύο χαρακτηριστικά επιτρέπουν μια μη-πολυμορφική εγκατάσταση σκυροδέματος κληρονομιά να χρησιμοποιούν πολυμορφικά φόρτωση σε μια βάση ανά ερώτημα, δεδομένου ότι συγκεκριμένες ρυθμίσεις είναι επιρρεπείς σε πολλά προβλήματα όταν χρησιμοποιείται πολυμορφικώς σε όλες τις περιπτώσεις.
  • dynamic_loader δέχεται query_class = να προσαρμόσετε τις τάξεις Ερώτημα που χρησιμοποιείται τόσο για την δυναμική συλλογή και τα ερωτήματα που χτίστηκε από αυτό.
  • query.order_by () δέχεται Κανένας που θα αφαιρέσει κάθε κατάσταση εν αναμονή order_by από το ερώτημα, καθώς αναιρέσει κάθε mapper / σχέση διαμορφωθεί παραγγελία. Αυτό είναι κυρίως χρήσιμο για την παρεμπόδιση της παραγγελίας καθορίζεται σε dynamic_loader (). [Εισιτήριο: 1079]
  • sql
  • RowProxy αντικείμενα μπορεί να χρησιμοποιηθεί στη θέση των επιχειρημάτων λεξικό αποστέλλεται connection.execute () και τους φίλους. [Εισιτήριο: 935]
  • διάλεκτο
  • Προστέθηκε ένα νέο χαρακτηριστικό description_encoding στη διάλεκτο που χρησιμοποιείται για την κωδικοποίηση του ονόματος της στήλης κατά την επεξεργασία των μεταδεδομένων. Αυτό συνήθως είναι η utf-8.
  • MSSQL
  • Προστέθηκε σε ένα νέο MSGenericBinary τύπου. Αυτό χαρτογραφεί στον διμερή τύπο, ώστε να μπορεί να εφαρμόζει την εξειδικευμένη συμπεριφορά της θεραπείας μήκος συγκεκριμένων τύπων ως σταθερού πλάτους Binary είδη και είδη μη-μήκους ως ένα μη δεσμευμένο μεταβλητού μήκους δυαδικού τύπου.
  • Προστέθηκε σε νέους τύπους: MSVarBinary και MSImage. [Εισιτήριο: 1249]
  • Προστέθηκε στο MSReal, MSNText, MSSmallDateTime, MSTime, MSDateTimeOffset, και MSDateTime2 είδη
  • SQLite
  • αντανάκλαση πίνακας αποθηκεύει τώρα την πραγματική αξία DefaultClause για τη στήλη. [Εισιτήριο: 1266]
  • διορθώσεις, αλλαγές στη συμπεριφορά
  • Γενικά
  • ORM
  • Οι εξαιρέσεις που τέθηκαν κατά compile_mappers () είναι σήμερα διατηρείται η παροχή & quot? Κολλώδη συμπεριφορά & quot?
  • Εάν ένας hasattr () κλήση σε μια προ-μεταγλωττισμένα χαρτογραφηθεί χαρακτηριστικό ενεργοποιεί μια αποτυχημένη καταρτίζουν και να καταστέλλει την εξαίρεση, μετέπειτα συλλογή είναι αποκλεισμένη και η εξαίρεση αυτή θα επαναλαμβάνεται την επόμενη μεταγλώττιση () κλήση. Αυτό το ζήτημα παρουσιάζεται συχνά όταν χρησιμοποιείτε δηλωτική.
  • property.of_type () αναγνωρίζεται πλέον σε ένα ενιαίο πίνακα κληρονομεί στόχο, όταν χρησιμοποιείται στο πλαίσιο της prop.of_type (..). Κάθε () / έχει (), καθώς και query.join (προπ. of_type (...)).
  • query.join () προκαλεί ένα σφάλμα όταν ο στόχος της συνένωσης δεν ταιριάζει με την ιδιότητα βασίζονται στις ιδιότητες
  • ενώ είναι απίθανο κάποιος το κάνει αυτό, ο συγγραφέας SQLAlchemy ήταν ένοχος της συγκεκριμένης συμπεριφοράς loosey-goosey.
  • Fixed bug όταν χρησιμοποιούν weak_instance_map = False όπου τροποποιημένα πραγμάτων, δεν θα υποκλαπούν για ένα flush (). [Εισιτήριο: 1272]
  • Σταθερή μερικές βαθιές & quot? Στήλη αλληλογραφίας & quot? θέματα τα οποία θα μπορούσαν να επηρεάσουν ένα ερώτημα που κατά ένα επιλέξιμο περιέχει πολλαπλές εκδόσεις του ίδιου πίνακα, καθώς και τα συνδικάτα και παρόμοια στοιχεία που περιείχε τις ίδιες στήλες του πίνακα σε διαφορετικές θέσεις στήλη σε διαφορετικά επίπεδα. [Εισιτήριο: 1268]
  • τάξεις σύγκρισης Προσαρμοσμένη χρησιμοποιείται σε συνδυασμό με column_property (), η σχέση (), κλπ μπορούν να καθορίσουν νέες μεθόδους σύγκρισης για τη σύγκριση, οι οποίες θα είναι διαθέσιμες μέσω __getattr __ () σχετικά με την InstrumentedAttribute. Στην περίπτωση του συνώνυμο () ή comparable_property (), οι ιδιότητες επιλυθεί πρώτα στην Περιγραφέας ορίζονται από το χρήστη, στη συνέχεια, στο συγκριτικό ορίζονται από το χρήστη.
  • Προστέθηκε ScopedSession.is_active accessor. [Εισιτήριο: 976]
  • Μπορεί να περάσει χαρτογραφηθεί χαρακτηριστικά και αντικείμενα της στήλης ως κλειδιά για query.update ({}). [Εισιτήριο: 1262]
  • χαρτογραφημένα χαρακτηριστικά περάσει στις τιμές () ενός ένθετου επίπεδο έκφρασης () ή ενημέρωση () θα χρησιμοποιήσετε τα πλήκτρα των χαρτογραφηθεί στήλες, όχι ότι του χαρτογραφηθεί χαρακτηριστικό.
  • Διορθώθηκε το πρόβλημα με Query.delete () και Query.update () δεν λειτουργεί σωστά με τις παραμέτρους δεσμεύουν. [Εισιτήριο: 1242]
  • Query.select_from (), from_statement () διασφαλίζει ότι η συγκεκριμένη επιχειρηματολογία είναι μια FromClause, ή Κείμενο / Επιλογή / Ένωσης, αντίστοιχα.
  • Ερώτημα () μπορεί να περάσει ένα & quot? Σύνθετα & quot? αποδίδουν ως έκφραση της στήλης και θα επεκταθεί. Κάπως σχετίζονται με [εισιτηρίου: 1253].
  • Ερώτημα () είναι λίγο πιο ισχυρή όταν πέρασε διάφορες εκφράσεις της στήλης, όπως χορδές, clauselists, κείμενο () κατασκευές (πράγμα που μπορεί να σημαίνει ότι θέτει απλά ένα λάθος πιο ωραία).
  • πρώτη () λειτουργεί όπως αναμένεται με Query.from_statement ().
  • Fixed bug εισήχθη σε 0.5rc4 συμμετοχή πρόθυμοι φόρτωσης δεν λειτουργεί για τις ιδιότητες που προστέθηκαν σε ένα χαρτογράφο μετα-μεταγλώττιση χρησιμοποιώντας add_property () ή ισοδύναμο.
  • Fixed bug όπου πολλά-προς-πολλά σχέση () με viewonly = True δεν θα αναφέρει σωστά τη σχέση μεταξύ δευτεροβάθμιου & gt?. Απομακρυσμένες
  • διπλότυπων στοιχείων σε μια λίστα που βασίζεται στη συλλογή θα πρέπει να διατηρηθεί κατά την έκδοση ένθετα σε ένα & quot? Δευτεροβάθμιας & quot? τραπέζι σε ένα πολλά-προς-πολλά σχέση. Ας υποθέσουμε ότι ο πίνακας M2M έχει ένα μοναδικό ή πρωτεύον κλειδί περιορισμός σε αυτό, αυτό θα αυξήσει την αναμενόμενη παραβίαση περιορισμών αντί σιωπηλά πτώση των διπλές καταχωρήσεις. Σημειώστε ότι η παλιά συμπεριφορά παραμένει για μια σχέση ένα-προς-πολλά, δεδομένου εγγραφές συλλογή σε αυτήν την περίπτωση δεν οδηγούν σε δηλώσεις INSERT και SQLA δεν το χέρι της αστυνομίας συλλογές. [Εισιτήριο: 1232]
  • Query.add_column () μπορεί να δεχτεί FromClause αντικείμενα με τον ίδιο τρόπο όπως session.query () μπορεί.
  • Σύγκριση πολλά-προς-ένα σχέση με NULL είναι σωστά μετατρέπεται σε δεν είναι μηδέν με βάση όχι _ ().
  • συμπληρωματικούς ελέγχους με στόχο την εξασφάλιση ρητής primaryjoin / secondaryjoin είναι ClauseElement περιπτώσεις, για να αποτρέψει μεγαλύτερη σύγχυση λάθη αργότερα. [Εισιτήριο: 1087]
  • Βελτιωμένη mapper () ελέγχει για τις κατηγορίες μη-τάξη. [Εισιτήριο: 1236]
  • comparator_factory επιχείρημα Είναι πλέον τεκμηριωμένο και υποστηρίζεται από όλους τους τύπους MapperProperty, συμπεριλαμβανομένων column_property (), η σχέση (), backref (), και συνώνυμο () [εισιτήριο: 5051].
  • άλλαξε το όνομα του PropertyLoader να RelationProperty, για να είναι σύμφωνη με όλες τις άλλες ονομασίες. PropertyLoader εξακολουθεί να είναι παρούσα ως συνώνυμο.
  • σταθερό & quot? Διπλή ITER () & quot? κλήση προκαλώντας σφάλματα λεωφορείο στο θραύσμα API, αφαιρούνται περιπλανώμενος result.close () που έχει απομείνει από την έκδοση 0.4. [Εισιτήριο: 1099] [εισιτήριο: 1228]
  • έκανε καταρράκτες Session.merge δεν ενεργοποιούν autoflush. Διορθώνει συγχωνεύθηκε περιπτώσεις να πάρει πρόωρα εισαχθεί με ελλιπείς τιμές.
  • Δύο διορθώσεις για να βοηθήσει στην πρόληψη out-of-band στήλες από το να καταστεί σε σενάρια polymorphic_union κληρονομιάς (που στη συνέχεια προκαλεί επιπλέον πίνακες που πρέπει να αποδίδονται στο ΑΠΟ ρήτρα που προκαλεί καρτεσιανό προϊόντα):
  • βελτιώσεις σε & quot? Στήλη προσαρμογή & quot? για α- & gt? b- & gt?. γ καταστάσεις κληρονομιά να εντοπίσετε καλύτερα στηλών που σχετίζονται μεταξύ τους μέσω πολλαπλών επιπέδων εμμεσότητας, αντί να καθιστά την μη προσαρμοσμένα στήλη
  • & quot? Πολυμορφική διευκρινιστής & quot? στήλη καθίσταται μόνο για την πραγματική Mapper ερωτώνται κατά. Η στήλη δεν θα είναι & quot? Τράβηξε στο & quot? από μια υποκατηγορία ή υπερκλάσης Mapper, δεδομένου ότι δεν χρειάζεται.
  • Σταθερή επιχείρημα shard_id για ShardedSession.execute (). [Εισιτήριο: 1072]
  • sql
  • Οι στήλες μπορούν να περιέχουν και πάλι σημάδια τοις εκατό κατά τα ονόματά τους. [Εισιτήριο: 1256]
  • sqlalchemy.sql.expression.Function είναι πλέον μια δημόσια τάξη. Μπορεί να subclassed να παρέχουν ορίζονται από το χρήστη λειτουργίες SQL σε μια επιτακτική στυλ, συμπεριλαμβανομένων με προκαθορισμένες συμπεριφορές. Η postgis.py παράδειγμα απεικονίζει μία χρήση αυτό.
  • PickleType ευνοεί τώρα == σύγκριση με προεπιλογή, εάν το εισερχόμενο αντικείμενο (όπως ένα dict) υλοποιεί __eq __ (). Εάν το αντικείμενο δεν εφαρμόζει __eq __ () και ευμετάβλητος = True, μια προειδοποίηση υποτίμηση αυξάνεται.
  • Διορθώθηκε το παραξενιά εισαγωγής sqlalchemy.sql να μην εξάγουν __names__. [Εισιτήριο: 1215]
  • Χρησιμοποιώντας το ίδιο αντικείμενο ForeignKey επανειλημμένα εγείρει ένα σφάλμα αντί σιωπηλά παραλείποντας αργότερα. [Εισιτήριο: 1238]
  • μέθοδος Προστέθηκε NotImplementedError για params () για Εισαγωγή / Ενημέρωση / Διαγραφή κατασκευάσματα. Αυτά τα στοιχεία επί του παρόντος δεν υποστηρίζουν αυτή τη λειτουργία, η οποία επίσης θα είναι λίγο παραπλανητική σε σχέση με τις τιμές ().
  • Αντικατοπτρίζεται ξένα κλειδιά θα εντοπίσει σωστά αναφέρεται στήλη τους, ακόμη και αν η στήλη δόθηκε & quot? Κλειδί & quot? να αποδίδουν διαφορετική από την ανακλώμενη όνομα. Αυτό επιτυγχάνεται μέσω μιας νέας σημαία για ForeignKey / ForeignKeyConstraint ονομάζεται & quot? Link_to_name & quot ;, αν True σημαίνει ότι το όνομα είναι το που αναφέρθηκε το όνομα της στήλης, όχι από τα πλήκτρα του. [Εισιτήριο: 650]
  • Επιλέξτε () μπορεί να δεχτεί ένα ClauseList ως στήλη με τον ίδιο τρόπο όπως ένα τραπέζι ή άλλο επιλέξιμο και τις εσωτερικές εκφράσεις θα χρησιμοποιηθούν ως στοιχεία της στήλης. [Εισιτήριο: 1253]
  • & quot? Παθητική & quot? σημαία σε session.is_modified () είναι σωστά διαδίδεται στο διαχειριστή χαρακτηριστικό.
  • Ένωση () και union_all () δεν θα παλαβό κάθε order_by () που έχει εφαρμοστεί στο Select () s μέσα. Αν Ένωση () μια επίλεκτη () με order_by () (προφανώς για να στηρίξει LIMIT / offset), θα πρέπει επίσης να καλέσετε self_group () για να εφαρμόσει παρένθεση.
  • κινητήρα / πισίνα
  • Connection.invalidate () ελέγχους για κλειστή κατάσταση για να αποφεύγονται λάθη χαρακτηριστικό. [Εισιτήριο: 1246]
  • NullPool υποστηρίζει επανασυνδεθεί στη συμπεριφορά αποτυχία. [Εισιτήριο: 1094]
  • Προστέθηκε ένα mutex για την αρχική δημιουργία της πισίνας, όταν χρησιμοποιεί το pool.manage (dbapi). Αυτό αποτρέπει μια μικρή περίπτωση του & quot? Dogpile & quot? συμπεριφορά η οποία διαφορετικά θα ανακύψουν κατά την εκκίνηση βαρύ φορτίο. [Εισιτήριο: 799]
  • _execute_clauseelement () πηγαίνει πίσω για να είναι μια ιδιωτική μέθοδο. Σύνδεση υποκλάσεις δεν απαιτείται πλέον ότι ConnectionProxy είναι διαθέσιμο.
  • τεκμηρίωση
  • Εισιτήρια [εισιτήριο: 1200] [εισιτήριο: 1149].
  • Προστέθηκε σημείωση σχετικά με create_session () προεπιλογές.
  • Προστέθηκε τμήμα για metadata.reflect ().
  • Ενημέρωση τμήμα `TypeDecorator`.
  • ξαναέγραψε το & quot? Threadlocal & quot? κεφάλαιο για τη στρατηγική Εγγράφων λόγω της πρόσφατης σύγχυση σχετικά με αυτό το χαρακτηριστικό.
  • Αφαιρέθηκε άσχημα από την ημερομηνία «polymorphic_fetch» ​​και «select_table» docs από κληρονομιά, επαναδιατυπώθηκε το δεύτερο μισό του & quot? Εντάχθηκε τραπέζι κληρονομιά & quot?.
  • Τεκμηριωμένη `comparator_factory` kwarg, προστίθεται νέο τμήμα doc & quot? Custom Συγκριτές & quot?.
  • MSSQL
  • refactored οι τύποι Ημερομηνία / Ώρα. Το `smalldatetime`` τύπος δεδομένων` πλέον περικόπτει μόνο μια ημερομηνία, και τώρα θα αντιστοιχίζονται με τον τύπο MSSmallDateTime. [Εισιτήριο: 1254]
  • Διορθώθηκε ένα πρόβλημα με Αριθμών να αποδεχθεί έναν int.
  • Mapped `` char_length`` στο () `` `λειτουργία LEN`.
  • Αν μια `` INSERT`` περιλαμβάνει subselect η `` INSERT`` μετατρέπεται από ένα `` Insert Into VALUES`` κατασκευάσει σε μια `` εισάγετε σε κατασκεύασμα SELECT``.
  • Εάν η στήλη είναι μέρος μιας `` primary_key`` θα είναι `` ΔΕΝ NULL`` από MSSQL δεν επιτρέπει `` NULL`` σε primary_key στήλες.
  • `` MSBinary`` επιστρέφει τώρα ένα `` BINARY`` αντί ενός `` IMAGE``. Αυτό είναι ένα προς τα πίσω ασυμβίβαστη αλλαγή σε ότι `` BINARY`` είναι ένα σταθερό τύπο δεδομένων μήκος, ενώ `` IMAGE`` είναι μια μεταβλητή τύπου δεδομένων μήκους. [Εισιτήριο: 1249]
  • `` get_default_schema_name`` αντανακλάται τώρα από τη βάση δεδομένων με βάση την προεπιλεγμένη σχήμα του χρήστη. Αυτό λειτουργεί μόνο με MSSQL 2005 και αργότερα. [Εισιτήριο: 1258]
  • Προστέθηκε υποστήριξη αντιπαραβολή με τη χρήση ενός νέου επιχειρήματος αντιπαραβολή. Αυτό υποστηρίζεται από τις παρακάτω μορφές: char, nchar, varchar, nvarchar, κείμενο, ntext. [Εισιτήριο: 1248]
  • Οι αλλαγές στις παραμέτρους συμβολοσειράς σύνδεσης ευνοούν DSN ως προεπιλογή προδιαγραφές για pyodbc. Δείτε το docstring mssql.py για λεπτομερείς οδηγίες χρήσης.
  • Προστέθηκε πειραματική υποστήριξη των Savepoints. Επί του παρόντος δεν λειτουργεί πλήρως με συνεδρίες.
  • Υποστήριξη για τρία επίπεδα nullability στήλη: NULL, NOT NULL, και να διαμορφωθεί προεπιλογή της βάσης δεδομένων. Η προεπιλεγμένη διαμόρφωση Στήλη (nullable = True) θα δημιουργήσει τώρα NULL στο DDL. Προηγουμένως δεν προδιαγραφή εκπέμφθηκε και η προεπιλεγμένη βάση δεδομένων θα τεθεί σε ισχύ (συνήθως NULL, αλλά όχι πάντα). Για να ζητήσετε ρητά την προεπιλεγμένη βάση δεδομένων, να διαμορφώσετε τις στήλες με nullable = Κανένας και καμία προδιαγραφή θα πρέπει να εκπέμπεται στο DDL. Αυτό είναι ασυμβίβαστη προς τα πίσω συμπεριφορά. [Εισιτήριο: 1243]
  • postgres
  • & quot?% & Quot? σημάδια στο κείμενο () Οι κατασκευές δραπέτευσε αυτόματα σε & quot? %% & quot ;. Λόγω της προς τα πίσω ασυμβίβαστη φύση αυτής της αλλαγής, μια προειδοποίηση εκπέμπεται αν «%% 'ανιχνεύεται στο κορδόνι. [Εισιτήριο: 1267]
  • Κλήση alias.execute (), σε συνδυασμό με server_side_cursors δεν θα αυξήσει AttributeError.
  • Προστέθηκε Δείκτης αντανάκλαση υποστήριξη για Postgres, χρησιμοποιώντας ένα μεγάλο μπάλωμα έχουμε καιρό παραμελημένη, που υποβλήθηκε από τον Ken Kuhlman. [Εισιτήριο: 714]
  • μαντείο
  • Προσαρμοσμένο η μορφή του create_xid () για την επισκευή διφασική. Έχουμε τώρα αναφορές στον τομέα της Oracle διφασική λειτουργεί σωστά με αυτήν την αλλαγή.
  • Προστέθηκε τύπου OracleNVarchar, παράγει NVARCHAR2, και υποκλάσεις επίσης Unicode έτσι ώστε convert_unicode = True, από προεπιλογή. NVARCHAR2 αντανακλά σε αυτόν τον τύπο αυτόματα ώστε οι στήλες αυτές περνούν Unicode σε ένα αντανακλάται τραπέζι χωρίς ρητή convert_unicode = True σημαίες. [Εισιτήριο: 1233]
  • Διορθώθηκε το bug που εμπόδιζε τις params ορισμένων τύπων από το να λάβει? χάρη ένας τόνος να huddlej στο wwu.edu! [Εισιτήριο: 1265]
  • mysql
  • & quot?% & Quot? σημάδια στο κείμενο () Οι κατασκευές δραπέτευσε αυτόματα σε & quot? %% & quot ;. Λόγω της προς τα πίσω ασυμβίβαστη φύση αυτής της αλλαγής, μια προειδοποίηση εκπέμπεται αν «%% 'ανιχνεύεται στο κορδόνι.
  • Διορθώθηκε το bug στην εξαίρεση αύξηση όταν FK στήλες δεν παρουσιάσει κατά τη διάρκεια του προβληματισμού. [Εισιτήριο: 1241]
  • Διορθώθηκε το bug που αφορούν αντανάκλαση ενός πίνακα εξ αποστάσεως σχήμα με ένα ξένο κλειδί στον διαιτητή σε άλλο τραπέζι σε αυτό το σχήμα.
  • associationproxy
  • Οι ιδιότητες μεσολάβησης συλλόγου είναι να είναι διαθέσιμοι σε επίπεδο τάξης, π.χ. MyClass.aproxy. Προηγουμένως αυτό αξιολογείται σε Καμία.
  • δηλωτική
  • Ο πλήρης κατάλογος των επιχειρημάτων δεκτές ως κορδόνι από backref () περιλαμβάνει «primaryjoin», «secondaryjoin», «δευτερεύουσες», «foreign_keys», «remote_side», «order_by».

Απαιτήσεις :

  • Python

Παρόμοια λογισμικά

indigestion
indigestion

20 Feb 15

SQLAntaresia
SQLAntaresia

14 Apr 15

micromongo
micromongo

14 Apr 15

Σχόλια για SQLAlchemy

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!
Αναζήτηση ανά κατηγορία