Как получить доступ к информации в моей базе данных? - PullRequest
0 голосов
/ 30 апреля 2020

Я учусь пользоваться базами данных, и я немного растерялся. До сих пор я создал базу данных через 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)

1 Ответ

0 голосов
/ 30 апреля 2020

Попробуйте, заменив код:

myCurs.execute("SELECT buy_date FROM longTermTable")
listBuyDate = myCurs.fetchall()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...