PYTHON MYSQL
INSTALL CONNECTOR
At Anaconda prompt:
(base) C:Windowssystem32>python -m pip install -U pip
(base) C:Windowssystem32>pip install mysql
(base) C:Windowssystem32>pip install mysql-connector
TEST MYSQL CONNECTOR
To test if the installation was successful, or if you already have "MySQL Connector" installed,
create a Python page with the following content:
Eg:
File name - demo_mysql_test.py: contains code
import mysql.connector
Output: C:UsersMy Name>python demo_mysql_test.py
If the above code was executed with no errors, "MySQL Connector" is installed and ready to
be used.
CREATE CONNECTION
Start by creating a connection to the database.
Use the username and password from your MySQL database:
import mysql.connector
mydb = mysql.connector.connect( host="localhost", user="root", passwd=“ ")
print(mydb)
Output:<mysql.connector.connection.MySQLConnection object at
0x0000025AE384A5C0>
Now you can start querying the database using SQL statements.
CREATING A DATABASE
create a database named "mydatabase":
import mysql.connector
mydb = mysql.connector.connect( host="localhost", user="root",passwd=“amity")
mycur = mydb.cursor()
mycur.execute("CREATE DATABASE amity")
#If this page is executed with no error, you have successfully created a database.
CHECK IF DATABASE EXISTS
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd=“amity",
database="amity")
mycur=mydb.cursor()
mycur.execute("show databases")
for x in mycur:
print (x)
Output:
('information_schema',)
('amity',)
('mysql',)
('online_classes',)
('performance_schema',)
('sch',)
('school',)
('test',)
CREATING A TABLE
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd=“ ",
database="amity")
mycur=mydb.cursor()
print (mydb)
mycur.execute("create table student(admno int primary key, name char(20), address
varchar(30))")
#If this page is executed with no error, you have successfully created a table named
“student".
CHECK IF TABLE EXISTS
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
print (mydb)
mycur.execute("show tables")
for x in mycur:
print (x)
Output:
<mysql.connector.connection.MySQLConnection object at
0x0000025AE3820B38>
('student',)
ALTER TABLE
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
print (mydb)
mycur.execute("alter table student add phno int (10)")
mycur.execute("describe student")
for x in mycur:
print(x)
('admno', 'int(11)', 'NO', 'PRI', None, '')
('name', 'char(20)', 'YES', '', None, '')
('address', 'varchar(30)', 'YES', '', None, '')
('phno', 'int(10)', 'YES', '', None, '')
PYTHON MYSQL INSERT INTO TABLE
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
print (mydb)
sql="insert into student(admno,name,address,phno) values(%s,%s,%s,%s)"
val=(1,"monalisa","lajpat nagar",11111111)
mycur.execute(sql,val)
mydb.commit()
print(mycur.rowcount, "record inserted.")
Important!: Notice the statement: mydb.commit(). It is required to make the changes, otherwise no changes
are made to the table.
Output:
C:UsersMy Name>python demo_mysql_insert.py
1 record inserted.
INSERT MULTIPLE ROWS
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
print (mydb)
sql="insert into student(admno,name,address,phno) values(%s,%s,%s,%s)“
val= [ (3,"gggg","ln",4444),(4,"kkkk","malviyanagar",888888) ]
mycur.executemany(sql,val)
mydb.commit()
print(mycur.rowcount, "record inserted.")
Output:
2 record was inserted.
PYTHON MYSQL SELECT FROM
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
mycur.execute("select * from student")
for x in mycur:
print (x)
Output:
(1, 'monalisa', 'lajpat nagar', 11111111)
(2, 'monica', 'lajpat nagar', 2222222)
(3, 'gggg', 'ln', 4444)
(4, 'kkkk', 'malviyanagar', 888888)
USING THE FETCHONE() METHOD
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
mycur.execute("select * from student")
myresult = mycur.fetchone() # gets only one record
print(myresult)
Output:
C:UsersMy Name>python demo_mysql_select_fetchone.py
(1, 'John', 'Highway 21')
SELECT WITH A FILTER
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
mycur.execute("select * from student where address='malviyanagar'")
myresult = mycur.fetchall() # gets multiple records
print(myresult)
Output:
[(4, 'kkkk', 'malviyanagar', 888888), (6, 'kkkk', 'malviyanagar', 888888), (7, 'xxxxxx', 'malviyanagar', 9999999)]
PYTHON MYSQL DELETE
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
sql="delete from student where name=%s "
val=(“kkkk",)
mycur.execute(sql,val)
mydb.commit()
mycur.execute("select*from student ")
for x in mycur:
print (x)
UPDATE
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
mycur.execute("UPDATE student set name =‘GAUTAM' where admno=3")
mycur.execute("select * from student")
for x in mycur:
print (x)
MYSQL LIMIT
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
mycur.execute("select * from student LIMIT 2") # Shows only 2 records
for x in mycur:
print (x)
PYTHON
MYSQL DROP
TABLE
import mysql.connector
mydb=mysql.connector.connect
(host="localhost",
user="root",passwd="",
database="amity")
mycur=mydb.cursor()
sql="drop table if exists employee“ #
deletes the table
mycur.execute(sql)
python-mysql connectivity (1).pdf

python-mysql connectivity (1).pdf

  • 1.
  • 2.
    INSTALL CONNECTOR At Anacondaprompt: (base) C:Windowssystem32>python -m pip install -U pip (base) C:Windowssystem32>pip install mysql (base) C:Windowssystem32>pip install mysql-connector
  • 3.
    TEST MYSQL CONNECTOR Totest if the installation was successful, or if you already have "MySQL Connector" installed, create a Python page with the following content: Eg: File name - demo_mysql_test.py: contains code import mysql.connector Output: C:UsersMy Name>python demo_mysql_test.py If the above code was executed with no errors, "MySQL Connector" is installed and ready to be used.
  • 4.
    CREATE CONNECTION Start bycreating a connection to the database. Use the username and password from your MySQL database: import mysql.connector mydb = mysql.connector.connect( host="localhost", user="root", passwd=“ ") print(mydb) Output:<mysql.connector.connection.MySQLConnection object at 0x0000025AE384A5C0> Now you can start querying the database using SQL statements.
  • 5.
    CREATING A DATABASE createa database named "mydatabase": import mysql.connector mydb = mysql.connector.connect( host="localhost", user="root",passwd=“amity") mycur = mydb.cursor() mycur.execute("CREATE DATABASE amity") #If this page is executed with no error, you have successfully created a database.
  • 6.
    CHECK IF DATABASEEXISTS import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd=“amity", database="amity") mycur=mydb.cursor() mycur.execute("show databases") for x in mycur: print (x) Output: ('information_schema',) ('amity',) ('mysql',) ('online_classes',) ('performance_schema',) ('sch',) ('school',) ('test',)
  • 7.
    CREATING A TABLE importmysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd=“ ", database="amity") mycur=mydb.cursor() print (mydb) mycur.execute("create table student(admno int primary key, name char(20), address varchar(30))") #If this page is executed with no error, you have successfully created a table named “student".
  • 8.
    CHECK IF TABLEEXISTS import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() print (mydb) mycur.execute("show tables") for x in mycur: print (x) Output: <mysql.connector.connection.MySQLConnection object at 0x0000025AE3820B38> ('student',)
  • 9.
    ALTER TABLE import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() print(mydb) mycur.execute("alter table student add phno int (10)") mycur.execute("describe student") for x in mycur: print(x) ('admno', 'int(11)', 'NO', 'PRI', None, '') ('name', 'char(20)', 'YES', '', None, '') ('address', 'varchar(30)', 'YES', '', None, '') ('phno', 'int(10)', 'YES', '', None, '')
  • 10.
    PYTHON MYSQL INSERTINTO TABLE import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() print (mydb) sql="insert into student(admno,name,address,phno) values(%s,%s,%s,%s)" val=(1,"monalisa","lajpat nagar",11111111) mycur.execute(sql,val) mydb.commit() print(mycur.rowcount, "record inserted.") Important!: Notice the statement: mydb.commit(). It is required to make the changes, otherwise no changes are made to the table. Output: C:UsersMy Name>python demo_mysql_insert.py 1 record inserted.
  • 11.
    INSERT MULTIPLE ROWS importmysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() print (mydb) sql="insert into student(admno,name,address,phno) values(%s,%s,%s,%s)“ val= [ (3,"gggg","ln",4444),(4,"kkkk","malviyanagar",888888) ] mycur.executemany(sql,val) mydb.commit() print(mycur.rowcount, "record inserted.") Output: 2 record was inserted.
  • 12.
    PYTHON MYSQL SELECTFROM import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() mycur.execute("select * from student") for x in mycur: print (x) Output: (1, 'monalisa', 'lajpat nagar', 11111111) (2, 'monica', 'lajpat nagar', 2222222) (3, 'gggg', 'ln', 4444) (4, 'kkkk', 'malviyanagar', 888888)
  • 13.
    USING THE FETCHONE()METHOD import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() mycur.execute("select * from student") myresult = mycur.fetchone() # gets only one record print(myresult) Output: C:UsersMy Name>python demo_mysql_select_fetchone.py (1, 'John', 'Highway 21')
  • 14.
    SELECT WITH AFILTER import mysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() mycur.execute("select * from student where address='malviyanagar'") myresult = mycur.fetchall() # gets multiple records print(myresult) Output: [(4, 'kkkk', 'malviyanagar', 888888), (6, 'kkkk', 'malviyanagar', 888888), (7, 'xxxxxx', 'malviyanagar', 9999999)]
  • 15.
    PYTHON MYSQL DELETE importmysql.connector mydb=mysql.connector.connect (host="localhost", user="root",passwd="", database="amity") mycur=mydb.cursor() sql="delete from student where name=%s " val=(“kkkk",) mycur.execute(sql,val) mydb.commit() mycur.execute("select*from student ") for x in mycur: print (x)
  • 16.
  • 17.
  • 18.