SQL Server White Paper Template

Total Page:16

File Type:pdf, Size:1020Kb

SQL Server White Paper Template Guide to Migrating Sybase Application Interfaces to SQL Server 2008 SQL Server Technical Article Writers: Yuri Rusakov (DB Best Technologies), Alexander Pavlov (DB Best Technologies), Yuri Kovtun (DB Best Technologies) Technical Reviewer: Dmitry Balin (DB Best Technologies) Published: <Month/Year> Applies to: SQL Server 2008 Summary: This white paper describes methods of migrating applications with Sybase interfaces to SQL Server. We cover both Open Standard APIs (ODBC, JDBC, OLE DB, ADO.Net) and proprietary APIs (CT-Library, DB-Library). Created by: DB Best Technologies LLC P.O. Box 7461, Bellevue, WA 98008 Tel.: (408) 202-4567 E-mail: [email protected] Web: www.dbbest.com Copyright This is a preliminary document and may be changed substantially prior to final commercial release of the software described herein. The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication. This White Paper is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property. Unless otherwise noted, the example companies, organizations, products, domain names, e- mail addresses, logos, people, places and events depicted herein are fictitious, and no association with any real company, organization, product, domain name, email address, logo, person, place or event is intended or should be inferred. © 2010 Microsoft Corporation. All rights reserved. Microsoft and SQL Server are registered trademarks of Microsoft Corporation in the United States and other countries. The names of actual companies and products mentioned herein may be the trademarks of their respective owners. 2 Contents Copyright ................................................................................................................................... 2 Introduction ................................................................................................................................ 4 Conversion of Open Standard Application Interfaces ................................................................. 5 Overview ................................................................................................................................ 5 JDBC ...................................................................................................................................... 5 ODBC ..................................................................................................................................... 5 OLE DB .................................................................................................................................. 6 ADO.NET ............................................................................................................................... 8 Driver versions ....................................................................................................................... 9 Open Client Libraries to ODBC Migration ..................................................................................11 Overview ...............................................................................................................................11 Main Migration Steps .............................................................................................................11 CT-Library Schema migration ................................................................................................12 Header files mapping .........................................................................................................12 Routine mapping ................................................................................................................12 Type and structure mapping...............................................................................................17 DB-Library Schema migration ................................................................................................20 Overview ............................................................................................................................20 Header files mapping .........................................................................................................20 Routine mapping ................................................................................................................20 Type and structure mapping...............................................................................................25 Other Types of Migration ...........................................................................................................27 Using FreeTDS tool to migrate CT Library and DB Library applications to SQL Server .........27 Migration of Open Client Embedded SQL ..............................................................................27 Migration of ASE Job Scheduler objects ................................................................................28 Conversion of Transact-SQL statements which are embedded in applications ......................28 Conclusion ................................................................................................................................30 About DB Best Technologies .................................................................................................30 3 Introduction DB Best Technologies, Inc. created several white papers which cover migration of databases, such as Oracle or Sybase ASE, to SQL Server 2008. However, in most of the cases there is also a necessity to change database access code in an application connecting to the migrated database. The task is easiest when the application uses a database interface designed to serve many database servers. In this white paper we discuss Open Database Connectivity (ODBC), Java Database Connectivity (JDBC), Object Linking and Embedding Database (OLE DB) and ActiveX Data Objects for .NET (ADO.NET). Migration of such interfaces can be as simple as changing the database driver and/or connection strings. More complicated are the cases when we use proprietary interfaces of one database vendor, which do not provide connectivity to SQL Server 2008. Examples are Sybase ASE CT-Library and DB-Library. In this paper we describe how to change the application code to use SQL Server compatible ODBC interface. 4 Conversion of Open Standard Application Interfaces Overview In this section we discuss methods of redirecting multi-database interfaces of Sybase Adaptive Server Enterprise (ASE) applications to SQL Server 2008. Note that the application code may contain pieces of SQL strings, which are sent to the database and which may not be compatible with SQL Server after the interface was redirected. In such cases, we should convert the embedded SQL according to the rules of SQL conversion. JDBC To convert a JDBC application, we need to change name of loaded JDBC driver class and modify its URL accordingly. Examples: JDBC connection to Sybase ASE: Class.forName(“com.sybase.jdbc.SybDrive”); String url = "jdbc:sybase:Tds:sybase_server_name:5000/test_base”; Connection dbc = DriverManager.getConnection(url, login, password); See below the changes necessary to make this code connect to SQL Server. The class name of SQL Server driver should be specified as a parameter of Class.forName() method, and getConnection method of the loaded class should follow the URL syntax for SQL Server. Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”); String url = “jdbc:sqlserver://sql_server_name:1433”; Connection dbc = DriverManager.getConnection(url, login, password); ODBC ODBC is a universal interface, which means we can change the servers just by specifying another Data Source Name. See below a typical example of switching the database in ODBC connect code. 5 ODBC connection to Sybase: SQLRETURN retcode; SQLHENV env; SQLHDBC dbc; retcode = SQLAllocHandle( SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env ); retcode = SQLSetEnvAttr( env, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0); retcode = SQLAllocHandle( SQL_HANDLE_DBC, env, &dbc ); retcode = SQLConnect(dbc, (SQLCHAR*) "sybase_DataSource_name", SQL_NTS, (SQLCHAR*) "sybase_login", SQL_NTS, (SQLCHAR*) "sybase_password", SQL_NTS); ODBC connection to SQL Server: SQLRETURN retcode; SQLHENV env; SQLHDBC dbc; retcode = SQLAllocHandle( SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env ); retcode = SQLSetEnvAttr( env, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0); retcode = SQLAllocHandle( SQL_HANDLE_DBC, env, &dbc ); retcode = SQLConnect(dbc, (SQLCHAR*)
Recommended publications
  • Mysql Workbench Abstract
    MySQL Workbench Abstract This is the MySQL Workbench Reference Manual. It documents the MySQL Workbench Community and MySQL Workbench Commercial releases for versions 8.0 through 8.0.26. If you have not yet installed the MySQL Workbench Community release, please download your free copy from the download site. The MySQL Workbench Community release is available for Microsoft Windows, macOS, and Linux. MySQL Workbench platform support evolves over time. For the latest platform support information, see https:// www.mysql.com/support/supportedplatforms/workbench.html. For notes detailing the changes in each release, see the MySQL Workbench Release Notes. For legal information, including licensing information, see the Preface and Legal Notices. For help with using MySQL, please visit the MySQL Forums, where you can discuss your issues with other MySQL users. Document generated on: 2021-09-24 (revision: 70892) Table of Contents Preface and Legal Notices ................................................................................................................ vii 1 General Information ......................................................................................................................... 1 1.1 What Is New in MySQL Workbench ...................................................................................... 1 1.1.1 New in MySQL Workbench 8.0 Release Series ........................................................... 1 1.1.2 New in MySQL Workbench 6.0 Release Series ..........................................................
    [Show full text]
  • VSI's Open Source Strategy
    VSI's Open Source Strategy Plans and schemes for Open Source so9ware on OpenVMS Bre% Cameron / Camiel Vanderhoeven April 2016 AGENDA • Programming languages • Cloud • Integraon technologies • UNIX compability • Databases • Analy;cs • Web • Add-ons • Libraries/u;li;es • Other consideraons • SoDware development • Summary/conclusions tools • Quesons Programming languages • Scrip;ng languages – Lua – Perl (probably in reasonable shape) – Tcl – Python – Ruby – PHP – JavaScript (Node.js and friends) – Also need to consider tools and packages commonly used with these languages • Interpreted languages – Scala (JVM) – Clojure (JVM) – Erlang (poten;ally a good fit with OpenVMS; can get good support from ESL) – All the above are seeing increased adop;on 3 Programming languages • Compiled languages – Go (seeing rapid adop;on) – Rust (relavely new) – Apple Swi • Prerequisites (not all are required in all cases) – LLVM backend – Tweaks to OpenVMS C and C++ compilers – Support for latest language standards (C++) – Support for some GNU C/C++ extensions – Updates to OpenVMS C RTL and threads library 4 Programming languages 1. JavaScript 2. Java 3. PHP 4. Python 5. C# 6. C++ 7. Ruby 8. CSS 9. C 10. Objective-C 11. Perl 12. Shell 13. R 14. Scala 15. Go 16. Haskell 17. Matlab 18. Swift 19. Clojure 20. Groovy 21. Visual Basic 5 See h%p://redmonk.com/sogrady/2015/07/01/language-rankings-6-15/ Programming languages Growing programming languages, June 2015 Steve O’Grady published another edi;on of his great popularity study on programming languages: RedMonk Programming Language Rankings: June 2015. As usual, it is a very valuable piece. There are many take-away from this research.
    [Show full text]
  • IBM Infosphere Streams: Assembling Continuous Insight in the Information Revolution
    Front cover IBM® Information Management Software IBM InfoSphere Streams Assembling Continuous Insight in the Information Revolution Supporting scalability and dynamic adaptability Performing real-time analytics on Big Data Enabling continuous analysis of data Chuck Ballard Kevin Foster Andy Frenkiel Senthil Nathan Bugra Gedik Deepak Rajan Roger Rea Brian Williams Mike Spicer Michael P. Koranda Vitali N. Zoubov ibm.com/redbooks International Technical Support Organization IBM InfoSphere Streams: Assembling Continuous Insight in the Information Revolution October 2011 SG24-7970-00 Note: Before using this information and the product it supports, read the information in “Notices” on page ix. First Edition (October 2011) This edition applies to Version 2.0.0 of InfoSphere Streams (Product Number 5724-Y95). © Copyright International Business Machines Corporation 2011. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . ix Trademarks . x Preface . xi The team who wrote this book . xii Now you can become a published author, too! . xvii Comments welcome. xvii Stay connected to IBM Redbooks . xviii Chapter 1. Introduction. 1 1.1 Stream computing . 2 1.1.1 Business landscape . 6 1.1.2 Information environment . 9 1.1.3 The evolution of analytics . 14 1.1.4 Relationship to Big Data . 17 1.2 IBM InfoSphere Streams . 17 1.2.1 Overview of Streams. 19 1.2.2 Why use Streams . 24 1.2.3 Examples of Streams implementations. 27 Chapter 2. Streams concepts and terms. 33 2.1 IBM InfoSphere Streams: Solving new problems . 34 2.2 Concepts and terms .
    [Show full text]
  • Licensing Information User Manual Release 8.0 E65472-04
    Oracle® Communications Calendar Server Licensing Information User Manual Release 8.0 E65472-04 March 2021 Copyright © 2000, 2021, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are “commercial computer software” pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.
    [Show full text]
  • Migrating from Microsoft SQL Server to IBM Informix
    Front cover Migrating from Microsoft SQL Server to IBM Informix Develops a data and applications migration methodology Migrates step-by-step from SQL Server to IBM Informix Provides a variety of migration examples Whei-Jen Chen Chee Fong Koh Deen Murad Holger Kirstein Rakeshkumar Naik ibm.com/redbooks International Technical Support Organization Migrating from Microsoft SQL Server to IBM Informix July 2010 SG24-7847-00 Note: Before using this information and the product it supports, read the information in “Notices” on page xi. First Edition (July 2010) This edition applies to IBM Informix Version 11.5 and Microsoft SQL Server 2008. © Copyright International Business Machines Corporation 2010. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . xi Trademarks . xii Preface . xiii The team who wrote this book . xiii Acknowledgements . xv Become a published author . xv Comments welcome. xvi Stay connected to IBM Redbooks . xvi Chapter 1. Introduction. 1 1.1 Migration considerations . 2 1.2 Informix position . 4 1.3 IBM Informix editions. 5 1.3.1 No-charge editions . 5 1.3.2 For-purchase editions . 6 1.4 Informix functionality and features. 9 1.4.1 Replication and high availability . 9 1.4.2 Performance . 11 1.4.3 Security . 12 1.4.4 Administration . 13 1.4.5 Warehouse . 14 1.4.6 Application development . 14 1.4.7 Extensibility . 15 Chapter 2. Architecture overview . 19 2.1 Process . 20 2.1.1 SQL Server . 20 2.1.2 Informix .
    [Show full text]
  • Netscaler® 11.1 - Third Party Notices
    NetScaler® 11.1 - Third Party Notices NetScaler 11.1 may include third party software components licensed under the following terms. This list was generated using third party software as of the date listed. This list may change with specific versions of the product and may not be complete; it is provided “As-Is.” TO THE EXTENT PERMITTED BY APPLICABLE LAW, CITRIX AND ITS SUPPLIERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, STATUTORY OR OTHERWISE, WITH REGARD TO THE LIST OR ITS ACCURACY OR COMPLETENESS, OR WITH RESPECT TO ANY RESULTS TO BE OBTAINED FROM USE OR DISTRIBUTION OF THE LIST. BY USING OR DISTRIBUTING THE LIST, YOU AGREE THAT IN NO EVENT SHALL CITRIX BE HELD LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY OTHER DAMAGES WHATSOEVER RESULTING FROM ANY USE OR DISTRIBUTION OF THIS LIST. 1 Table of Contents 7-Zip (win32) 9.20 ....................................................................................................................................... 12 Apache HTTP Server 2.2.14 ......................................................................................................................... 12 Apache Tomcat 7.0.69 ................................................................................................................................ 12 Apache Xalan-C 1.10.0 ................................................................................................................................ 12 Apache Xerces-C++ XML Parser 2.7.0 ........................................................................................................
    [Show full text]
  • Mike Chirico 7867 Spring Ave. Elkins Park PA, 19027 [email protected] (Quickest Way to Contact) 215-774-1047 [Please - Contract Corp-To-Corp Positions Only]
    Mike Chirico 7867 Spring Ave. Elkins Park PA, 19027 [email protected] (Quickest way to contact) 215-774-1047 [Please - Contract Corp-to-Corp Positions Only] TECHNICAL EXPERIENCE: Databases: MSSQL 2005, SQLite, MySQL, Berkeley DB, Postgres, Oracle Languages: C++ and C (STL, Sockets, and threads), Python, Java, VB, Perl, PHP, awk, sed, Flex/YACC, Lemon, Emacs Lisp, Mathematica, Java, R, Flash MX Software: Linux, Postfix, Apache/PHP, OpenLDAP, Xen, Samba, NFS, NIS, CVS Management, Creating Live Linux CDs, FreeTDS, Tomcat, Bonsai, Exim, Cfengine, Firewall (ipsec, iptables, OpenVPN, Snort), vsFTP, UnionFS, Qt, Red Hat Cluster Suite, GFS, RADIUS Platforms: Fedora, Red Hat Linux, Microsoft, PalmOS, MAC SUMMARY OF QUALIFICATIONS: Linux Developer and Senior System Administrator, with extensive experience supporting many open source applications including contributing code for 2.6 Linux kernel modules. Database developer, designer and administrator (MSSQL,SQLite and MySQL) with full cycle development of (Pricing Systems,401K plans, Student Tracking System, Network Logging Systems) Experienced C/C++ programmer creating threaded client server applications. Security experience educating System Administrators on best practices for server setup, including securing emaill (See published articles). Open source software developer and technical writer with multiple projects on SourceForge.net. PROFESSIONAL EXPERIENCE: 2008 - Current. (Private Contract) Lead Developer and System Engineer. Cloud Computing - building open source (C, Java, and Python) tools to leverage Google's Cloud (App Engine, GData, Gmail). Information is coordinated from custom build Linux 2.6 kernel, Fedora rawhide, utilizing low power hardware (Soekris 5501) 2008 - June 2008. VWR International (Contract) Linux Engineer and Developer. Building custom applications in C, C++, Perl and Java.
    [Show full text]
  • Theodore Budiardja Resume
    Theodore Budiardja 1700 S. Main St. Goshen, IN 46526 Phone: (574) 238-1370 Email: [email protected] Objective Seeking a full time position in Computer Science and/or Information Technology related field, which will challenge me to the full utilization of skills that I have obtained through education and prior experiences. Education B.A, Goshen College, April 2004 Major in Computer Science and minor in Multimedia Communication. Work Web/Database Programmer – Goshen College (2004 – present) Experience Job responsibilities include, but not limited to: • Design systems, services and applications based on enterprise data for use by the entire campus. • Specify and implement development tools and methodologies used by Information Technology Services (ITS) and Goshen College student programmers team (Devcorps). • Lead the Devcorps team. • Provide technical resources to ITS staff on Linux operating system and other open source technologies. • Maintain web servers running Linux, Apache, PHP and Oracle/MSSQL. Major Accomplishments: • Team member of Goshen College Database migration project in 2009. The main objective was to migrate Goshen College main database from Oracle to Microsoft SQL Server (MSSQL). My responsibilities included, converting custom Oracle functions to User Defined MSSQL functions; migrating Goshen College web application (GCOnline) codes (over 500 applications) to work with MSSQL, i.e., rewriting the API and its database abstraction layer with Freetds and unixODBC; modifying Caravel CMS database connectivity and applications to work with MSSQL; rewriting custom Oracle reports and scripts to be compatible with MSSQL. • Built employee online timecard system. This system allows employees to keep track of their working hours, supervisors to approve the hours, and the HR to process payroll.
    [Show full text]
  • Data Access with Linux
    DDaattaa AAcccceessss wwiitthh LLiinnuuxx l o i b b g ODBC o GNOME d n a o B Copyright Statement © 2001 Adam Tauno Williams ([email protected]) Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy of the GNU Free Documentation License from the Free Software Foundation by visiting their Web site or by writing to: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Credits The assistance of the following people was imperative to the completion of the presentation: Nick Gorham of the unixODBC project Rodrigo Moya of the GNOME-DB project Vivien Malerba of the gASQL project Giancarlo Capella, author of dbreport I was privileged to have e-mail exchanges with all of the above developers about various issues. They were consistently helpful, overlooking my ignorance, and were excellent representatives of the Open Source ethic of community. Thanks also is in order to the local Linux users' group http://www.kalamazoolinux.org The Topic There are a great variety of relational database systems available for Linux, both Open Source and proprietary. They range in features from the engineless SQLite, to the read-oriented MySQL, to the ACID compliant PostgreSQL, and to incredibly expensive Oracle, Informix, and DB2 Then there are LDAP servers, mail servers, syslog files, NNTP servers, XML files, delimited files, fixed-length files, text files, spreadsheets, etc..
    [Show full text]
  • Programming Perl
    Programming the Perl DBI Alligator Descartes & Tim Bunce First Edition February 2000 ISBN: 1-56592-699-4, 350 pages The primary interface for database programming in Perl is DBI. Programming the Perl DBI is coauthored by Alligator Descartes, one of the most active members of the DBI community, and by Tim Bunce, the inventor of DBI. The book explains the architecture of DBI, shows you how to write DBI- based programs and explains both DBI's nuances and the peculiarities of each individual DBD. This is the definitive book for database programming in Perl. Table of Contents Preface 1 1. Introduction 5 From Mainframes to Workstations Perl DBI in the Real World A Historical Interlude and Standing Stones 2. Basic Non-DBI Databases 9 Storage Managers and Layers Query Languages and Data Functions Standing Stones and the Sample Database Flat-File Databases Putting Complex Data into Flat Files Concurrent Database Access and Locking DBM Files and the Berkeley Database Manager The MLDBM Module Summary 3. SQL and Relational Databases 41 The Relational Database Methodology Datatypes and NULL Values Querying Data Modifying Data Within Tables Creating and Destroying Tables 4. Programming with the DBI 57 DBI Architecture Handles Data Source Names Connection and Disconnection Error Handling Utility Methods and Functions 5. Interacting with the Database 76 Issuing Simple Queries Executing Non-SELECT Statements Binding Parameters to Statements Binding Output Columns do( ) Versus prepare( ) Atomic and Batch Fetching 6. Advanced DBI 97 Handle Attributes and Metadata Handling LONG/LOB Data Transactions, Locking, and Isolation Table of Contents (cont...) 7. ODBC and the DBI 116 ODBC-Embraced and Extended DBI-Thrashed and Mutated The Nuts and Bolts of ODBC ODBC from Perl The Marriage of DBI and ODBC Questions and Choices Moving Between Win32::ODBC and the DBI And What About ADO? 8.
    [Show full text]
  • Pymssql Documentation Release 2.1.3
    pymssql Documentation Release 2.1.3 pymssql developers Mar 30, 2017 Contents 1 Introduction 1 1.1 Getting started..............................................1 1.2 Architecture...............................................3 1.3 Supported related software........................................3 1.4 Install...................................................3 1.5 Project Discussion............................................4 1.6 Project Status...............................................4 1.7 Current Development..........................................4 2 pymssql examples 5 2.1 Basic features (strict DB-API compliance)...............................5 2.2 Iterating through results.........................................6 2.3 Important note about Cursors......................................6 2.4 Rows as dictionaries...........................................7 2.5 Using the with statement (context managers).............................7 2.6 Calling stored procedures........................................7 2.7 Using pymssql with cooperative multi-tasking systems.........................8 3 _mssql examples 9 3.1 Quickstart usage of various features...................................9 3.2 An example of exception handling.................................... 10 3.3 Custom message handlers........................................ 11 4 Release notes 13 4.1 pymssql 2.0.0............................................... 13 5 FreeTDS 15 5.1 Installation................................................ 15 5.2 Configuration..............................................
    [Show full text]
  • Turbodbc Documentation Release Stable
    turbodbc Documentation Release stable Michael König Aug 19, 2021 Contents 1 Introduction 3 2 Getting started 7 3 Advanced usage 13 4 ODBC configuration 21 5 Databases configuration and performance 25 6 Version history / changelog 33 7 Troubleshooting 43 8 Frequently asked questions 47 9 Contributing 49 10 API reference 53 11 Indices and tables 59 Index 61 i ii turbodbc Documentation, Release stable Turbodbc is a Python module to access relational databases via the Open Database Connectivity (ODBC) interface. Its primary target audience are data scientist that use databases for which no efficient native Python drivers are available. For maximum compatibility, turbodbc complies with the Python Database API Specification 2.0 (PEP 249). For maximum performance, turbodbc offers built-in NumPy and Apache Arrow support and internally relies on batched data transfer instead of single-record communication as other popular ODBC modules do. Turbodbc is free to use (MIT license), open source (GitHub), works with Python 3.6+, and is available for Linux, macOS, and Windows. Turbodbc is routinely tested with MySQL, PostgreSQL, EXASOL, and MSSQL, but probably also works with your database. Contents 1 turbodbc Documentation, Release stable 2 Contents CHAPTER 1 Introduction Turbodbc is a Python module to access relational databases via the Open Database Connectivity (ODBC) interface. In addition to complying with the Python Database API Specification 2.0, turbodbc offers built-in NumPy support. Don’t wait minutes for your results, just blink. 1.1 Features • Bulk retrieval of result sets • Built-in NumPy support • Built-in Apache Arrow support • Bulk transfer of query parameters • Asynchronous I/O for result sets • Automatic conversion of decimal type to integer, float, and string as appropriate • Supported data types for both result sets and parameters: int, float, str, bool, datetime.date, datetime.datetime • Also provides a high-level C++11 database driver under the hood • Tested with Python 3.7, 3.8 and 3.9 • Tested on 64 bit versions of Linux, OSX, and Windows (Python 3.7+).
    [Show full text]