从python使用TSQL(sqlserver上的mssql)时,如何为SQLAlchemy自动生成ORM代码?

2024-04-27 03:39:06 发布

您现在位置:Python中文网/ 问答频道 /正文

SQLAlchemy依靠我来构建ORM类,如下所示:

from sqlalchemy import Column, DateTime, String, Integer, ForeignKey, func
from sqlalchemy.orm import relationship, backref
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Department(Base):
    __tablename__ = 'department'
    id = Column(Integer, primary_key=True)
    name = Column(String)

有没有一个工具/脚本/程序可以帮我完成这个任务?在

例如,在C中,我可以将数据项从DatabaseExplorer拖放到VisualStudio中,并为我自动生成实体类(SQL到LINQ)。我正在为python寻找类似的东西。我在VisualStudio和/或Spyder工作。在


Tags: fromimportbasedatetimestringsqlalchemyormcolumn
2条回答

我刚刚成功地使用sqlacodegen为我的mssqlserver2014数据库生成了类。太简单了,我立刻爱上了它!在

我使用的是python3.7(如果重要的话)。以下是我在(管理员?)中使用的命令PowerShell:

  1. pip install sqlacodegen
  2. pip install pymssql
  3. sqlacodegen mssql+pymssql://sql_username:sql_password@server/database > db_name.py
  4. 它将创建数据库_名称.py在当前目录中。在
  5. 然后可以通过移动db来使用这些类_名称.py添加到与主脚本相同的文件夹中,并添加import db_name。在

我没有指定端口,并且我的server被设置为不指定安装的计算机名,即server\installation。我使用了sqlacodegenhere的说明和来自{a2}的数据库URL。在

你需要显式地定义类,还是不用编写代码就可以定义它们?如果后者可以,那么SQLAlchemy自己的automap就足够了。在

否则,sqlacodegen工具看起来应该为您生成代码。在

相关问题 更多 >