python 从数据库表生成model

找了很久才找到这个,我是新手...

现在已有建好的数据库,需要基于原有数据做数据分析的web应用,我选择python+Tornado ,由于不想写SQL语句,就想偷个懒

1、安装工具

 ningjian@freegodly:~/code/py/django/logcloud$ sudo pip install sqlacodegen
Downloading/unpacking sqlacodegen
Downloading sqlacodegen-1.1.-py2.py3-none-any.whl
Downloading/unpacking inflect>=0.2. (from sqlacodegen)
Downloading inflect-0.2.-py2.py3-none-any.whl (58kB): 58kB downloaded
Requirement already satisfied (use --upgrade to upgrade): SQLAlchemy>=0.6. in /usr/local/lib/python2./dist-packages (from sqlacodegen)
Installing collected packages: sqlacodegen, inflect
Successfully installed sqlacodegen inflect
Cleaning up...

2、转换

ningjian@freegodly:~/code/py/django/logcloud$ sqlacodegen mssql+pymssql://name:password@ip/LogColudDB --outfile logcloude_model.py
ningjian@freegodly:~/code/py/django/logcloud$

3、查看,哈哈

ningjian@freegodly:~/code/py/django/logcloud$ cat logcloude_model.py
# coding: utf-
from sqlalchemy import BigInteger, Column, DateTime, Float, ForeignKey, Integer, LargeBinary, T able, Unicode, text
from sqlalchemy.dialects.mssql.base import BIT
from sqlalchemy.orm import relationship
from sqlalchemy.ext.declarative import declarative_base Base = declarative_base()
metadata = Base.metadata class AuthorityInfo(Base):
__tablename__ = 'AuthorityInfo' ID = Column(BigInteger, primary_key=True)
Description = Column(Unicode('max'), nullable=False)
IsDelete = Column(BIT, nullable=False)
AuthorityIndex = Column(Integer, nullable=False)
AuthorityName = Column(Unicode('max'), nullable=False) class CPKInfoHistory(Base):
__tablename__ = 'CPKInfoHistory' PO = Column(Unicode(), primary_key=True)
ProcessName = Column(Unicode(), nullable=False)
Result = Column(Unicode('max'), nullable=False)
LastLogID = Column(BigInteger, nullable=False) class ComputerState(Base):
__tablename__ = 'ComputerState' Name = Column(Unicode(), primary_key=True)
Ip = Column(Unicode(), nullable=False)
IsDelete = Column(BIT, nullable=False)
LastDate = Column(DateTime, nullable=False)
IsProceted = Column(BIT, nullable=False) class DeviceInfo(Base):
__tablename__ = 'DeviceInfo' ID = Column(BigInteger, primary_key=True)
ClientName = Column(Unicode(), nullable=False)
Description = Column(Unicode())
IsDelete = Column(BIT, nullable=False)
LinesInfo_ID = Column(ForeignKey(u'LinesInfo.ID'), nullable=False, index=True) LinesInfo = relationship(u'LinesInfo') class DisposeErrorCodeInfo(Base):
__tablename__ = 'DisposeErrorCodeInfo' ID = Column(BigInteger, primary_key=True)
NewOperation = Column(Unicode('max'), nullable=False)
Status = Column(Unicode('max'), nullable=False)
DisposeInfo_ID = Column(ForeignKey(u'DisposeInfo.ID'), nullable=False, index=True)
ErrorCode_Info_ID = Column(ForeignKey(u'ErrorCode_Info.ID'), nullable=False, index=True)
ErrorCode_OperationID = Column(BigInteger, nullable=False)
WeightValue = Column(Integer, nullable=False) DisposeInfo = relationship(u'DisposeInfo')
ErrorCode_Info = relationship(u'ErrorCodeInfo') class DisposeErrorCodeInfoHistory(Base):
__tablename__ = 'DisposeErrorCodeInfoHistory' ID = Column(BigInteger, primary_key=True)
OperateTime = Column(DateTime, nullable=False)
OldStatus = Column(Unicode('max'), nullable=False)
NewStatus = Column(Unicode('max'), nullable=False)
IsDelete = Column(BIT, nullable=False)
WeightValue = Column(Integer, nullable=False)
UserInfo_ID = Column(ForeignKey(u'UserInfo.ID'), nullable=False, index=True)
DisposeErrorCodeInfo_ID = Column(ForeignKey(u'DisposeErrorCodeInfo.ID'), nullable=False, in dex=True) DisposeErrorCodeInfo = relationship(u'DisposeErrorCodeInfo')
UserInfo = relationship(u'UserInfo') class DisposeInfo(Base):
__tablename__ = 'DisposeInfo' ID = Column(BigInteger, primary_key=True)
Operation = Column(Unicode('max'), nullable=False)
IsOK = Column(BIT, nullable=False)
Description = Column(Unicode())
TouchTime = Column(DateTime, nullable=False)
NoticeInfo_ID = Column(ForeignKey(u'NoticeInfo.ID'), nullable=False, index=True)
UserTask_ID = Column(ForeignKey(u'UserTask.ID'), nullable=False, index=True) NoticeInfo = relationship(u'NoticeInfo')
UserTask = relationship(u'UserTask') class ErrorCodeInfo(Base):
__tablename__ = 'ErrorCode_Info' ID = Column(BigInteger, primary_key=True)
ErrorCode = Column(Unicode(), nullable=False)
Description = Column(Unicode())
IsDelete = Column(BIT, nullable=False) class ErrorCodeOperation(Base):
__tablename__ = 'ErrorCode_Operation' ID = Column(BigInteger, primary_key=True)
Operation = Column(Unicode('max'), nullable=False)
WeightValue = Column(Integer, nullable=False)
IsEnable = Column(BIT, nullable=False)
ErrorCode_Info_ID = Column(ForeignKey(u'ErrorCode_Info.ID'), nullable=False, index=True) ErrorCode_Info = relationship(u'ErrorCodeInfo') class FilesManage(Base):
__tablename__ = 'FilesManage' ID = Column(BigInteger, primary_key=True)
ClassName = Column(Unicode(), nullable=False, index=True)
Md5 = Column(Unicode(), nullable=False)
Data = Column(LargeBinary, nullable=False)
Ver = Column(Integer, nullable=False)
DateCreated = Column(Unicode(), nullable=False)
UpLoadUserName = Column(Unicode(), nullable=False)
Remarks = Column(Unicode('max'))
Catagory = Column(Unicode(), nullable=False)
LocalFileName = Column(Unicode()) class LOGInfo(Base):
__tablename__ = 'LOG_Info' ID = Column(BigInteger, primary_key=True)
Po = Column(Unicode(), nullable=False, index=True)
ProcessName = Column(Unicode(), nullable=False, index=True)
User = Column(Unicode(), nullable=False)
ErrorCode = Column(Unicode())
Log = Column(Unicode('max'), nullable=False)
Barcode = Column(Unicode())
Isn = Column(Unicode())
Shift = Column(Unicode(), nullable=False)
TestResult = Column(Unicode(), nullable=False, index=True)
LastDate = Column(DateTime, nullable=False)
ClientName = Column(Unicode(), nullable=False, index=True) class LinesInfo(Base):
__tablename__ = 'LinesInfo' ID = Column(BigInteger, primary_key=True)
Name = Column(Unicode(), nullable=False)
Description = Column(Unicode())
IsDelete = Column(BIT, nullable=False) class NoticeInfo(Base):
__tablename__ = 'NoticeInfo' ID = Column(BigInteger, primary_key=True)
Top1_ErrorCodeID = Column(BigInteger, nullable=False)
Top2_ErrorCodeID = Column(BigInteger)
Top3_ErrorCodeID = Column(BigInteger)
TouchTime = Column(DateTime, nullable=False)
IsDispose = Column(BIT, nullable=False)
TaskLavel = Column(Integer, nullable=False)
Responsibility_ID = Column(ForeignKey(u'Responsibility.ID'), nullable=False, index=True)
UserTask_ID = Column(ForeignKey(u'UserTask.ID'), nullable=False, index=True)
DeviceInfo_ID = Column(ForeignKey(u'DeviceInfo.ID'), nullable=False, index=True)
StatisticsInfo_ID = Column(BigInteger, nullable=False) DeviceInfo = relationship(u'DeviceInfo')
Responsibility = relationship(u'Responsibility')
UserTask = relationship(u'UserTask') class POInfo(Base):
__tablename__ = 'POInfo' ID = Column(BigInteger, primary_key=True)
Po = Column(Unicode(), nullable=False)
Plm = Column(Unicode())
ProductName = Column(Unicode())
Description = Column(Unicode())
IsDelete = Column(BIT, nullable=False)
Customer = Column(Unicode()) class Responsibility(Base):
__tablename__ = 'Responsibility' ID = Column(BigInteger, primary_key=True)
ProcessName = Column(Unicode(), nullable=False)
BaseNumber = Column(Integer, nullable=False)
ErrorRate = Column(Float(), nullable=False)
Description = Column(Unicode())
OverTime = Column(Integer, nullable=False)
POInfo_ID = Column(ForeignKey(u'POInfo.ID'), nullable=False, index=True)
UserInfo_ID = Column(ForeignKey(u'UserInfo.ID'), nullable=False, index=True) POInfo = relationship(u'POInfo')
UserInfo = relationship(u'UserInfo') class RoleAuthority(Base):
__tablename__ = 'RoleAuthority' ID = Column(BigInteger, primary_key=True)
IsDelete = Column(BIT, nullable=False)
RoleInfo_ID = Column(ForeignKey(u'RoleInfo.ID'), nullable=False, index=True)
AuthorityInfo_ID = Column(ForeignKey(u'AuthorityInfo.ID'), nullable=False, index=True) AuthorityInfo = relationship(u'AuthorityInfo')
RoleInfo = relationship(u'RoleInfo') class RoleInfo(Base):
__tablename__ = 'RoleInfo' ID = Column(BigInteger, primary_key=True)
RoleName = Column(Unicode(), nullable=False)
Description = Column(Unicode())
IsDelete = Column(BIT, nullable=False)
RoleLevel = Column(Integer, nullable=False) class SettingInfo(Base):
__tablename__ = 'SettingInfo' ID = Column(BigInteger, primary_key=True, nullable=False)
Key = Column(Unicode(), primary_key=True, nullable=False)
Value = Column(Unicode('max'), nullable=False)
Description = Column(Unicode()) class StatisticsInfo(Base):
__tablename__ = 'StatisticsInfo' ID = Column(BigInteger, primary_key=True)
ProcessName = Column(Unicode(), nullable=False)
BeginTime = Column(DateTime, nullable=False)
NowErrorRate = Column(Float(), nullable=False)
Times = Column(Integer, nullable=False)
IsOutmoded = Column(BIT, nullable=False)
POInfo_ID = Column(ForeignKey(u'POInfo.ID'), nullable=False, index=True)
DeviceInfo_ID = Column(ForeignKey(u'DeviceInfo.ID'), nullable=False, index=True) DeviceInfo = relationship(u'DeviceInfo')
POInfo = relationship(u'POInfo') class UserInfo(Base):
__tablename__ = 'UserInfo' ID = Column(BigInteger, primary_key=True)
Name = Column(Unicode(), nullable=False)
JobNumber = Column(Unicode(), nullable=False)
Phone = Column(Unicode())
Emil = Column(Unicode(), nullable=False)
Department = Column(Unicode())
Duties = Column(Unicode())
Description = Column(Unicode())
Group = Column(Unicode(), nullable=False)
IsDelete = Column(BIT, nullable=False)
Password = Column(Unicode())
CreateDateTime = Column(DateTime, nullable=False) class UserProfile(Base):
__tablename__ = 'UserProfile' UserId = Column(Integer, primary_key=True)
UserName = Column(Unicode(), nullable=False, unique=True) class UserRoleInfo(Base):
__tablename__ = 'UserRoleInfo' ID = Column(BigInteger, primary_key=True)
IsDelete = Column(BIT, nullable=False)
UserInfo_ID = Column(ForeignKey(u'UserInfo.ID'), nullable=False, index=True)
RoleInfo_ID = Column(ForeignKey(u'RoleInfo.ID'), nullable=False, index=True) RoleInfo = relationship(u'RoleInfo')
UserInfo = relationship(u'UserInfo') class UserTask(Base):
__tablename__ = 'UserTask' ID = Column(BigInteger, primary_key=True)
TaskLavel = Column(Integer, nullable=False)
Shift = Column(Unicode(), nullable=False)
Description = Column(Unicode())
IsDelete = Column(BIT, nullable=False)
UserInfo_ID = Column(ForeignKey(u'UserInfo.ID'), nullable=False, index=True)
LinesInfo_ID = Column(ForeignKey(u'LinesInfo.ID'), nullable=False, index=True) LinesInfo = relationship(u'LinesInfo')
UserInfo = relationship(u'UserInfo') t_view_LinesState = Table(
'view_LinesState', metadata,
Column('ID', BigInteger, nullable=False),
Column('ClientName', Unicode(), nullable=False),
Column('LinesInfo_ID', BigInteger, nullable=False),
Column('count', Integer)
) t_view_LogState = Table(
'view_LogState', metadata,
Column('Po', Unicode(), nullable=False),
Column('ProcessName', Unicode(), nullable=False),
Column('ErrorCode', Unicode()),
Column('ClientName', Unicode(), nullable=False),
Column('ID', BigInteger),
Column('count', Integer)
) t_view_NoticeInfo = Table(
'view_NoticeInfo', metadata,
Column('ID', BigInteger, nullable=False),
Column('TouchTime', DateTime, nullable=False),
Column('Top1_ErrorCodeID', BigInteger, nullable=False),
Column('Top2_ErrorCodeID', BigInteger),
Column('Top3_ErrorCodeID', BigInteger),
Column('IsDispose', BIT, nullable=False),
Column('TaskLavel', Integer, nullable=False),
Column('ClientName', Unicode()),
Column('ProcessName', Unicode()),
Column('BeginTime', DateTime),
Column('NowErrorRate', Float()),
Column('Times', Integer),
Column('IsOutmoded', BIT),
Column('Po', Unicode())
) t_view_Top1_error = Table(
'view_Top1_error', metadata,
Column('Top1_ErrorCodeID', BigInteger, nullable=False),
Column('count', Integer),
Column('ID', BigInteger, nullable=False),
Column('ErrorCode', Unicode(), nullable=False),
Column('Description', Unicode())
) class WebpagesMembership(Base):
__tablename__ = 'webpages_Membership' UserId = Column(Integer, primary_key=True)
CreateDate = Column(DateTime)
ConfirmationToken = Column(Unicode())
IsConfirmed = Column(BIT, server_default=text("((0))"))
LastPasswordFailureDate = Column(DateTime)
PasswordFailuresSinceLastSuccess = Column(Integer, nullable=False, server_default=text("((0 ))"))
Password = Column(Unicode(), nullable=False)
PasswordChangedDate = Column(DateTime)
PasswordSalt = Column(Unicode(), nullable=False)
PasswordVerificationToken = Column(Unicode())
PasswordVerificationTokenExpirationDate = Column(DateTime) class WebpagesOAuthMembership(Base):
__tablename__ = 'webpages_OAuthMembership' Provider = Column(Unicode(), primary_key=True, nullable=False)
ProviderUserId = Column(Unicode(), primary_key=True, nullable=False)
UserId = Column(Integer, nullable=False) class WebpagesRole(Base):
__tablename__ = 'webpages_Roles' RoleId = Column(Integer, primary_key=True)
RoleName = Column(Unicode(), nullable=False, unique=True) UserProfile = relationship(u'UserProfile', secondary='webpages_UsersInRoles') t_webpages_UsersInRoles = Table(
'webpages_UsersInRoles', metadata,
Column('UserId', ForeignKey(u'UserProfile.UserId'), primary_key=True, nullable=False),
Column('RoleId', ForeignKey(u'webpages_Roles.RoleId'), primary_key=True, nullable=False)
)
ningjian@freegodly:~/code/py/django/logcloud$

