SQLAlchemy

Софтуер снимки:
SQLAlchemy
Софтуер детайли:
Версия: 0.9.8
Дата на качване: 17 Feb 15
Розробник: Michael Bayer
Разрешително: Безплатно
Популярност: 85

Rating: 3.5/5 (Total Votes: 2)

SQLAlchemy е с отворен код, платформа-независим и свободен софтуер библиотека написана на езика Python програмиране и проектиран от земята да действа като база данни абстракция библиотека, ORM (обект на релационна Mapper) и SQL инструментариума за Python.
Ако & rsquo; повторно на Python разработчик, SQLAlchemy ще ви даде пълна гъвкавост и способност на SQL, осигуряващ пълна колекция от модели персистиране популярна корпоративно ниво, които са проектирани за високо-ефективните и ефикасни access.Features базата данни на софтуера glanceThe е изключително лесна за използване, достатъчно мощен, за сложни задачи, както и модулни. С SQLAlchemy ще можете да организирате в очакване боклук операции, позволява използването на булеви изрази, функции, оператори, маса псевдоними, клаузи съюз, корелира СЪЩЕСТВУВА клаузи, създават, вмъкване, изтриване и актуализиране на заявки, избираеми подзаявки, корелирани ъпдейти, вътрешна и Външният присъединява, и се свързват параметри.
Освен това, тя може да се използва за генериране на бази данни, както и да ги вглъбявам, подкрепа за товарни свързани обекти и колекции, подкрепа за създаване на прозрачна устойчивост на обекти на базата на модели, подкрепа за манипулиране и изграждане на моделите на областта, както и подкрепа за синхронизиране всички промени, с текущата операция автоматично.
Сред другите функции, можем да говорим за система във взаимоотношенията ориентирани заявка, че & rsquo; ите способен да изложи всички SQL & rsquo; ите функционалност, включително съответствието, се присъединява и подзаявки, слой на DBAPI взаимодействие, а SQL конструктивна система ядро, пълен, самостоятелна база данни абстракция слой, подкрепа за разширяем SQL схема метаданни, израз език, пул за връзки, потребителски типове и вид coercion.Supports голямо разнообразие от databasesThe Програмата включва диалекти за голямо разнообразие от сървъри и системи за бази данни, включително MySQL, PostgreSQL, Firebird, Oracle, Microsoft SQL Server, SQLite, Sybase, и много други.
Проектът е независима от операционната система, което означава, че тя може да бъде лесно разгърнати и използвани по всяко разпределение GNU / Linux, както и на Microsoft Windows, BSD или Mac OS X операционни системи. И двете 32-битови и 64-битови хардуерни архитектури са подкрепени в този момент

