Я ищу SQL, а не пакет NO SQL для Python и PostgreSQL.
Я посмотрел на psycopg2, он для меня слишком элементарный, потом pymon go, это пакет NO SQL, затем SQLAlchemy -> идеальная обработка записей, но NO SQL ....
- Я новичок в Python, прости меня ...
- Мне нравится новая структура класса данных для Python !!
- Я из VB6, WinDev и PHP, ищу хорошее начало для Python и PostgreSQL
Мне нравится такая структура базы данных:
from dataclasses import dataclass
from typing import List
@dataclass
class c_Country:
CountryDescription: str = None
Countries = [c_Country("Austria")]
Countries += [c_Country("Germany")]
for Country in Countries[:]:
print("Country: " + Country.CountryDescription)
Конечно, я не добавляю "Страны" вручную, вместо этого получаю ее из базы данных PostgreSQL:
import psycopg2
connection = psycopg2.connect(user = "test",
password = "test",
host = "127.0.0.1",
port = "5432",
database = "test")
cursor = connection.cursor()
postgreSQL_select_Query = 'SELECT "CountryDescription" FROM "Countries"'
cursor.execute(postgreSQL_select_Query)
Countries = cursor.fetchall()
for Country in Countries:
#NOT row[0] instead i like to write Country.CountryDescription
print("Country = ", row[0], "\n")
- Как мне установить набор записей в классе данных?
- Нужно ли переходить на другой пакет (для меня это не проблема).
- Может быть это можно решить с помощью psycopg2?
Редактировать: Спасибо Морису Мейеру:
import psycopg2
from psycopg2.extras import NamedTupleCursor
connection = psycopg2.connect(user = "test",
password = "test",
host = "127.0.0.1",
port = "5432",
database = "test",
cursor_factory=NamedTupleCursor)
cursor = connection.cursor()
postgreSQL_select_Query = 'SELECT "CountryDescription" FROM "Countries"'
cursor.execute(postgreSQL_select_Query)
Countries = cursor.fetchall()
for Country in Countries:
print("Country = ", Country.CountryDescription, "\n")
Кто-нибудь найдет лучшее решение?
Твое