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

网站建设流程步骤为需求分析网站建设实践描述

网站建设流程步骤为需求分析,网站建设实践描述,东莞建站公司案例全网天下案例,上海招聘信息最新招聘2022一般来说,我们对数据库里的操作需要先连接,创建游标对象,然后通过游标对象执行SQL语句去对SQL的数据进行操作,本篇文章旨在记录与科普。 1.cursor相关 元组是不可变的数据类型,只能查询,不能修改&#xf…

一般来说,我们对数据库里的操作需要先连接,创建游标对象,然后通过游标对象执行SQL语句去对SQL的数据进行操作,本篇文章旨在记录与科普。

1.cursor相关

元组是不可变的数据类型,只能查询,不能修改,删除,新增。元组是根据索引进行取值,在实际开发的过程中一般不使用默认的元组的形式,因为索引的值取决于数据库字段的顺序,在实际的开发过程中字段的顺序是易变(比如增加了一个字段)索引就会发生改变。
更多采用列表+字典的形式

con = pymysql.connect(host="127.0.0.1", port=3306,user="root", password='123456',database="test", charset='utf8')#创建游标对象
cur = con.cursor()#通过游标执行SQL语句
cur.execute("SELECT * from zt_config")print(cur.fetchall())#配置游标对象以列表嵌套字典的形式返回数据
cur = con.cursor(cursor=DictCursor)#通过游标执行SQL语句
cur.execute("SELECT * from zt_config")#fetchall也就是一次性获取所有数据
print(cur.fetchall())
2.切换数据库操作
con = pymysql.connect(host="127.0.0.1", port=3306,user="root", password='123456',database="test", charset='utf8')#配置游标对象以列表嵌套字典的形式返回数据
cur = con.cursor(cursor=DictCursor)#通过游标执行SQL语句
cur.execute("SELECT * from wyl_admin")#fetchall也就是一次性获取所有数据
print(cur.fetchall())#切换数据的操作,使用连接对象里面的select_db进行操作
con.select_db("stu")#通过游标执行SQL语句
cur.execute("SELECT * from stu")
#fetchall也就是一次性获取所有数据
print(cur.fetchall())
3.连接方式

在这里,首先要想到open与with这两个命令的不同:

  • 使用with不需要手动的关闭连接
  • 使用with也是pymysql官方推荐的方式
with pymysql.connect(host="127.0.0.1", port=3306,user="root", password='123456',database="test", charset='utf8') as db:with db.cursor(DictCursor) as cur:cur.execute("SELECT * from zt_config")print(cur.fetchall())
4.结果集处理
with pymysql.connect(host="127.0.0.1", port=3306,user="root", password='123456',database="zentao", charset='utf8') as db:with db.cursor(DictCursor) as cur:# cur.execute("SELECT * from zt_config")cur.execute('UPDATE  zt_config set money = money-100 where `name` = "king";')#fetchone获取一条数据
#但是每次获取完之后再次执行会继续往后面获取
#print(cur.fetchone())
#print(cur.fetchone())
#print(cur.fetchone())#一次性获取所有的数据
#print(cur.fetchall())#fetchmany在什么都不传的情况下,和fetchone是一样的
#可以传值,值就是获取的条数
#print(cur.fetchmany(4))
#print(cur.fetchmany())
#print(cur.fetchmany())0
5.事务操作相关

在数据库里面什么叫做事务?事务就是一段连续的不可分割的sql语句,要么全部成功,要么全部失败。在实际的开发过程中:事务必不可少。

# 把king的钱借给jack100块
BEGIN;      
#表示事务开启,接下来的所有的sql语句都作为一个事务#执行sql语句之后并不会直接修改数据库,而是把修改的操作存储在内存里面
UPDATE  zt_config set money = money-100 where `name` = "king";
#操作
UPDATE  zt_config set money = money+100 where `name` = "jack";#判断事务里面的sql执行没有问题才会继续提交,执行完commit之后数据库的数据才会发生改变
COMMIT;#执行完rollback之后表示整个事务失败,所有的操作全部还原
ROLLBACK;

事务的四个特性:原子性,一致性,隔离性,持久性!

  1. 原子性(Atomicity)

          事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。
    
  2. 一致性(Consistency)

         事务前后数据的完整性必须保持一致。
    
  3. 隔离性(Isolation)

        了解:
    
  •     数据隔离的级别
    
  •     数据每个隔离级别在不同的数据库产品里面的默认值
    
  •     每个隔离级别所对应解决的问题(脏读,幻读,重复读...)
    
  •     工作中应该怎么去选择隔离级别多个用户并发访问数据库时,一个用户的事务不能被其它用户的事物所干扰,多个并发事务之间的数据要相互隔离。
    
  1. 持久性(Durability)

        一个事务一旦被提交,它对数据库中的数据改变就是永久性的。
    

