Jestem względnie nowy w bazach danych, wykonuję zapytania SQL, itp. W tej chwili używam wyłącznie MS SQL Server dla moich DB (to jest to, czego używamy w mojej pracy), ale mam nadzieję, że odpowiedzi na moje pytanie mogą być bardziej ogólne niż tylko dla tego konkretnego DB.pymssql versus pyodbc versus adodbapi versus ...
Robię dobry kawał mojej pracy przy użyciu samej aplikacji interfejsu DB (w tym przypadku SQL Server Management Studio), ale także wykonuję niektóre prace za pomocą skryptów Pythona, z których niektóre działają jako zadania Cron, z których niektóre są stronami internetowymi, w których użytkownicy mogą przesyłać zapytania do bazy danych.
Używam modułu pymssql do wysyłania zapytań do & pisząc do DB z Pythona. Ale jest kilka irytujących problemów, na które napotykam. (Wydaje się, że pymssql nie może używać tabel tymczasowych, a także miałem problemy z "autocommit", ale to prawdopodobnie moja własna wina.)
Tak więc nie mając pojęcia o tym, chciałbym tylko poczuć kierunek, w którym powinienem iść. O ile mogę powiedzieć, mogę albo:
- użycie pymssql, który mówi bezpośrednio do serwerów MS SQL
- użycie pyodbc, który wymaga zainstalowania FreeTDS & unixODBC pierwszy, a ich ustanowieniem
- korzystania moduł adodbapi i nie jestem pewien, jakie wymagania są tutaj potrzebne.
- inna metoda?
Rzecz jest, nie W PEŁNI uzyskać, co robi ODBC. Wydaje się, że jest to jakiś "pośrednik uwierzytelnienia", coś w rodzaju środkowego człowieka, który zapewnia, że użytkownik jest tym, kim mówi. I jeszcze mniej rozumiem ADO.
Podczas gdy pymssql wydaje się być najprostszym sposobem na przejście, wydaje się, że ludzie wydają się gorzej traktować, i że ostatecznie zostanie wycofany. Wolałbym nauczyć się "właściwej" drogi, ponieważ dopiero zaczynam od tych rzeczy.
Poszukuję więc pewnych cennych opinii na temat najlepszego sposobu, aby pyton mógł rozmawiać z serwerem MS SQL i rozmawiać z DB w ogóle. Chciałbym zdefiniować "najlepszy" jako najlepszy dla kogoś, kto zrobi z nim umiarkowanie skomplikowane rzeczy. (Podczas gdy dopiero zaczynam, jest to coś, co w końcu będę musiał nieco przyspieszyć.)
Dzięki! Mike
Jak ogłoszono w grudniu 2016 r pyodbc jest teraz [oficjalnie wspierany przez Microsoft] (https://blogs.technet.microsoft.com/dataplatforminsider/2016/12/09/sql-server -python-whats-new /). –