当前位置: 首页 > news >正文

校园社交网站开发自己做网站咋做

校园社交网站开发,自己做网站咋做,网站开发js路径,ps做全屏网站画布要多大文章目录 一、pymysql和sqlalchemy的区别二、sqlalchemy的详细使用1.安装库2.核心思想3.整体思路4.sqlalchemy需要连接数据库5.使用步骤1.手动提前创建数据库2.使用代码创建数据表3.用代码操作数据表3.1 增加数据3.2 查询数据3.3 删除数据3.4 修改数据 一、pymysql和sqlalchemy…

文章目录

  • 一、pymysql和sqlalchemy的区别
  • 二、sqlalchemy的详细使用
    • 1.安装库
    • 2.核心思想
    • 3.整体思路
    • 4.sqlalchemy需要连接数据库
    • 5.使用步骤
      • 1.手动提前创建数据库
      • 2.使用代码创建数据表
      • 3.用代码操作数据表
        • 3.1 增加数据
        • 3.2 查询数据
        • 3.3 删除数据
        • 3.4 修改数据


一、pymysql和sqlalchemy的区别

pymysqlsqlalchemy都是Python用来操作数据库的工具,两者的区别如下:

  • pymysql库在学校用的较多,也称学者库;sqlalchemy基本都是在企业应用,也称企业库;
  • pymysql库使用sql语句操作数据库,所以非常繁琐,要求程序员要记忆大量sql语法;而sqlalchemy是采用操作对象的方式来操作数据库,对程序员很友好,不必记忆较多sql语句用法;

综上所述,推荐大家日后在实际开发中使用sqlalchemy库。

二、sqlalchemy的详细使用

1.安装库

安装命令:pip install sqlalchemy

2.核心思想

用操作对象的方式去操作数据库。

3.整体思路

借用sqlalchemy的基本框架
使用和丰富框架 ----- 满足日常需求

4.sqlalchemy需要连接数据库

连接数据库的方法模版如下:

数据库类型+数据库驱动://用户名:密码@电脑IP:mysql端口号/自定义数据库名?charset=utf8

示例如下:

mysql+pymysql://mysql账号:mysql密码@localhost:3306/数据库名?charset=utf8

5.使用步骤

1.手动提前创建数据库

打开Navicat工具,建立好连接之后,右键点击连接名称,在下拉列表中选择【新建数据库】。
在这里插入图片描述

进来新建数据库页面之后,数据库名字自己随便起,注意:字符集要选择utf8mb4,排序规则要选择utf8mb4_general_ci,千万不能有错,完了点击确定即可,数据库就创建好了。
在这里插入图片描述

2.使用代码创建数据表

使用代码创建数据表,建议单独建个Python文件,方便一会调用,该文件只用来创建数据表,我就取名叫create_table.py,这里先附上创建数据表全部代码如下:

from sqlalchemy import Column, Integer, String, Enum
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import create_engine# 1、找到基本框架 -- 把自定义的类变成数据表  declarative_base--声明基类
Base = declarative_base()# 2、连接数据库
engine = create_engine('mysql+pymysql://root:66666666@localhost:3306/python1?charset=utf8'
)# 3、自定义类 -- 创建表
class User(Base):# 3.1 表名__tablename__ = '员工表'# 3.2 字段信息id = Column(Integer, primary_key=True, autoincrement=True, doc='员工ID')name = Column(String(20), doc='员工名字')age = Column(Integer, doc='员工年龄')sex = Column(Enum('男', '女'), doc='员工性别')phone = Column(String(30), doc='员工电话')# 3.3 字段信息初始化def __init__(self, id, name, age, sex, phone):self.id = idself.name = nameself.age = ageself.sex = sexself.phone = phone# 4、表的生成
Base.metadata.create_all(engine)

需要注意的是,代码中第三大部分创建表这里需要自己根据自己的实际需求去写,如下图:在这里插入图片描述

其余的所有部分都是创建数据表的标准模板,可以不做改动。

3.用代码操作数据表

用代码操作数据表,也就是通过代码对数据库中数据表内容进行增删改查等等操作,这里我也再新建一个Python文件,取名叫operation_table.py,先附上固定模版代码部分:

from create_table import User
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker# 1、连接数据库
engine = create_engine('mysql+pymysql://root:66666666@localhost:3306/python1?charset=utf8'
)# 2、创建一个会话对象 -- 第三者 -- 执行语句
# 2.1 绑定引擎
dbsession = sessionmaker(bind=engine)
# 2.2 实例化
session = dbsession()# 3、数据增删改查# 4、事务提交和关闭
session.commit()
session.close()

