Python Database Connection

Programmers might expect that Python may make database programming more straightforward and painless job, the Python database API supply with database-neutral programming interface for different databases.

These are:

  • MySQL
  • SQLite
  • MS SQL
  • PostgreSQL
  • Informix
  • Sybase
  • Inter-base
  • Oracle etc….

The DB-API is the standard for Python's database interface.

What is Database?

The database is a collection of organized information that can easily be used, managed, update, and they are classified according to their organizational approach.

The Python Database interfaces are categorized into two. These are:

Generic Database Interface

Most Python's database interface remains to Python's DB-API standard and most of the databases have ODBC support. Other than that Java database usually support JDBC and programmers can work with that from Jython.

Relational Database System Interface

This employs a relational model with support of SQL.  Lists of general-purpose database systems are:

  1. Firebird
  2. Informix
  3. SAP DB
  4. MS SQL server
  5. Access
  6. Ingres
  7. MySQL etc….

Other than that, the lists of data warehouse database systems are:

  1. Teradata
  2. IBM Netezza

There are other non-relational categories of databases. These are:

  • Record-based databases
  • XML databases
  • Graph databases

Native Python databases are:

  • SnakeSQL
  • Buzhug

What Database API Includes

Using Python structure, DB-API provides standard and support for working with databases. The API consists of:

  • Bring in the API module
  • Obtain database connection
  • Issue SQL statements and then store procedures
  • Close the connection

Benefits of Python Database Programming

  • Programming in Python is considerably simple and efficient with compared to other languages, so as the database programming
  • Python database is portable, and the program is also portable so both can give an advantage in case of portability
  • Python supports SQL cursors
  • It also supports Relational Database systems
  • The API of Python for the database is compatible with other databases also
  • It is platform independent

Defining MySQL Database

It is an interface for associating SQL database server from Python and uses the DB-API of Python to work.

How to Implement MySQL Database

To use MySQL database using Python, you need first to install it on your machine; then just type the script given below to implement MySQL within your program.

import MySQLdb

If any error occurs then it means that the MySQL module is not installed and programmers can download it from -  https://sourceforge.net/projects/mysql-python/

Database Program Using Python

# importing the module
import MySQLdb

# opening a database connection
db = MySQLdb.connect  ("localhost","testprog","stud","PYDB")

# define a cursor object
cursor = conn.cursor

# drop table if exists
Cursor.execute("IF STUDENT TABLE EXISTS DROP IT")

# query
sql = "CREATE TABLE STUDENT (NAME CHAR(30) NOT NULL, CLASS CHAR(5), AGE INT, GENDER CHAR(8), MARKS INT"

# execute query
cursor.execute(sql)

# close object
cursor.close()

# close connection
conn.close()

Database Operations

There are various operations that programmers can perform within Python program. To deal with these statements, you must have a good knowledge of Database programming and SQL.

Database Operations
Environment VariablesDescription
INSERTIt is an SQL statement used to create a record into a table.
READFetches useful information from the database.
UPDATEIt is used update those available or already existing record(s).
DELETEIt is used to delete records from the database.
ROLLBACKIt works like "undo", which reverts all the changes that you have made.

Courses
Subscribe Updates via Email

Join 49,000+ W3schools lovers and get all the latest tutorials, programs, algorithms in your inbox.