python orm框架SQLAlchemy简单应用(数据库操作)
admin
2023-05-27 03:01:24
0
#_*_coding:utf-8_*_
'''
创建SQLAlchemy应用基本过程
1、创建连接(和关系数据库创建连接)
2、声明映射文件(python中到类和数据库中的表做一对一的映射,这样就可以通过python中的类对数据库中到表进行操作)
3、创建模式(可以创建表)
4、初始化映射实例
5、创建会话
6、持久化实例对象
'''

from sqlalchemy import create_engine

#创建连接
engine = create_engine('mysql://root:1qaz#EDC@192.168.89.101:3306/student', echo=True)
'''
参数说明:
mysql 表示要连接的数据库是mysql数据库
root 表示用root账户登录mysql数据库
1qaz#EDC 表示连接数据库的root账户的密码
@ 是一个符号,规定的格式
192.168.89.1.101:3306 表示数据库的连接地址和端口3306
soms 表示将要连接的数据库的名字
echo=True 表示在执行的时候是否打印sql语句,False为不打印
'''


#声明映射文件
from sqlalchemy.ext.declarative import declarative_base #引入了declarative_base类
Base = declarative_base() #实例化了一个declarative_base实例

from sqlalchemy import Column, Integer, String #引入类Column, Integer, String类
class User(Base): #创建自己的实例类 名字为User 继承Base类
    __tablename__ = 'users' #这个属性,表示这个类和数据库中的users表进行映射
    id = Column(Integer, primary_key=True) #这个属性表示id在数据库表中代表着一列,Integer表示是整数,而且id是主键
    name = Column(String(10)) #这个属性表示在数据库表中也是一列,它的类型是string
    passwd = Column(String(10)) #这个属性表示在数据库表中也是一列,它的类型是string

    def __repr__(self): #定义了一个方法,目的是将User类更加形象的表示出来,没啥太大用途
        return "" % (self.name, self.name, self.passwd)


#创建模式,创建数据库表,表名称:users
User.metadata.create_all(engine)

#创建会话(session)
'''创建会化'''
from sqlalchemy.orm import sessionmaker #引入sessionmaker这个函数
Session = sessionmaker(bind=engine) #创建session对话,通过这个session就可以对数据库进行一些操作
session = Session() #绑定

#持久化一个实例对象
ed_user = User(id=2,name='tantianran', passwd='1qaz#EDC') #向数据库表中到列插入数据
session.add(ed_user) #将这个实例添加到session中
session.commit() #提交


执行结果:

python orm框架SQLAlchemy简单应用(数据库操作)

python orm框架SQLAlchemy简单应用(数据库操作)


相关内容

热门资讯

胡锡进:中俄罕见同时发两份联合... 中国与俄罗斯周三晚间同时发布两项联合声明,这非常罕见,举世瞩目。在第一项联合声明中,中俄两国宣示进一...
伊朗:将在“强烈不信任美国”的... △巴加埃(资料图)伊朗外交部发言人巴加埃当地时间20日晚间就伊美局势、霍尔木兹海峡安全以及美国对伊施...
为何送普京鸟鸣壶?彭湃向凤凰记... 普京2000年首次访华时,曾偶遇一位名叫彭湃的中国小男孩,两人5月20日在北京钓鱼台国宾馆重逢,彭湃...
字节凭什么又牛了? 文 | 逐浪Linkword 不知道大家有没有跟我一样的感受:在AI这个时代,字节跳动又变牛了。 ...
5G“织网” 公路管理开启“优... □张胜奎 张爽 张立国 本报记者 孙铭阳 日前,由中国联通承建的黑龙江省公路综合管理系统5G专网项目...
科技生活:让科技真正融入你的日... 不知何时起,一旦提及“科技生活”,人们脑海里浮现的常常是科幻电影中的全息投影、反重力飞行器,亦或是实...
北通鲲鹏40御铠白评测:300... 北通鲲鹏40御铠白评测:300元以内高性价比智控手柄,AI赋能更好用 手柄的好坏,不只取决于硬件,...
三大平台揭牌,行业共性需求发布... 5月20日下午,数据赋能医疗健康与生物医药发展专题活动在广州白云国际会议中心举行。来自各级卫健、数据...
擎天租完成A轮及A+轮数亿元融... 上证报中国证券网讯(记者 孙小程)5月20日,擎天租宣布,已于近期完成A轮及A+轮融资,融资金额达数...
爱奇艺亏急了 作者I山上 何简 长视频平台的日子不好过,爸爸不给力的爱奇艺过得更难。 5 月 18 日美股盘前,...