Tools, FAQ, Tutorials:
MySQLConnection.cursor() and MySQLCursor.execute()
How to use MySQLCursor to run MySQL statements with "mysql.connector" module?
✍: FYIcenter.com
"mysql.connector" module provides you 2 ways to run MySQL statements:
1. Use con.cmd_query() - If you don't want to receive any data back from the MySQL server, you can use the MySQLConnection.cmd_query() method to run MySQL statements.
2. Use cur.execute() - If you want to receive data back from the MySQL server, you need create a MySQLCursor object by calling cur=con.cursor(), and use the MySQLCursor.execute() method to run MySQL statements. The MySQLCursor object provides you methods to access received data.
Here are some commonly used methods and properties related MySQLCursor objects.
Here is an example Python script, cursor_execute.py, that uses con.cursor() method to create a MySQLCursor object, which is then used to run MySQL statements and capture received data from the MySQL server.
# cursor_execute.py
# Copyright (c) FYIcenter.com
from mysql.connector import connect, Error
from random import *
con = connect(host="127.0.0.1", port=3306, \
user="guest", password="retneciyf")
con.cmd_init_db("test")
try:
id = str(randint(100, 900))
sql = "INSERT INTO fyi_links (id, url, title) \
VALUES ("+id+", 'dev.fyicenter.com', 'Developer FYI')"
res = con.cmd_query(sql)
print("1. res: ", res)
con.commit()
except Error as err:
print(err)
print("Failed to insert data...")
try:
cur = con.cursor()
id = str(randint(100, 900))
sql = "INSERT INTO fyi_links (id, url, title) \
VALUES ("+id+", 'dev.fyicenter.com', 'Developer FYI')"
res = cur.execute(sql)
print("2. res: ", res)
print("2. cur: ", cur)
print("Records inserted: ", cur.rowcount)
cur.close()
con.commit()
except Error as err:
print(err)
print("Failed to insert data...")
try:
cur = con.cursor()
sql = "SELECT id, url, title FROM fyi_links"
res = cur.execute(sql)
print("3. res: ", res)
print("3. cur: ", cur)
for (id, url, title) in cur:
print(id, url, title)
cur.close()
except Error as err:
print(err)
print("Failed to query data...")
con.close()
If you run the above script, you will the following output:
fyicenter> python3 cursor_execute.py
1. res: {'field_count': 0, 'affected_rows': 1, 'insert_id': 0, ...
2. res: None
2. cur: MySQLCursor: INSERT INTO fyi_links (id, url, title) ..
Records inserted: 1
3. res: None
3. cur: MySQLCursor: SELECT id, url, title FROM fyi_links
101 dev.fyicenter.com Developer FYI
108 dev.fyicenter.com Developer FYI
111 dev.fyicenter.com Developer FYI
...
⇐ Handle Exceptions with "mysql.connector"
2021-09-09, ∼2519🔥, 0💬
Popular Posts:
Tools, FAQ, Tutorials: JSON Validator JSON-XML Converter XML-JSON Converter JSON FAQ/Tutorials Pytho...
Where Is the Submitted Form Data Stored in PHP? When a user submit a form on your Web server, user e...
How to Instantiate Chaincode on BYFN Channel? You can follow this tutorial to Instantiate Chaincode ...
How To Read the Entire File into a Single String in PHP? If you have a file, and you want to read th...
Why am I getting this "Docker failed to initialize" error? After installing the latest version of Do...