Какво ново в тази версия:.

  • ORM:
  • [ORM] [Bug] [двигателя] Фиксиран бъг, който се отразява като цяло същите класове на събитие като това на # 3199 г., когато ще се използва за име = True параметър. Някои събития ще успеят да се регистрират, а други няма да се позовават на събитието правилно, по принцип в случай на при събитие беше & quot; увити & quot; за адаптация по някакъв друг начин. В & quot; на име & quot; механика са пренаредени да не пречат очаква от вътрешни функции на обвивки аргумент подписа на.
  • [ORM] [Bug] Фиксиран бъг, който засегна много класове на събитие, особено ORM събития, но и събития на двигателя, когато обичайният логиката на & quot; де размножителни & quot; излишен разговор да event.listen () със същите аргументи ще се провали, за тези събития, когато функцията на слушател е обвит. Твърдение би се удари в рамките registry.py. Това твърдение вече е интегрирана в проверката за дедупликация, с допълнителен бонус от по-прост начин за проверка на дедупликация повсеместно.
  • [ORM] [Bug] Fixed предупреждение, че ще излъчват, когато сложна самостоятелно референтна primaryjoin се съдържа функции, като в същото време remote_side е посочено; предупреждението ще предложи създаване & quot; отдалечената страна & quot ;. То сега само излъчва ако remote_side не присъства.
  • ORM декларативно:
  • [Bug] [декларативно] [ORM] Fixed & quot; обект "NoneType" не разполага с атрибут "бетон" и quot; грешка при използване AbstractConcreteBase във връзка с подклас, че декларира __abstract __.
  • двигател:
  • [двигателя] [Bug] опциите изпълнението минаха на двигател или чрез create_engine.execution_options или Engine.update_execution_options () не се предава на специална връзка използва за инициализиране на диалекта в рамките на & quot; първо свържете & quot; събитие; диалекти обикновено ще изпълняват своите собствени заявки в тази фаза, и нито един от сегашните наличните опции трябва да се прилага тук. По-специално, на & quot; autocommit & quot; опция се причинява опит да autocommit в рамките на този първоначален свържете които ще се провали с AttributeError дължи на нестандартно състоянието на връзката.
  • [двигателя] [Bug] клавишите низа, които се използват за определяне на колоните повлияха за INSERT или UPDATE вече са подредени, когато те участват в покриването на & quot; компилиран кеша & quot; ключова кеш. Тези ключове преди това не са били детерминистично подредени, което означава същото изявление може да бъде кеширана няколко пъти на еквивалентни ключове, струва както по отношение на паметта, както и изпълнение.
  • SQL:
  • [SQL] [Bug] Фиксиран бъг, при справедлив брой SQL елементи в рамките на пакета за SQL няма да успее да __repr __ () успешно, поради липсващ описание атрибут, който ще може да се позове на рекурсия препълване, когато вътрешна AttributeError тогава би отново -invoke __repr __. ()
  • [SQL] [Bug] Корекция на маса / индекс за размисъл, така че, ако индексът отчита колона, която не е установено, че са налични в таблицата, предупреждение се излъчва и колоната се пропуска. Това може да се случи при някои особени положения, колони система, както е наблюдавано с Oracle.
  • [SQL] [Bug] Фиксиран бъг в КТР, където literal_binds аргумент компилатор би не се винаги да бъде правилно размножава, когато един CTE посочено друго псевдоним CTE в изявление.
  • [SQL] [Bug] Fixed 0.9.7 регресия, причинени от # 3067 във връзка с устройство за изпитване на погрешно наречен така, че така наречената & quot; схема & quot; видове като Булев и Enum вече не могат да бъдат кисели.
  • PostgreSQL:
  • [PostgreSQL] [черта] [pg8000] Support е добавен за & quot; здравомислещ мулти брой редове & quot; с водача на pg8000, който се отнася най-вече, когато се работи на версии с ORM. Функцията е версията-открита въз основа на pg8000 9.1.14 или по-голяма в употреба. Издърпайте искане учтивост Тони Лок.
  • [PostgreSQL] [Bug] A отново към този въпрос първо кръпка в 0.9.5, очевидно .closed Accessor psycopg2 не е толкова надеждни, колкото предполагахме, така сме добавили изрично проверка с оглед прилагане на съобщенията & quot; SSL SYSCALL грешка : Bad файлов дескриптор & quot; и & quot; SSL SYSCALL грешка: EOF открити & quot; когато открие сценарий АН е разединяване. Ние ще продължим да се консултира connection.closed като първа проверка.
  • psycopg2 си
  • [PostgreSQL] [Bug] Фиксиран бъг, при тип PostgreSQL JSON не можа да се задържи или друг начин да направят стойност колона SQL NULL, а не като JSON кодирани "нула". В подкрепа на този случай, промените са както следва:
  • нула стойности () вече може да бъде определен, които винаги ще доведе до стойност NULL резултат в отчета.
  • Нов параметър се добавя JSON.none_as_null, които, когато True показва, че нито стойността на Python трябва да се peristed като SQL NULL, а не JSON кодирани "нула".
  • Retrival на NULL като None също е ремонтиран за DBAPIs различни от psycopg2, а именно pg8000.
  • [PostgreSQL] [Bug] опаковъчна система изключение за DBAPI грешки сега могат да се настанят нестандартни DBAPI изключения, като например psycopg2 TransactionRollbackError. Тези изключения сега ще бъдат повдигнати с помощта на най-близкото разположение подкласа в sqlalchemy.exc, в случай на TransactionRollbackError, sqlalchemy.exc.OperationalError.
  • [PostgreSQL] [Bug] Fixed бъг в postgresql.array обект, където сравнение с обикновен списък на Python няма да успее да се използва правилната масив конструктора. Издърпайте искане учтивост Andrew.
  • [PostgreSQL] [Bug] добави подкрепени FunctionElement.alias () метод, за да функционира, напр конструкцията функция. Преди това поведение на този метод е неопределено. Настоящите поведение имитира, че на предварително 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] Fixed откриване на версията низ в pymssql диалект да работи с Microsoft SQL Azure, която променя думата & quot; SQL Server & quot; да & quot; SQL Azure & quot;.
  • Oracle:
  • [Oracle] [Bug] Fixed дългогодишния бъг в Oracle диалект, където обвързани имена на параметри, които започват с номера няма да бъде цитиран, като Oracle не обича Numerics в свързаните имена на параметри.
  • Разни:
  • [Bug] [декларативно] Fixed необичайна състояние раса се наблюдава в някои екзотични настройки за краен потребител, когато се опитва да провери за & quot; дублират име & quot клас; в декларативна ще удари върху не-съвсем-почистената слаб препратка свързана с някакъв друг клас се отстранява; проверката тук сега осигурява weakref още референцията е обект преди да се обадите на него по-нататък.
  • [Bug] [EXT] Fixed бъг в поръчване на списъка, когато заповедта на предмети ще бъдат хвърлени на разстояние по време на събирането на мястото на събитието, ако reorder_on_append флаг беше настроен на True. Уговорката гарантира, че списъкът за поръчване влияе само на списък, който изрично е свързана с предмета.
  • [Bug] [EXT] Fixed бъг, при ext.mutable.MutableDict успеят да изпълнят актуализация () речник метод, като по този начин не улов промени. Издърпайте искане учтивост Matt Chisholm.
  • [Bug] [EXT] Фиксиран бъг, при персонализиран подклас на ext.mutable.MutableDict няма да се появи в & quot; принуждаване & quot; работа, и вместо това ще се върне един обикновен ext.mutable.MutableDict. Издърпайте искане учтивост Matt Chisholm.
  • [Bug] [басейн] Фиксиран бъг във връзка басейн сеч където & quot; връзка Проверих & quot; отстраняване на грешки сеч съобщение няма да излъчват ако дърводобива са създадени с помощта logging.setLevel (), а не с помощта echo_pool флаг. Добавени са тестове за утвърждаване на тази сеч. Това е регресия, която е въведена в 0.9.0.

