Я учусь пользоваться базами данных, и я немного растерялся. До сих пор я создал базу данных через Mysql, и я также создал свои таблицы. Пока у меня есть две таблицы, и я планирую взять столбцы и применить их к спискам. Я планирую иметь отдельную переменную списка для каждого столбца. Сейчас я пытаюсь просто напечатать столбец, но у меня просто появляется ошибка
File "C:/Users/alexa/PycharmProjects/TradeTrakz/Program.py", line 120, in <module>
myCurs = dbLT.execute("SELECT buy_date FROM longTermTable")
AttributeError: 'MySQLConnection' object has no attribute 'execute'
Любая помощь, чтобы понять особенности запроса MySQL, действительно поможет! Также, когда я устанавливаю переменную типа listBuyDate для того, что пыталось извлечь из базы данных, будет ли эта переменная списком, строкой? Кроме того, есть ли лучший способ инициировать тип данных TEXT? Спасибо!
import mysql.connector
# creating DataBase for Long Term Tab
dbLT = mysql.connector.connect(
host = "localhost",
user = "root",
passwd = "password",
database = "longTerm"
)
# creating a cursor for database
myCurs = dbLT.cursor()
# making database
# myCurs.execute("CREATE DATABASE longTerm")
# Creating a table
myCurs.execute("CREATE TABLE IF NOT EXISTS longTermTable (buy_date VARCHAR(20), \
stock_name VARCHAR(10), \
entry_price DECIMAL(10, 2), \
VOLUME INT(255), \
sell_date VARCHAR(20), \
exit_price DECIMAL(10, 2), \
userId INT(255), \
account_change DECIMAL(10,2), \
notes TEXT(90000), \
divs VARCHAR(20))")
myCurs.execute("CREATE TABLE IF NOT EXISTS accountBalanceLT (accountChange DECIMAL(10, 2),\
dividends VARCHAR(10), \
withdraw VARCHAR (10)) ")
# myCurs = dbLT.cursor()
myCurs = dbLT.execute("SELECT buy_date FROM longTermTable")
listBuyDate = myCurs.fetchall()
for row in listBuyDate:
print(row)