python 从数据库表生成model的更多相关文章

  1. django根据已有数据库表生成model类

    django根据已有数据库表生成model类 创建一个Django项目 django-admin startproject 'xxxx' 修改setting文件,在setting里面设置你要连接的数据 ...

  2. VS从数据库表生成Model代码

    1.工具——扩展和更新——安装下列插件 2.如图所示,在项目或者MODEL文件夹下添加 3.如图所示,生成了一个datanase.11 4.打开该文件后,将数据库连接字符串改为你自己项目中WebCof ...

  3. IDEA 根据数据库表 生成 Model实体

    首先在 Idea中 配置数据源,测试ok(过程略) idea窗口中左下角是否 有显示Persistence 窗口  如果没有显示就要如下方法 添加显示: File - > Project Str ...

  4. SqlServer数据库表生成C# Model实体类SQL语句——补充

    在sql语句最前边加上  use[数据库名] 原链接:https://www.cnblogs.com/jhli/p/11552105.html   --[SQL骚操作]SqlServer数据库表生成C ...

  5. Django的models由数据库表生成

    Django的models由数据库表生成 参考文献:https://www.cnblogs.com/sukura/p/14306510.html 目的或效果:方便实现使用django原生的后台管理系统 ...

  6. 由数据库表生成jpa实体工具

    package cn.net.yto.aaa.dao.generator; /** * 由数据库表生成jpa实体工具 * * @author huike * Created by gf.liu on ...

  7. symfony 数据库表生成实体、迁移数据库

    从数据库表生成实体 1. 由数据库生成模型: php bin/console doctrine:mapping:convert --from-database yml D:\db\ D:\test_b ...

  8. java工具类–自动将数据库表生成javabean

    最近和数据库的表打交道挺多的,因为暂时做的是接口活. 在这过程中发现要把表转换成对应的javabean类型,字段少的表还行,如果不小心碰到几十个字段的他妈的写起来就有点麻烦了,万一碰到几百个的呢,那不 ...

  9. 利用HibernateTools从数据库表生成带注解的POJO

    在SSH框架中,如果先设计好了数据库,那么下一步就需要从数据库Table生成实体java类和hbm.xml配置文件.在最新的开发框架中,已经支持使用注解,从而避免了繁琐的hbm.xml配置,而且我们可 ...

随机推荐

  1. javascript第一课javascript:void(0);

    在一些需要使用<a href="#"></a>的地方,把#号换成javascript:void(0); 可以防止在链接跳转到新页面,void(0)放里面的参 ...

  2. 初窥C++11:自己主动类型推导与类型获取

    auto 话说C语言还处于K&R时代,也有auto a = 1;的写法.中文译过来叫自己主动变量.跟c++11的不同.C语言的auto a = 1;相当与 auto int a = 1;语句. ...

  3. web - 块元素和内嵌元素的特征

    块: 1.独占一行 2.支持所有的样式 3.不设置宽度的时候,宽度撑满整行 常用的快标签有: div,section,header,nav,footer,article,aside,ul,ol,li, ...

  4. Matlab中用内建函数代替for循环

    在使用matlab进行矩阵计算的时候,经常会遇到要使用for循环的情况.但其实很多操作可以用内部的一些函数代替. bsxfun, arrayfun, cellfun, spfun, structfun ...

  5. 2014.9.20CSS样式表

    一.前景与背景 background-color: 背景色,定义背景的颜色 background-image:url() 定义背景图片 background-attachment:fixed/scro ...

  6. ubuntu14.04下手动安装JDK + eclipse + Pydev

    说明:本文在root用户下进行,如不是root用户命令前加sodu 一.手动安装JDK 1.下载JDK 从官网http://www.oracle.com/technetwork/java/javase ...

  7. 一周学会Mootools 1.4中文教程:(4)类型

    Mootools的类型主要包含下边几部分:String:字符串;Number:数字;Array:数组;Object:对象;Json:;Cookie:. 这也是我们今天的讲述重点.每一种数据类型Mt都为 ...

  8. Oracle的TPCC测试,原来也是个作弊的东西...

    http://www.oaktable.net/content/sorted-hash-clusters-rip 根据Jonathan Lewis老先生的测试实例,发觉cluster 的sort功能, ...

  9. ubuntu安装XHProf

    1. 安装XHProf wget http://pecl.php.net/get/xhprof-0.9.2.tgz tar zxf xhprof-0.9.2.tgz cd xhprof-0.9.2 s ...

  10. ListBox控件的操作与实现

    .NET FrameWork>參考>类库>System.Windows.Forms>ListBox类的属性 1. 属性列表:     SelectionMode     组件中 ...