Какво ново във версия 0.5.0:

  • нови функции
  • общото
  • Документация са били превърнати в Сфинкса. По-специално, генерирани API документация е била построена в пълна разпенени & quot; API Референтен & quot; точка, която организира редакционната документация комбинира с генерирани docstrings. Cross свързване между секции и документи API са значително подобрена, осигурен е javascript, задвижвани с функция за търсене, и се предоставя пълен списък на всички класове, функции и членове.
  • setup.py сега внася setuptools само по желание. Ако не присъства, се използват distutils. Новата & quot; PIP & quot; монтажник се препоръчва над easy_install като го инсталира в един по-опростен начин.
  • добавена изключително основния илюстрация на интеграция PostGIS в папката примери.
  • ORM
  • Query.with_polymorphic () вече приема трета аргумент & quot; дискриминатор & quot; който ще замени стойността на mapper.polymorphic_on за тази заявка. Картографи себе си вече не се нуждаят polymorphic_on да бъдат установени, дори ако четящото устройство има 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 типа, така че може да реализира специализираната поведението на лечение дължина точно определени видове като фиксирана широчина Binary видове и типове извън дължина като несвързан с променлива дължина Binary тип.
  • Добавен в нови видове: MSVarBinary и MSImage. [Билет: 1249]
  • Добавен в MSReal, MSNText, MSSmallDateTime, MSTime, MSDateTimeOffset и MSDateTime2 видове
  • SQLite
  • Table размисъл съхранява днес действителната DefaultClause стойност за колоната. [Билет: 1266]
  • фиксирани бъга, поведенчески промени
  • общото
  • ORM
  • Изключения повдигнати по време compile_mappers () сега са запазени за осигуряване & quot; лепкава поведение & quot;
  • ако един hasattr () повикване по предварително съставен картирани атрибут задейства недостатък, съставят и потиска изключение, последваща компилация е блокиран и изключение ще се повтори на следващата компилация () повикване. Този проблем се наблюдава често при използване на декларативно.
  • property.of_type () сега е признат за една маса наследява целта, когато се използва в контекста на prop.of_type (..). Всеки () / е (), както и query.join (проп. of_type (...)).
  • query.join () повдига грешка, когато целта на присъедините не съвпада с атрибута имот базирани
  • а това е малко вероятно някой да прави това, авторът SQLAlchemy е виновен за това конкретно поведение loosey-изплашен.
  • Фиксирана бъг, когато използвате weak_instance_map = False където модифицирани събития няма да бъдат заловени за флъш (). [Билет: 1272]
  • Фиксирана някои дълбоко & quot; колона кореспонденция & quot; въпроси, които биха могли да повлияят на Query направи срещу избираем, съдържащ няколко версии на една и съща маса, както и съюзи и други подобни, които се съдържат еднакви колони маса в различни позиции на колоните на различни нива. [Билет: 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, или текст / Select / съюз, съответно.
  • Query () може да бъде прехвърлено на & многослойна & quot; атрибут като израз на колона и ще бъде разширена. Донякъде, свързани с [билет: 1253].
  • Query () е малко по-силен, когато се предава различни изражения на колоните, като струни, clauselists, текст () конструкции (което може да означава, че просто повдига грешка по-добре).
  • Първият () работи както се очаква с Query.from_statement ().
  • Фиксирана бъг, въведена в 0.5rc4 включваща нетърпеливи натоварване не функционира на имоти, които се добавят към Mapper след компилация използване add_property () или еквивалентно.
  • Фиксирана бъг, където много-към-много връзка () с viewonly = True не би правилно позоваване на връзката между secondary- & GT;. Дистанционно
  • Дублиране на предмети от колекцията списък базиран ще се запази при издаването вложки към & quot; вторична & quot; маса в много-към-много връзка. Ако приемем, че масата за M2M е уникална или първичен ключ ограничение върху него, това ще повиши очакваната нарушението ограничение вместо мълчаливо отпадане на дублиращи се записи. Имайте предвид, че старото поведение остава за връзка един-към-много, тъй като записите за събиране в този случай не водят до INSERT отчети и SQLA не ръчно полицейски колекции. [Билет: 1232]
  • Query.add_column () може да приеме FromClause обекти по същия начин, както session.query () може.
  • Сравнение на много към един спрямо NULL е правилно превръща НЕ Е NULL основава на не _
  • ().
  • Допълнителни проверки добавени да се гарантира изрично primaryjoin / secondaryjoin са ClauseElement случаи, за да се предотврати по-объркващи грешки по-късно. [Билет: 1087]
  • Подобрена Mapper () проверява за класове не-класа. [Билет: 1236]
  • comparator_factory аргумент вече е документиран и подкрепен от всички видове MapperProperty, включително column_property (), връзка (), backref (), и синоним () [билет: 5051].
  • промени името на PropertyLoader да RelationProperty, за да бъде в съответствие с всички други имена. PropertyLoader все още съществува като синоним.
  • фиксирана & quot; двойна ITER () & quot; повикване причинява грешки автобус в Shard API, отстранява странстващ result.close (), останали от версия 0.4. [Билет: 1099] [билет: 1228]
  • направени Session.merge каскади не задействат autoflush. Фиксира се сляха случаи Първи преждевременно вмъква с липсващите стойности.
  • Две поправки, за да помогне за предотвратяване на вън-на-бандов колони да бъдат извършени в polymorphic_union наследствата сценарии (който след това причинява допълнителни таблици, за да бъдат извършени в FROM клаузата причиняващи декартови произведения):
  • подобрения & quot; колона адаптация & quot; за A- & GT; b- & GT;. в наследството ситуации по-добре да намерите колони, които са свързани една с друга чрез няколко нива на околните, а не превръщането на колоната не са адаптирани
  • на & quot; полиморфна дискриминатор & quot; колона е направен само за действителното четящото устройство се запита против. Колоната няма да бъде & quot; дръпна в & quot; от подклас или суперкласа Mapper, тъй като не е необходимо.
  • Фиксирана аргумент shard_id на ShardedSession.execute (). [Билет: 1072]
  • SQL
  • Колони отново може да съдържат знаци за процент в рамките на техните имена. [Билет: 1256]
  • sqlalchemy.sql.expression.Function сега е публична клас. Тя може да бъде subclassed да предоставят потребителски дефинирани SQL функции в императив стил, включително с предварително определени поведения. The 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 (), която е приложена към Изберете () е вътре. Ако съюз () а изберете () с order_by () (вероятно за да подкрепи LIMIT / офсетни), вие също трябва да се обадя self_group () върху него да се прилагат скоби.
  • двигателя / басейн
  • Connection.invalidate () проверки за затворени статус трябва да се избягват грешки атрибут. [Билет: 1246]
  • NullPool подкрепя свържете отново върху поведението на провал. [Билет: 1094]
  • Добавена мутекс за първоначалното създаване басейн при използване pool.manage (dbapi). Това не позволява лек случай на & quot; Dogpile & quot; поведение, което иначе би възникнала при тежка стартиране натоварване. [Билет: 799]
  • _execute_clauseelement () датира като частен метод. Subclassing Connection не е необходимо сега, че ConnectionProxy е достъпно.
  • документация
  • Билети [билети: 1200] [билети: 1149].
  • Добавена бележка за create_session () по подразбиране.
  • Добавена раздел за metadata.reflect ().
  • Updated `TypeDecorator` раздел.
  • пренаписаха & quot; threadlocal & quot; стратегия точка на докторите заради неотдавнашното объркване тази функция.
  • Премахнато силно остарели "polymorphic_fetch" и "select_table" Документи от наследството, преработен през втората половина на & quot; присъедини маса наследство & quot;.
  • Документирани `comparator_factory` kwarg, добавя нов раздел & quot док; по поръчка Компаратори & quot;.
  • MSSQL
  • Refactored дата / час видове. В `` smalldatetime`` типа данни вече не реже само за дата, а сега ще бъде съпоставена с вида MSSmallDateTime. [Билет: 1254]
  • Поправен е проблем с Numerics да приеме Int.
  • Mapped `` char_length`` до `` LEN () `` функция.
  • Ако `` INSERT`` включва подселект на `` INSERT`` е преобразувана от `` INSERT INTO VALUES`` изгради до `` INSERT INTO SELECT`` конструкт.
  • Ако колоната е част от ``
  • primary_key`` ще е `` НЕ NULL`` тъй MSSQL не позволява `` NULL`` в primary_key колони.
  • `` MSBinary`` сега връща `` BINARY`` вместо `` IMAGE``. Това е назад несъвместима промяна в тази `` BINARY`` е фиксиран тип дължина данни има предвид, че `` IMAGE`` е тип данни с променлива дължина. [Билет: 1249]
  • `` get_default_schema_name`` е отразено от базата данни въз основа на неизпълнение на схема на потребителя. Това работи само с MSSQL 2005 г. и по-късно. [Билет: 1258]
  • Добавена съпоставка подкрепа чрез използване на нов аргумент съпоставка. Това се подкрепя от следните видове: Чар, nchar, VARCHAR, nvarchar, текстови, ntext. [Билет: 1248]
  • Промени в параметрите на низ на свързване благоприятстват DSN като спецификация по подразбиране за pyodbc. Вижте mssql.py docstring за подробни инструкции за работа.
  • Добавена експериментална поддръжка на точки на запис. Това в момента не работи изцяло с сесии.
  • Подкрепа за трите нива на колона nullability: NULL, NOT NULL и конфигуриран по подразбиране на базата данни. Стандартната конфигурация Колона (анулира = True) сега ще генерира NULL в DDL. Преди това няма спецификация беше излъчена и по подразбиране на базата данни ще влезе в сила (обикновено NULL, но не винаги). Изрично да изискат по подразбиране на база данни, изберете колони с анулира = Няма и няма спецификация ще бъде излъчвана в DDL. Това е назад несъвместимо поведение. [Билет: 1243]
  • Postgres
  • & quot;% & quot; знаци в текстов () конструкти автоматично са избягали към & quot; %% & quot ;. Поради назад несъвместима естеството на тази промяна, предупреждение се излъчва, ако "%%" се открива в низа. [Билет: 1267]
  • Повикване alias.execute () във връзка с server_side_cursors няма да повиши AttributeError.
  • Добавено Index размисъл подкрепа за Postgres, използвайки голяма кръпка ние дълго пренебрегвани, внесено от Ken Кулман. [Билет: 714]
  • Oracle
  • Коригиран формата на create_xid (), за да поправите двуфазов протокол. Сега имаме полеви доклади на Oracle двуфазов протокол работи правилно с тази промяна.
  • Добавено тип OracleNVarchar, произвежда NVARCHAR2, а също и подкласове Unicode, така че convert_unicode = True по подразбиране. NVARCHAR2 отразява в този вид автоматично, така че тези колони преминават Unicode по отразено маса, без изричното convert_unicode = True знамена. [Билет: 1233]
  • Фиксирана бъг, който пречи на PARAMS на някои видове от които са получени; Благодаря тон да huddlej в wwu.edu! [Билет: 1265]
  • MySQL
  • & quot;% & quot; знаци в текстов () конструкти автоматично са избягали към & quot; %% & quot ;. Поради назад несъвместима естеството на тази промяна, предупреждение се излъчва, ако "%%" се открива в низа.
  • Фиксирана бъг в изключение рейз, когато FK колони не присъства по време на размисъл. [Билет: 1241]
  • Фиксирана бъг с участието на отражение на една маса с дистанционно схема с ключ външна препратка към друга маса в тази схема.
  • associationproxy
  • асоцииране прокси свойства са да се регистрират на ниво клас, например MyClass.aproxy. По-рано тази оценена на висота.
  • декларативно
  • Пълният списък от аргументи приема като низ от backref () включва "primaryjoin", "secondaryjoin", "вторични", "foreign_keys", "remote_side", "order_by".

<силни> Изисквания :

  • Python

Подобен софтуер

OSPRep
OSPRep

11 May 15

NCBI C++ Toolkit
NCBI C++ Toolkit

20 Feb 15

HyperDex
HyperDex

20 Feb 15

Коментари към SQLAlchemy

Коментари не е намерена
добавите коментар
Включете на изображения!