MySQL for Python

Integrating MySQL and Python can bring a whole new level of productivity to your applications. This practical tutorial shows you how with examples and explanations that clarify even the most difficult concepts.

MySQL for Python

Starting
Albert Lukaszewski, PhD

Integrating MySQL and Python can bring a whole new level of productivity to your applications. This practical tutorial shows you how with examples and explanations that clarify even the most difficult concepts.
$10.00
$49.99
RRP $29.99
RRP $49.99
eBook
Print + eBook
$12.99 p/month

Want this title & more? Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.
+ Collection
Free sample

Book Details

ISBN 139781849510189
Paperback440 pages

About This Book

  • Implement the outstanding features of Python's MySQL library to their full potential
  • See how to make MySQL take the processing burden from your programs
  • Learn how to employ Python with MySQL to power your websites and desktop applications
  • Apply your knowledge of MySQL and Python to real-world problems instead of hypothetical scenarios
  • A manual packed with step-by-step exercises to integrate your Python applications with the MySQL database server

Who This Book Is For

This book is meant for intermediate users of Python who want hassle-free access to their MySQL database through Python. If you are a Python programmer who wants database-support in your Python applications, then this book is for you. This book is a must-read for every focused user of the MySQL for Python library who wants real-world applications using this powerful combination of Python and MySQL.

Table of Contents

Chapter 1: Getting Up and Running with MySQL for Python
Getting MySQL for Python
Importing MySQL for Python
Connecting with a database
Multiple database connections
Summary
Chapter 2: Simple Querying
A brief introduction to CRUD
Forming a query in MySQL
Passing a query to MySQL
Using user-defined variables
Determining characteristics of a database and its tables
Changing queries dynamically
Project: A command-line search utility
Room to grow
Summary
Chapter 3: Simple Insertion
Forming a MySQL insertion statement
Helpful ways to nuance an INSERT statement
Passing an insertion through MySQL for Python
Using user-defined variables
Using metadata
Changing insertion values dynamically
Essentials: close and commit
Project: A command-line insertion utility
Summary
Chapter 4: Exception Handling
Why errors and warnings are good for you
Errors versus warnings: There's a big difference
The two main errors in MySQLdb
Warnings in MySQL for Python
Handling exceptions passed from MySQL
Catching different types of exceptions
Creating a feedback loop
Project: Bad apples
Summary
Chapter 5: Results Record-by-Record
The problem
Why?
How?
Project: A movie database
Summary
Chapter 6: Inserting Multiple Entries
The problem
Introducing the executemany() method
executemany(): Basic syntax
executemany(): Behind the scenes
Project: Converting a CSV file to a MySQL table
Summary
Chapter 7: Creating and Dropping
Creating databases
Removing or deleting databases
Creating tables
Dropping tables
Doing it in Python
Dropping tables with MySQLdb
Project: Web-based administration of MySQL
Summary
Chapter 8: Creating Users and Granting Access
A word on security
Creating users in MySQL
Creating users from Python
Removing users in MySQL
DROPping users in Python
GRANT access in MySQL
Granting access in Python
Removing privileges in MySQL
Using REVOKE in Python
Project: Web-based user administration
Summary
Chapter 9: Date and Time Values
Date and time data types in MySQL
Date and time types in Python
Date and time functions
Project: Logging user activity
Summary
Chapter 10: Aggregate Functions and Clauses
Calculations in MySQL
Trimming results
Server-side sorting in MySQL
Putting it in Python
Project: Incorporating aggregate functions
Summary
Chapter 11: SELECT Alternatives
HAVING clause
Subqueries
Unions
Joins
Doing it in Python
Project: Implement HAVING
Summary
Chapter 12: String Functions
Preparing results before their return
Accessing and using index data
Nuancing data
Project: Creating your own functions
Summary
Chapter 13: Showing MySQL Metadata
MySQL's system environment
Accessing database metadata
Accessing user metadata
Project: Building a database class
Summary
Chapter 14: Disaster Recovery
Every database needs a backup plan
Choosing a backup method
Backing up a database with Python
Summary

What You Will Learn

  • Explore the various means to install MySQL for Python, from using an egg to unrolling a tarball
  • Query the database and retrieve records through MySQL for Python
  • Implement insertion of data into a MySQL database in Python
  • Carry out error-handling in MySQL for Python in order to ensure the robustness of programs
  • Use secure logging techniques to record how your users use your programs
  • Carry out record-by-record retrieval to save a lot of overhead while retrieving data
  • Handle insertion of large amounts of data using iteration and the executemany function
  • Automate the creation and removal of databases and tables using MySQL for Python
  • Use the MySQL for Python library to automate user creation and to administer access controls
  • Log user activity with MySQL for Python by using MySQL's date and time support
  • See how to revise database programs to include more functionality
  • Use aggregate functions to make MySQL take the burden off your web server
  • Save time and processing resources by scripting JOINs and subqueries

