Python 的数据库操作必须要映射字段么?

作者站长头像
站长
· 阅读数 7

最近学习 Python 通过 Flask 接触到 SQLAlchemyMongoDB 的内容,但看下来貌似都要在对象中映射字段才能用?那这样的话假设数据库中有数百张表的话就要创建同样数量的对象文件么?之前用的是 PHPLaravel 框架,是可以直接 DB::table(...).select() 这样获取数据的,所以 Python 能这样操作么?不懂请教

回复
1个回答
avatar
test
2024-07-04
import pymysql

connection = pymysql.connect(host='localhost',
                             user='username',
                             password='password',
                             db='mydb',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)

try:
    with connection.cursor() as cursor:
        sql = "SELECT * FROM mytable"
        cursor.execute(sql)
        result = cursor.fetchall()
        print(result)
finally:
    connection.close()

你可以用官方的 pymongo 驱动程序直接进行数据库操作,没必要为每个表定义映射类。

import pymongo

client = pymongo.MongoClient("mongodb://localhost:27017/")
db = client["mydatabase"]
collection = db["mycollection"]

# 查询数据
results = collection.find({})

for result in results:
    print(result)
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容