SlideShare a Scribd company logo
MySQL Python
CHAPTER – 4
THE BASICS OF SEARCH ENGINE FRIENDLY DESIGN & DEVELOPMENT
Copyright @ 2019 Learntek. All Rights Reserved. 3
MySQL Python : About MySQL
•MySQL is a fast, easy to use relational database. It is currently the most popular
open-source database
•MySQL is used for many small and big businesses. It is developed, marketed and
supported by MySQL AB, a Swedish company. It is written in C and C++.
•MySQL is an open-source database, so you don’t have to pay a single penny to
use it.
MySQL Features
•MySQL is a fast, easy to use relational database.
•MySQL is used for many small and big businesses.
•MySQL is an open-source database, so you don’t have to pay for it.
Copyright @ 2019 Learntek. All Rights Reserved. 4
Download MySQL
Follow these steps:
Go to MySQL official website http://www.mysql.com/downloads/
Choose the version number for MySQL community server which you want.
MySQL Python Connector
MySQL Python Connector is used to access the MySQL database from Python, you
need a database driver. MySQL Connector/Python is a standardized database driver
provided by MySQL.
To check it wether mysql.connector is available or not we type following command
>>> import mysql.connector
Copyright @ 2019 Learntek. All Rights Reserved. 5
Copyright @ 2019 Learntek. All Rights Reserved. 6
After typing this we clearly say that No Module Named as a MySQL is present.
Then we have to install MySQL. Connector for Python. Python needs a MySQL
driver to access the MySQL database.
So, in next we download the mysql-connector with use of pip
C:UsersNitin Arvind Shelke>pip install mysql-connector
Copyright @ 2019 Learntek. All Rights Reserved. 7
Copyright @ 2019 Learntek. All Rights Reserved. 8
After installation we test it whether it work or not, lets check with the following
command
>>> import mysql.connector
Copyright @ 2019 Learntek. All Rights Reserved. 9
Copyright @ 2019 Learntek. All Rights Reserved. 10
The above line imports the MySQL Connector Python module in your program, so
you can use this module’s API to connect MySQL.
If the above code was executed with no errors, the we can say that “MySQL
Connector” is installed properly and get ready to use of it.
>>>from mysql.connector import Error
MySQL connector Error object is used to show us an error when we failed to
connect Databases or if any other database error occurred while working with the
database.
Copyright @ 2019 Learntek. All Rights Reserved. 11
Creating a connection to the database.
After installing the MySQL Python connector, we need to test it to make sure that
it is working correctly, and you can connect to the MySQL database server without
any problems. To verify the installation, you use the following steps:
Type the following line of code
>>> import mysql.connector
To establish a connection to the database we should know the following parameters,
Host= localhost (In general it is same for all)
Database=mysql (You can set as per your wish)
User=root (It is a username)
Password= root@123 (password set by me while installation of MyQL)
>>> mysql.connector.connect( host = 'localhost', database = 'mysql', user = 'root', password = 'root@123')
Copyright @ 2019 Learntek. All Rights Reserved. 12
Copyright @ 2019 Learntek. All Rights Reserved. 13
Show the available Database
You can check if a database exists on your system by listing all databases in your
system by using the “SHOW DATABASES” statement:
>> my_database = mysql.connector.connect( host = 'localhost', database = 'mysql', user = 'root', password = 'root@123’)
>>> cursor = my_database.cursor().
>>> cursor.execute( " show databases " )
>>> for db in cursor:
... print(db)
…
Copyright @ 2019 Learntek. All Rights Reserved. 14
Output
('bank’,)
('information_schema’,)
('mysql’,)
('performance_schema’,)
('sakila’,)
('sys’,)
('world’,)
>>>
Copyright @ 2019 Learntek. All Rights Reserved. 15
16
Creating a Database
To create a database in MySQL, we use the “CREATE DATABASE”
statement to create the database named as “college”:
>>> my_database = mysql.connector.connect( host = 'localhost', user = 'root', password = 'root@123’ )
>>> cursor = my_database.cursor()
>>> cursor.execute( " CREATE DATABASE college " )
>>> for db in cursor:
... print(db)
...
>>> cursor.execute( " show databases " )
>>> for db in cursor:
... print(db)
...
Copyright @ 2019 Learntek. All Rights Reserved.
Copyright @ 2019 Learntek. All Rights Reserved. 17
Copyright @ 2019 Learntek. All Rights Reserved. 18
Creating the Tables
Next, we create the tables for the ‘college’ database.
It is compulsory to define the name of the database while creating the tables for it.
Syntax to create the table is
create table_name(
column 1 datatype,
column 2 datatype,
column 3 datatype,
…………………………………………,
column n datatype
)
Copyright @ 2019 Learntek. All Rights Reserved. 19
Let’s create the table students, department and faculty for the database college.
>>> my_database = mysql.connector.connect ( host = 'localhost', database =
'college', user = 'root', password = 'root@123’ )
>>> cursor = my_database.cursor()
>>>cursor. execute( " CREATE TABLE students ( stud_id varchar(200), stud_name
VARCHAR(215), address VARCHAR(215), city char(100)) " )
>>> cursor. execute( " CREATE TABLE department ( dept_id varchar(200), dept_name
VARCHAR(215)) " )
>>> cursor.execute( "CREATE TABLE faculty ( faculty_id varchar(200),faculty_name
VARCHAR(215) )" )
Copyright @ 2019 Learntek. All Rights Reserved. 20
Show the tables
To display the tables, we will have to use the “SHOW TABLES”
Following code display the all the tables present in the database “college”
>>> cursor. execute ( " SHOW TABLES " )
>>> for x in cursor:
... print(x)
...
('department’,)
('faculty’,)
('students',)
Copyright @ 2019 Learntek. All Rights Reserved. 21
Copyright @ 2019 Learntek. All Rights Reserved. 22
Assign Primary key in table
Primary key : It is a minimal set of attributes (columns) in a table or relation that
can uniquely identifies tuples (rows) in that table.
For example, Student (Stud_Roll_No, Stud_Name, Addr)
In the student relation, attribute Stud_Roll_No alone is a primary key as each
student has a unique id that can identify the student record in the table.
>>> my_database = mysql.connector.connect ( host = 'localhost', database =
'college', user = 'root', password = 'root@123’ )
>>> cursor = my_database.cursor()
>>>cursor. execute( " CREATE TABLE students2 ( stud_id varchar(200) PRIMARY
KEY, stud_name VARCHAR(215), address VARCHAR(215), city char(100)) " )
Copyright @ 2015 Learntek. All Rights Reserved. 23
If the table already exists, use the ALTER TABLE keyword:
>>> my_database = mysql.connector.connect ( host = 'localhost', database = 'college',
user = 'root', password = 'root@123’ )
>>> cursor = my_database.cursor()
>>>cursor.execute( " ALTER TABLE student ADD COLUMN id INT AUTO_INCREMENT PRIMARY
KEY " )
Copyright @ 2019 Learntek. All Rights Reserved. 24
Describe the created tables
Desc keyword is used to describe the table in MySQL.
Following code describe the students table from the database college
>>> cursor.execute("desc students")
>>> for x in cursor:
... print(x)
...
('stud_id', 'varchar(200)', 'YES', '', None, ‘’)
('stud_name', 'varchar(215)', 'YES', '', None, ‘’)
('address', 'varchar(215)', 'YES', '', None, ‘’)
('city', 'char(100)', 'YES', '', None, ‘’)
>>>
Example 2
Following code describe the students2 (where stud_id is mentioned as primary key)
table from the database college
Copyright @ 2019 Learntek. All Rights Reserved. 25
>>> cursor.execute("desc students2")
>>> for x in cursor:
...
print(x) ...
('stud_id', 'varchar(200)', 'NO', 'PRI', None, ‘’)
('stud_name', 'varchar(215)', 'YES', '', None, ‘’)
('address', 'varchar(215)', 'YES', '', None, ‘’)
('city', 'char(100)', 'YES', '', None, ‘’)
>>>
Copyright @ 2019 Learntek. All Rights Reserved. 26
Copyright @ 2019 Learntek. All Rights Reserved. 27
Insert data into the Table
To insert the data into the table, “insert into” statement is used,
Let’s insert the data into the table students of college database,
>>> my_database = mysql.connector.connect ( host = 'localhost', database = 'college', user
= 'root', password = 'root@123’ )
>>> stm = " INSERT INTO students ( stud_id, stud_name, address, city ) VALUES ('101','Nitin
Shelke', 'Congress Nagar', 'Amravati' ) “
>>> cursor = my_database.cursor()
>>> cursor.execute(stm)
Copyright @ 2019 Learntek. All Rights Reserved. 28
Display or select the inserted data from the Table
>>> cursor.execute(" select * from students")
>>> for x in cursor:
...
print(x) ...
('101', 'Nitin Shelke', 'Congress Nagar', 'Amravati')
Copyright @ 2019 Learntek. All Rights Reserved. 29
Alternate way is to use the fetchall() method
>>> cursor.fetchall()
[(‘101’, ‘Nitin Shelke’, ‘Congress Nagar’, ‘Amravati’)]
Copyright @ 2019 Learntek. All Rights Reserved. 30
For more Training Information , Contact Us
Email : info@learntek.org
USA : +1734 418 2465
INDIA : +40 4018 1306
+7799713624

More Related Content

What's hot (20)

Database Anti Patterns
Database Anti Patterns
Robert Treat
 
Java Strings
Java Strings
RaBiya Chaudhry
 
Pandas Series
Pandas Series
Sangita Panchal
 
Array in Java
Array in Java
Shehrevar Davierwala
 
Load Data Fast!
Load Data Fast!
Karwin Software Solutions LLC
 
17. Trees and Graphs
17. Trees and Graphs
Intro C# Book
 
Python programming : Classes objects
Python programming : Classes objects
Emertxe Information Technologies Pvt Ltd
 
Time andspacecomplexity
Time andspacecomplexity
LAKSHMITHARUN PONNAM
 
L11 array list
L11 array list
teach4uin
 
SQL logical operators
SQL logical operators
Dr. C.V. Suresh Babu
 
Pandas csv
Pandas csv
Devashish Kumar
 
Pandas
Pandas
maikroeder
 
Advanced Python : Static and Class Methods
Advanced Python : Static and Class Methods
Bhanwar Singh Meena
 
Binary Heap Tree, Data Structure
Binary Heap Tree, Data Structure
Anand Ingle
 
Introduction to SQLAlchemy ORM
Introduction to SQLAlchemy ORM
Jason Myers
 
Python Pandas
Python Pandas
Sunil OS
 
MySQL Workbench Tutorial | Introduction To MySQL Workbench | MySQL DBA Traini...
MySQL Workbench Tutorial | Introduction To MySQL Workbench | MySQL DBA Traini...
Edureka!
 
Python NumPy Tutorial | NumPy Array | Edureka
Python NumPy Tutorial | NumPy Array | Edureka
Edureka!
 
PYTHON-Chapter 3-Classes and Object-oriented Programming: MAULIK BORSANIYA
PYTHON-Chapter 3-Classes and Object-oriented Programming: MAULIK BORSANIYA
Maulik Borsaniya
 
Sql query patterns, optimized
Sql query patterns, optimized
Karwin Software Solutions LLC
 
Database Anti Patterns
Database Anti Patterns
Robert Treat
 
17. Trees and Graphs
17. Trees and Graphs
Intro C# Book
 
L11 array list
L11 array list
teach4uin
 
Advanced Python : Static and Class Methods
Advanced Python : Static and Class Methods
Bhanwar Singh Meena
 
Binary Heap Tree, Data Structure
Binary Heap Tree, Data Structure
Anand Ingle
 
Introduction to SQLAlchemy ORM
Introduction to SQLAlchemy ORM
Jason Myers
 
Python Pandas
Python Pandas
Sunil OS
 
MySQL Workbench Tutorial | Introduction To MySQL Workbench | MySQL DBA Traini...
MySQL Workbench Tutorial | Introduction To MySQL Workbench | MySQL DBA Traini...
Edureka!
 
Python NumPy Tutorial | NumPy Array | Edureka
Python NumPy Tutorial | NumPy Array | Edureka
Edureka!
 
PYTHON-Chapter 3-Classes and Object-oriented Programming: MAULIK BORSANIYA
PYTHON-Chapter 3-Classes and Object-oriented Programming: MAULIK BORSANIYA
Maulik Borsaniya
 

Similar to Mysql python (20)

Struts 2 – Database Access
Struts 2 – Database Access
Ducat India
 
Python database access
Python database access
Smt. Indira Gandhi College of Engineering, Navi Mumbai, Mumbai
 
Python my sql database connection
Python my sql database connection
Learnbay Datascience
 
PYTHON_DATABASE_CONNECTIVITY_for_class_12.pptx
PYTHON_DATABASE_CONNECTIVITY_for_class_12.pptx
HistoryScienceWorld
 
Node.js with MySQL.pdf
Node.js with MySQL.pdf
SudhanshiBakre1
 
20201106 hk-py con-mysql-shell
20201106 hk-py con-mysql-shell
Ivan Ma
 
MySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA Tool
Miguel Araújo
 
All Things Open 2016 -- Database Programming for Newbies
All Things Open 2016 -- Database Programming for Newbies
Dave Stokes
 
Develop Python Applications with MySQL Connector/Python
Develop Python Applications with MySQL Connector/Python
Jesper Wisborg Krogh
 
[OSC 2020 Online/Nagoya] MySQLドキュメントストア
[OSC 2020 Online/Nagoya] MySQLドキュメントストア
Ryusuke Kajiyama
 
Terraform introduction
Terraform introduction
Jason Vance
 
Sq li
Sq li
Ashok kumar sandhyala
 
9 Python programming notes for ktu physics and computer application semester 4
9 Python programming notes for ktu physics and computer application semester 4
ebindboby1
 
python db connection samples and program
python db connection samples and program
usha raj
 
Designer's Favorite New Features in SQLServer
Designer's Favorite New Features in SQLServer
Karen Lopez
 
PHP with MYSQL
PHP with MYSQL
R.Karthikeyan - Vivekananda College
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
Dave Stokes
 
Introduction databases and MYSQL
Introduction databases and MYSQL
Naeem Junejo
 
PHP mysql Introduction database
PHP mysql Introduction database
Mudasir Syed
 
A Designer's Favourite Security and Privacy Features in SQL Server and Azure ...
A Designer's Favourite Security and Privacy Features in SQL Server and Azure ...
Karen Lopez
 
Struts 2 – Database Access
Struts 2 – Database Access
Ducat India
 
PYTHON_DATABASE_CONNECTIVITY_for_class_12.pptx
PYTHON_DATABASE_CONNECTIVITY_for_class_12.pptx
HistoryScienceWorld
 
20201106 hk-py con-mysql-shell
20201106 hk-py con-mysql-shell
Ivan Ma
 
MySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA Tool
Miguel Araújo
 
All Things Open 2016 -- Database Programming for Newbies
All Things Open 2016 -- Database Programming for Newbies
Dave Stokes
 
Develop Python Applications with MySQL Connector/Python
Develop Python Applications with MySQL Connector/Python
Jesper Wisborg Krogh
 
[OSC 2020 Online/Nagoya] MySQLドキュメントストア
[OSC 2020 Online/Nagoya] MySQLドキュメントストア
Ryusuke Kajiyama
 
Terraform introduction
Terraform introduction
Jason Vance
 
9 Python programming notes for ktu physics and computer application semester 4
9 Python programming notes for ktu physics and computer application semester 4
ebindboby1
 
python db connection samples and program
python db connection samples and program
usha raj
 
Designer's Favorite New Features in SQLServer
Designer's Favorite New Features in SQLServer
Karen Lopez
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
Dave Stokes
 
Introduction databases and MYSQL
Introduction databases and MYSQL
Naeem Junejo
 
PHP mysql Introduction database
PHP mysql Introduction database
Mudasir Syed
 
A Designer's Favourite Security and Privacy Features in SQL Server and Azure ...
A Designer's Favourite Security and Privacy Features in SQL Server and Azure ...
Karen Lopez
 
Ad

More from Janu Jahnavi (20)

Analytics using r programming
Analytics using r programming
Janu Jahnavi
 
Software testing
Software testing
Janu Jahnavi
 
Software testing
Software testing
Janu Jahnavi
 
Spring
Spring
Janu Jahnavi
 
Stack skills
Stack skills
Janu Jahnavi
 
Ui devopler
Ui devopler
Janu Jahnavi
 
Apache flink
Apache flink
Janu Jahnavi
 
Apache flink
Apache flink
Janu Jahnavi
 
Angular js
Angular js
Janu Jahnavi
 
Mysql python
Mysql python
Janu Jahnavi
 
Ruby with cucmber
Ruby with cucmber
Janu Jahnavi
 
Apache kafka
Apache kafka
Janu Jahnavi
 
Apache kafka
Apache kafka
Janu Jahnavi
 
Google cloud platform
Google cloud platform
Janu Jahnavi
 
Google cloud Platform
Google cloud Platform
Janu Jahnavi
 
Apache spark with java 8
Apache spark with java 8
Janu Jahnavi
 
Apache spark with java 8
Apache spark with java 8
Janu Jahnavi
 
Categorizing and pos tagging with nltk python
Categorizing and pos tagging with nltk python
Janu Jahnavi
 
Categorizing and pos tagging with nltk python
Categorizing and pos tagging with nltk python
Janu Jahnavi
 
Python multithreading
Python multithreading
Janu Jahnavi
 
Analytics using r programming
Analytics using r programming
Janu Jahnavi
 
Google cloud platform
Google cloud platform
Janu Jahnavi
 
Google cloud Platform
Google cloud Platform
Janu Jahnavi
 
Apache spark with java 8
Apache spark with java 8
Janu Jahnavi
 
Apache spark with java 8
Apache spark with java 8
Janu Jahnavi
 
Categorizing and pos tagging with nltk python
Categorizing and pos tagging with nltk python
Janu Jahnavi
 
Categorizing and pos tagging with nltk python
Categorizing and pos tagging with nltk python
Janu Jahnavi
 
Python multithreading
Python multithreading
Janu Jahnavi
 
Ad

Recently uploaded (20)

Final Sketch Designs for poster production.pptx
Final Sketch Designs for poster production.pptx
bobby205207
 
Rai dyansty Chach or Brahamn dynasty, History of Dahir History of Sindh NEP.pptx
Rai dyansty Chach or Brahamn dynasty, History of Dahir History of Sindh NEP.pptx
Dr. Ravi Shankar Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
BUSINESS QUIZ PRELIMS | QUIZ CLUB OF PSGCAS | 9 SEPTEMBER 2024
BUSINESS QUIZ PRELIMS | QUIZ CLUB OF PSGCAS | 9 SEPTEMBER 2024
Quiz Club of PSG College of Arts & Science
 
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
ChristinaFortunova
 
LDMMIA Spring Ending Guest Grad Student News
LDMMIA Spring Ending Guest Grad Student News
LDM & Mia eStudios
 
LDMMIA Free Reiki Yoga S9 Grad Level Intuition II
LDMMIA Free Reiki Yoga S9 Grad Level Intuition II
LDM & Mia eStudios
 
MATERI PPT TOPIK 1 LANDASAN FILOSOFIS PENDIDIKAN
MATERI PPT TOPIK 1 LANDASAN FILOSOFIS PENDIDIKAN
aditya23173
 
What is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptx
Ramakrishna Reddy Bijjam
 
Vikas Bansal Himachal Pradesh: A Visionary Transforming Himachal’s Educationa...
Vikas Bansal Himachal Pradesh: A Visionary Transforming Himachal’s Educationa...
Himalayan Group of Professional Institutions (HGPI)
 
june 10 2025 ppt for madden on art science is over.pptx
june 10 2025 ppt for madden on art science is over.pptx
roger malina
 
SPENT QUIZ NQL JR FEST 5.0 BY SOURAV.pptx
SPENT QUIZ NQL JR FEST 5.0 BY SOURAV.pptx
Sourav Kr Podder
 
IDF 30min presentation - December 2, 2024.pptx
IDF 30min presentation - December 2, 2024.pptx
ArneeAgligar
 
How to Manage Upselling of Subscriptions in Odoo 18
How to Manage Upselling of Subscriptions in Odoo 18
Celine George
 
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
TechSoup
 
Allomorps and word formation.pptx - Google Slides.pdf
Allomorps and word formation.pptx - Google Slides.pdf
Abha Pandey
 
How to Configure Vendor Management in Lunch App of Odoo 18
How to Configure Vendor Management in Lunch App of Odoo 18
Celine George
 
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Restu Bias Primandhika
 
Ray Dalio How Countries go Broke the Big Cycle
Ray Dalio How Countries go Broke the Big Cycle
Dadang Solihin
 
Capitol Doctoral Presentation -June 2025.pptx
Capitol Doctoral Presentation -June 2025.pptx
CapitolTechU
 
Overview of Employee in Odoo 18 - Odoo Slides
Overview of Employee in Odoo 18 - Odoo Slides
Celine George
 
Final Sketch Designs for poster production.pptx
Final Sketch Designs for poster production.pptx
bobby205207
 
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
ChristinaFortunova
 
LDMMIA Spring Ending Guest Grad Student News
LDMMIA Spring Ending Guest Grad Student News
LDM & Mia eStudios
 
LDMMIA Free Reiki Yoga S9 Grad Level Intuition II
LDMMIA Free Reiki Yoga S9 Grad Level Intuition II
LDM & Mia eStudios
 
MATERI PPT TOPIK 1 LANDASAN FILOSOFIS PENDIDIKAN
MATERI PPT TOPIK 1 LANDASAN FILOSOFIS PENDIDIKAN
aditya23173
 
What is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptx
Ramakrishna Reddy Bijjam
 
june 10 2025 ppt for madden on art science is over.pptx
june 10 2025 ppt for madden on art science is over.pptx
roger malina
 
SPENT QUIZ NQL JR FEST 5.0 BY SOURAV.pptx
SPENT QUIZ NQL JR FEST 5.0 BY SOURAV.pptx
Sourav Kr Podder
 
IDF 30min presentation - December 2, 2024.pptx
IDF 30min presentation - December 2, 2024.pptx
ArneeAgligar
 
How to Manage Upselling of Subscriptions in Odoo 18
How to Manage Upselling of Subscriptions in Odoo 18
Celine George
 
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
ABCs of Bookkeeping for Nonprofits TechSoup.pdf
TechSoup
 
Allomorps and word formation.pptx - Google Slides.pdf
Allomorps and word formation.pptx - Google Slides.pdf
Abha Pandey
 
How to Configure Vendor Management in Lunch App of Odoo 18
How to Configure Vendor Management in Lunch App of Odoo 18
Celine George
 
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Restu Bias Primandhika
 
Ray Dalio How Countries go Broke the Big Cycle
Ray Dalio How Countries go Broke the Big Cycle
Dadang Solihin
 
Capitol Doctoral Presentation -June 2025.pptx
Capitol Doctoral Presentation -June 2025.pptx
CapitolTechU
 
Overview of Employee in Odoo 18 - Odoo Slides
Overview of Employee in Odoo 18 - Odoo Slides
Celine George
 

Mysql python

  • 2. CHAPTER – 4 THE BASICS OF SEARCH ENGINE FRIENDLY DESIGN & DEVELOPMENT
  • 3. Copyright @ 2019 Learntek. All Rights Reserved. 3 MySQL Python : About MySQL •MySQL is a fast, easy to use relational database. It is currently the most popular open-source database •MySQL is used for many small and big businesses. It is developed, marketed and supported by MySQL AB, a Swedish company. It is written in C and C++. •MySQL is an open-source database, so you don’t have to pay a single penny to use it. MySQL Features •MySQL is a fast, easy to use relational database. •MySQL is used for many small and big businesses. •MySQL is an open-source database, so you don’t have to pay for it.
  • 4. Copyright @ 2019 Learntek. All Rights Reserved. 4 Download MySQL Follow these steps: Go to MySQL official website http://www.mysql.com/downloads/ Choose the version number for MySQL community server which you want. MySQL Python Connector MySQL Python Connector is used to access the MySQL database from Python, you need a database driver. MySQL Connector/Python is a standardized database driver provided by MySQL. To check it wether mysql.connector is available or not we type following command >>> import mysql.connector
  • 5. Copyright @ 2019 Learntek. All Rights Reserved. 5
  • 6. Copyright @ 2019 Learntek. All Rights Reserved. 6 After typing this we clearly say that No Module Named as a MySQL is present. Then we have to install MySQL. Connector for Python. Python needs a MySQL driver to access the MySQL database. So, in next we download the mysql-connector with use of pip C:UsersNitin Arvind Shelke>pip install mysql-connector
  • 7. Copyright @ 2019 Learntek. All Rights Reserved. 7
  • 8. Copyright @ 2019 Learntek. All Rights Reserved. 8 After installation we test it whether it work or not, lets check with the following command >>> import mysql.connector
  • 9. Copyright @ 2019 Learntek. All Rights Reserved. 9
  • 10. Copyright @ 2019 Learntek. All Rights Reserved. 10 The above line imports the MySQL Connector Python module in your program, so you can use this module’s API to connect MySQL. If the above code was executed with no errors, the we can say that “MySQL Connector” is installed properly and get ready to use of it. >>>from mysql.connector import Error MySQL connector Error object is used to show us an error when we failed to connect Databases or if any other database error occurred while working with the database.
  • 11. Copyright @ 2019 Learntek. All Rights Reserved. 11 Creating a connection to the database. After installing the MySQL Python connector, we need to test it to make sure that it is working correctly, and you can connect to the MySQL database server without any problems. To verify the installation, you use the following steps: Type the following line of code >>> import mysql.connector To establish a connection to the database we should know the following parameters, Host= localhost (In general it is same for all) Database=mysql (You can set as per your wish) User=root (It is a username) Password= root@123 (password set by me while installation of MyQL) >>> mysql.connector.connect( host = 'localhost', database = 'mysql', user = 'root', password = 'root@123')
  • 12. Copyright @ 2019 Learntek. All Rights Reserved. 12
  • 13. Copyright @ 2019 Learntek. All Rights Reserved. 13 Show the available Database You can check if a database exists on your system by listing all databases in your system by using the “SHOW DATABASES” statement: >> my_database = mysql.connector.connect( host = 'localhost', database = 'mysql', user = 'root', password = 'root@123’) >>> cursor = my_database.cursor(). >>> cursor.execute( " show databases " ) >>> for db in cursor: ... print(db) …
  • 14. Copyright @ 2019 Learntek. All Rights Reserved. 14 Output ('bank’,) ('information_schema’,) ('mysql’,) ('performance_schema’,) ('sakila’,) ('sys’,) ('world’,) >>>
  • 15. Copyright @ 2019 Learntek. All Rights Reserved. 15
  • 16. 16 Creating a Database To create a database in MySQL, we use the “CREATE DATABASE” statement to create the database named as “college”: >>> my_database = mysql.connector.connect( host = 'localhost', user = 'root', password = 'root@123’ ) >>> cursor = my_database.cursor() >>> cursor.execute( " CREATE DATABASE college " ) >>> for db in cursor: ... print(db) ... >>> cursor.execute( " show databases " ) >>> for db in cursor: ... print(db) ... Copyright @ 2019 Learntek. All Rights Reserved.
  • 17. Copyright @ 2019 Learntek. All Rights Reserved. 17
  • 18. Copyright @ 2019 Learntek. All Rights Reserved. 18 Creating the Tables Next, we create the tables for the ‘college’ database. It is compulsory to define the name of the database while creating the tables for it. Syntax to create the table is create table_name( column 1 datatype, column 2 datatype, column 3 datatype, …………………………………………, column n datatype )
  • 19. Copyright @ 2019 Learntek. All Rights Reserved. 19 Let’s create the table students, department and faculty for the database college. >>> my_database = mysql.connector.connect ( host = 'localhost', database = 'college', user = 'root', password = 'root@123’ ) >>> cursor = my_database.cursor() >>>cursor. execute( " CREATE TABLE students ( stud_id varchar(200), stud_name VARCHAR(215), address VARCHAR(215), city char(100)) " ) >>> cursor. execute( " CREATE TABLE department ( dept_id varchar(200), dept_name VARCHAR(215)) " ) >>> cursor.execute( "CREATE TABLE faculty ( faculty_id varchar(200),faculty_name VARCHAR(215) )" )
  • 20. Copyright @ 2019 Learntek. All Rights Reserved. 20 Show the tables To display the tables, we will have to use the “SHOW TABLES” Following code display the all the tables present in the database “college” >>> cursor. execute ( " SHOW TABLES " ) >>> for x in cursor: ... print(x) ... ('department’,) ('faculty’,) ('students',)
  • 21. Copyright @ 2019 Learntek. All Rights Reserved. 21
  • 22. Copyright @ 2019 Learntek. All Rights Reserved. 22 Assign Primary key in table Primary key : It is a minimal set of attributes (columns) in a table or relation that can uniquely identifies tuples (rows) in that table. For example, Student (Stud_Roll_No, Stud_Name, Addr) In the student relation, attribute Stud_Roll_No alone is a primary key as each student has a unique id that can identify the student record in the table. >>> my_database = mysql.connector.connect ( host = 'localhost', database = 'college', user = 'root', password = 'root@123’ ) >>> cursor = my_database.cursor() >>>cursor. execute( " CREATE TABLE students2 ( stud_id varchar(200) PRIMARY KEY, stud_name VARCHAR(215), address VARCHAR(215), city char(100)) " )
  • 23. Copyright @ 2015 Learntek. All Rights Reserved. 23 If the table already exists, use the ALTER TABLE keyword: >>> my_database = mysql.connector.connect ( host = 'localhost', database = 'college', user = 'root', password = 'root@123’ ) >>> cursor = my_database.cursor() >>>cursor.execute( " ALTER TABLE student ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY " )
  • 24. Copyright @ 2019 Learntek. All Rights Reserved. 24 Describe the created tables Desc keyword is used to describe the table in MySQL. Following code describe the students table from the database college >>> cursor.execute("desc students") >>> for x in cursor: ... print(x) ... ('stud_id', 'varchar(200)', 'YES', '', None, ‘’) ('stud_name', 'varchar(215)', 'YES', '', None, ‘’) ('address', 'varchar(215)', 'YES', '', None, ‘’) ('city', 'char(100)', 'YES', '', None, ‘’) >>> Example 2 Following code describe the students2 (where stud_id is mentioned as primary key) table from the database college
  • 25. Copyright @ 2019 Learntek. All Rights Reserved. 25 >>> cursor.execute("desc students2") >>> for x in cursor: ... print(x) ... ('stud_id', 'varchar(200)', 'NO', 'PRI', None, ‘’) ('stud_name', 'varchar(215)', 'YES', '', None, ‘’) ('address', 'varchar(215)', 'YES', '', None, ‘’) ('city', 'char(100)', 'YES', '', None, ‘’) >>>
  • 26. Copyright @ 2019 Learntek. All Rights Reserved. 26
  • 27. Copyright @ 2019 Learntek. All Rights Reserved. 27 Insert data into the Table To insert the data into the table, “insert into” statement is used, Let’s insert the data into the table students of college database, >>> my_database = mysql.connector.connect ( host = 'localhost', database = 'college', user = 'root', password = 'root@123’ ) >>> stm = " INSERT INTO students ( stud_id, stud_name, address, city ) VALUES ('101','Nitin Shelke', 'Congress Nagar', 'Amravati' ) “ >>> cursor = my_database.cursor() >>> cursor.execute(stm)
  • 28. Copyright @ 2019 Learntek. All Rights Reserved. 28 Display or select the inserted data from the Table >>> cursor.execute(" select * from students") >>> for x in cursor: ... print(x) ... ('101', 'Nitin Shelke', 'Congress Nagar', 'Amravati')
  • 29. Copyright @ 2019 Learntek. All Rights Reserved. 29 Alternate way is to use the fetchall() method >>> cursor.fetchall() [(‘101’, ‘Nitin Shelke’, ‘Congress Nagar’, ‘Amravati’)]
  • 30. Copyright @ 2019 Learntek. All Rights Reserved. 30 For more Training Information , Contact Us Email : [email protected] USA : +1734 418 2465 INDIA : +40 4018 1306 +7799713624