例子:

# 在pymysql里面的事务操作  面向过程
with pymysql.connect(host="127.0.0.1", port=3306,user="root", password='123456',database="zentao", charset='utf8') as db:with db.cursor(DictCursor) as cur:db.begin()      # 连接对象.begin()  表示开启事务try:cur.execute('UPDATE  zt_config set money = money-100 where `name` = "king";')cur.execute('UPDATE  zt_config set money = money+100 where `name` = "jack";')except Exception as e:db.rollback()  # 回滚数据print(e)else:db.commit()  # 提交数据
6.打包拆包相关(*args,**kwargs)
–打包
a.*args

args是一个特殊的参数,它允许你在函数调用时传递任意数量的位置参数。这些位置参数将会以元组的形式传递给函数。
在使用
args时,你可以传递任何类型的参数,包括数字、字符串、列表、元组、甚至是自定义的对象等。

#计算四个数之和
def sum_test(a,b,c,d):return a + b + c + dprint(sum_test(1, 2, 3, 4))

问题来了,我也不知道要传入几个数。在不确定传入参数的情况,*args表示可以传入任意个数的参数,会把传入的参数 打包成一个元组,也叫做“不定长参数”。

def sum_test2(*args):print(args)return sum(args)print(sum_test2(1, 2, 3,4,5))
b.**kwargs

在不定长参数时,可以使用**kwargs。**kwagrs会把传入的参数打包成一个字典,但是传参方式必须是 “关键字传参”。args是一个特殊的参数,它允许你在函数调用时传递任意数量的位置参数。这些位置参数将会以元组的形式传递给函数。
在使用
args时,你可以传递任何类型的参数,包括数字、字符串、列表、元组、甚至是自定义的对象等。

#**kwargs:不定长参数
def show_self(name,age):print(f'我的名字叫{name},我的年龄是{age}')show_self("jack",20)#不知道有几个参数
#**kwagrs会把传入的参数打包成一个字典,但是传参方式必须是 “关键字传参”
def show_self2(**kwargs):print(kwargs)print(f'我的名字叫{kwargs["name"]},我的年龄是{kwargs["age"]}')show_self2(name="jack",age=20,like="长条")
c.结合使用
def show(*args,**kwargs):print(args)print(kwargs)show(1,2,3,4,name="jack",a="b",ak="48")
–拆包

把在调用函数的时候传入的内容拆包,把元组/列表拆成一个个元素,把字典拆成关键字传参

def sum_test(a,b,c,d):return a + b + c + d#注意:参数的数量不能错tu = [1, 2, 3, 4,]
print(sum_test(*tu))def show_self(name,age):print(f'我的名字叫{name},我的年龄是{age}')#在拆包字典的时候需要注意,字典的键必须和形式参数的名字一样
dict1 = {"name":"jack","age":20}
show_self(**dict1)
http://www.yayakq.cn/news/287062/

相关文章:

  • 商业网站的规划和设计平面设计接单价格
  • 查询企业的网站有哪些建筑方案设计说明模板
  • 免费软件app网站下载大全百度信息流怎么做效果好
  • 网站开发技术支持与保障网站10月份可以做哪些有意思的专题
  • 如何制作一个动态的网站的登录详细步骤页面大渡口集团网站建设
  • 做外国网站用什么服务器WordPress访客ip信息
  • 旅游网站建设流程是什么意思做网站拍幕布照是什么意思
  • 做文字云的网站成全视频免费观看在线看收索
  • dedecms导入网站模板下载网站建设可视化
  • 南宁网站设计公司排名购物网站及app开发
  • 做家教需要什么哪个网站的会员wordpress 3.4.2 漏洞
  • 宜兴做网站哪家好app拉新怎么做
  • 网站在线留言的用途可以做哪方面的网站
  • 开一个素材设计网站怎么做的摄影师网站模板
  • 铁建设文件在什么网站下载泉州网站建设哪里好
  • 电子商务网站建设与管理程序设计题6工业设计在线
  • 沈阳网站优化哪家好1688网站一起做网店
  • 做网站需要Excel表格吗中国建设执业资格注册中心网站
  • 一个网站建设流程网站开发 无形资产
  • 我国网站无障碍建设仍处于杭州公司网站建设
  • 宿州做网站的公司镇江个人网站建设
  • 易语言网站批量注册怎么做网站设计的建设目的
  • 两学一做网站飘窗织梦网站分享插件
  • 有没有免费的源码网站百度官方网站下载
  • 团建网站建设中小学校园网站建设
  • 做购物网站骗人如何免费制作app软件
  • 新手从零基础建站初级网站建设优化seo教程
  • 官方网站下载微博wap网站制作需要多少钱
  • 网站开发技术一般需要什么语言做官网网站哪家公司好
  • 编程网站入门企业网站建设开发注意事项