代码中第三部分数据的增删改查是根据自身需求实际对数据进行操作,其余所有部分均为固定模版,可以不做改动。

接下来说说第三部分,如何用代码对数据表中的数据做增删改查。

3.1 增加数据

A、增加单个数据:使用add()方法,示例如下所示

user = User(0, '张三', 18, '男', '1001')
session.add(user)

B、增加多个数据:使用add_all(列表)方法,示例如下所示

user1 = User(0, '张三', 20, '男', '1003')
user2 = User(0, '李四', 21, '女', '1004')
user3 = User(0, '王五', 22, '男', '1005')
user4 = User(0, '赵六', 23, '女', '1006')
user5 = User(0, '麻七', 24, '男', '1007')
session.add_all([user1, user2, user3, user4, user5])
3.2 查询数据

A、查询所有员工的信息,示例如下所示

query_obj = session.query(User).all()
for obj in query_obj:print(obj.id, obj.name, obj.age, obj.sex, obj.phone)

B、查询年龄在19-24的员工信息,示例如下所示

query_obj = session.query(User).filter(User.age.between(19, 24)).all()
for obj in query_obj:print(obj.id, obj.name, obj.age, obj.sex, obj.phone, sep=' | ')

C、查询性别为男的员工信息,示例如下所示

query_obj = session.query(User).filter(User.sex == '男').all()
for obj in query_obj:print(obj.id, obj.name, obj.age, obj.sex, obj.phone, sep=' | ')

D、查询性别为男的员工信息,并按年龄大小排序【升序:asc(),降序:desc()】,示例如下所示

query_obj = session.query(User).filter(User.sex == '男').order_by(User.age.asc()).all()
for obj in query_obj:print(obj.id, obj.name, obj.age, obj.sex, obj.phone, sep=' | ')
3.3 删除数据

A、删除员工:姓名=张三,示例如下所示

session.query(User).filter(User.name == '张三').delete()

B、删除员工:电话=1005,示例如下所示

session.query(User).filter(User.phone == 1005).delete()

C、清空员工信息表,示例如下所示

session.query(User).delete()
3.4 修改数据

A、id=18的用户姓名改成小明,示例如下所示

session.query(User).filter(User.id == 18).update({'name': '小明'})

B、id=22的用户姓名改成小红,性别改成女,电话改成0000,示例如下所示

session.query(User).filter(User.id == 22).update({'name': '小红', 'sex': '女', 'phone': '0000'})
http://www.yayakq.cn/news/400797/

相关文章:

  • 陕西省建设厅网站劳保统筹基金广东城乡住房建设厅网站
  • 福建建设部网站个人网站免费
  • 个人能申请网站吗艺之都网站建设微信app开发
  • pc端网站建设哪里可以做外贸网站
  • 化妆品网站建设规模设想网站举报能不能查到举报人
  • 网页设计与网站建设 pdf微信小程序开发视频完整教程
  • 网站建设中面包屑导航的特点深圳头条新闻
  • 不用买服务器可以做网站刚刚中国突然宣布
  • 云南省建设培训中心网站商城网站建设分为几块
  • 网站收录系统小说网站的内容做
  • 合肥外贸网站建设深圳网站开发哪家服务专业
  • 做pc网站会连带手机版南通网站制作公司哪家好
  • 大连做网站需要多少钱网站信息做参考文献
  • php企业网站源代码小程序数据库怎么建立
  • 网站运营公司哪家效果好南昌网站建设费用
  • 网站公司建设网站收费模块微信 公众号导入wordpress
  • 长沙行业网站建设费用标准网站的手机站页面重复
  • 网站建设和平面设计程序员常用的工具有哪些
  • dede网站qq类资源源码福建网站优化建设
  • 做网站是wordpress软文文件
  • 网站产品详情用哪个软件做的站酷网络
  • 晋城两学一做网站wordpress 自动缩进
  • 做百度推广 建自己的网站湘潭做网站 都来磐石网络
  • 做外贸网站基本流程wordpress搬家后文章
  • 游戏分类网站怎么做长沙网站提升排名
  • 宝石汇网站建设工程与建设工程项目
  • wordpress站内短信hexo与 wordpress
  • 网站系统修改网站建设费与网络维护费区别
  • 建设网站要不要投资钱网站配色教程
  • 邯郸做企业网站改版黄石网站网站建设