In Detail

Python is a dynamic programming language, which is completely enterprise ready, owing largely to the variety of support modules that are available to extend its capabilities. In order to build productive and feature-rich Python applications, we need to use MySQL for Python, a module that provides database support to our applications. Although you might be familiar with accessing data in MySQL, here you will learn how to access data through MySQL for Python efficiently and effectively.

This book demonstrates how to boost the productivity of your Python applications by integrating them with the MySQL database server, the world's most powerful open source database. It will teach you to access the data on your MySQL database server easily with Python's library for MySQL using a practical, hands-on approach. Leaving theory to the classroom, this book uses real-world code to solve real-world problems with real-world solutions.

The book starts by exploring the various means of installing MySQL for Python on different platforms and how to use simple database querying techniques to improve your programs. It then takes you through data insertion, data retrieval, and error-handling techniques to create robust programs. The book also covers automation of both database and user creation, and administration of access controls. As the book progresses, you will learn to use many more advanced features of Python for MySQL that facilitate effective administration of your database through Python. Every chapter is illustrated with a project that you can deploy in your own situation.

By the end of this book, you will know several techniques for interfacing your Python applications with MySQL effectively so that powerful database management through Python becomes easy to achieve and easy to maintain.

Authors

Table of Contents

Chapter 1: Getting Up and Running with MySQL for Python
Getting MySQL for Python
Importing MySQL for Python
Connecting with a database
Multiple database connections
Summary
Chapter 2: Simple Querying
A brief introduction to CRUD
Forming a query in MySQL
Passing a query to MySQL
Using user-defined variables
Determining characteristics of a database and its tables
Changing queries dynamically
Project: A command-line search utility
Room to grow
Summary
Chapter 3: Simple Insertion
Forming a MySQL insertion statement
Helpful ways to nuance an INSERT statement
Passing an insertion through MySQL for Python
Using user-defined variables
Using metadata
Changing insertion values dynamically
Essentials: close and commit
Project: A command-line insertion utility
Summary
Chapter 4: Exception Handling
Why errors and warnings are good for you
Errors versus warnings: There's a big difference
The two main errors in MySQLdb
Warnings in MySQL for Python
Handling exceptions passed from MySQL
Catching different types of exceptions
Creating a feedback loop
Project: Bad apples
Summary
Chapter 5: Results Record-by-Record
The problem
Why?
How?
Project: A movie database
Summary
Chapter 6: Inserting Multiple Entries
The problem
Introducing the executemany() method
executemany(): Basic syntax
executemany(): Behind the scenes
Project: Converting a CSV file to a MySQL table
Summary
Chapter 7: Creating and Dropping
Creating databases
Removing or deleting databases
Creating tables
Dropping tables
Doing it in Python
Dropping tables with MySQLdb
Project: Web-based administration of MySQL
Summary
Chapter 8: Creating Users and Granting Access
A word on security
Creating users in MySQL
Creating users from Python
Removing users in MySQL
DROPping users in Python
GRANT access in MySQL
Granting access in Python
Removing privileges in MySQL
Using REVOKE in Python
Project: Web-based user administration
Summary
Chapter 9: Date and Time Values
Date and time data types in MySQL
Date and time types in Python
Date and time functions
Project: Logging user activity
Summary
Chapter 10: Aggregate Functions and Clauses
Calculations in MySQL
Trimming results
Server-side sorting in MySQL
Putting it in Python
Project: Incorporating aggregate functions
Summary
Chapter 11: SELECT Alternatives
HAVING clause
Subqueries
Unions
Joins
Doing it in Python
Project: Implement HAVING
Summary
Chapter 12: String Functions
Preparing results before their return
Accessing and using index data
Nuancing data
Project: Creating your own functions
Summary
Chapter 13: Showing MySQL Metadata
MySQL's system environment
Accessing database metadata
Accessing user metadata
Project: Building a database class
Summary
Chapter 14: Disaster Recovery
Every database needs a backup plan
Choosing a backup method
Backing up a database with Python
Summary

Book Details

ISBN 139781849510189
Paperback440 pages
Read More

Recommended for You

Learning Python Data Visualization
$ 10.00