Estou conectado ao banco de dados MySQL em Python usando o módulo Python (MySQL Connector) no notebook jupyter. Posso realizar operações, por exemplo, criar uma tabela ou ler dados de uma tabela. No código a seguir, quero criar uma view, mas antes de criar uma view quero ter certeza de que o banco de dados não tem a view, caso tenha, quero eliminá-la.
import mysql.connector as con
try:
connection = con.connect(host = 'localhost',
database='mydb',
user='***', # my user name is also correct
password='****') # my password is correct
create_view_query = """
drop view if exists chicago_public;
create view chicago_public as
select NAME_OF_SCHOOL as school_name,Safety_Icon as afety_rating,
Family_Involvement_Icon as family_rating,
Environment_Icon as environment_rating,
Instruction_Icon as instruction_rating,
Leaders_Icon as leaders_rating,
Teachers_Icon as teacher_rating
from CHICAGO_PUBLIC_SCHOOLS;
"""
cursor = connection.cursor()
cursor.execute(create_view_query)
print("View created succussfully.")
except con.Error as e:
print("Error reading data from MySQL table",e)
finally:
if connection.is_connected():
connection.close()
cursor.close()
print("MySQL connection is closed")
Mas quando executo esta consulta no notebook jupyter, estou recebendo o seguinte erro.
Erro ao ler dados da tabela MySQL 1227 (42000): Acesso negado; você precisa (pelo menos um dos) privilégios SYSTEM_USER para esta operação
Por favor me ajude com isso como resolver este problema. Agradeço antecipadamente.