终于不再在懵逼mysql原生语句,orm超级登场

 1 import sqlalchemy
 2 from sqlalchemy.ext.declarative import declarative_base
 3 from sqlalchemy import create_engine
 4 from sqlalchemy import Integer,String,Column
 5 from sqlalchemy.orm import sessionmaker
 6 
 7 
 8 engine = create_engine('mysql+pymysql://root:hsn198713@localhost/hsndb',
 9                        encoding = 'utf-8',echo=True)#使用pymysql创建对数据库的socket连接。
10 #root 是用户和密码@后面是IP和数据库名字。
11 Base = declarative_base()#这个是orm的基类,鸡肋里是封装前的类方法。
12 
13 class User(Base):
14     __tablename__ = 'user'#创建表名
15     id = Column(Integer,primary_key=True)#参数是主键,整型
16     name = Column(String(32))#字符串32位
17     password = Column(String(64))#字符串类型
18 
19 Base.metadata.create_all(engine)#创建表结构
20 Session_class = sessionmaker(bind=engine)#创建与数据库的会话
21 Session = Session_class()#生成session实例
22 user_obj = User(name='Humir',password='1234567')#生成你要创建的数据对象
23 print(user_obj.id,user_obj.name)#处于begin状态可以rollback回滚。意思是没有保存表。
24 Session.add(user_obj)#将要创建的对象添加到一起
25 
26 print(user_obj.id,user_obj.name)#还在内存中没有保存,打印也没用。
27 
28 Session.commit()#正式保存,回滚无效。
原文地址:https://www.cnblogs.com/hushuning/p/7965417.html