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

乐平网站设计网站优化的关键词

乐平网站设计,网站优化的关键词,网络科技有限公司是诈骗公司吗,广西住房与城乡建设部网站【十二】Django中如何开启事务 事务是MySQL数据库中得一个重要概念 事务的目的:为了保证多个SQL语句执行成功,执行失败,前后保持一致,保证数据安全 【1】ACID是数据库事务的四个关键特性 它代表了原子性(Atomicity)、…

【十二】Django中如何开启事务

事务是MySQL数据库中得一个重要概念
事务的目的:为了保证多个SQL语句执行成功,执行失败,前后保持一致,保证数据安全             

【1】ACID是数据库事务的四个关键特性

  • 它代表了原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。

    • 原子性(Atomicity):

      • 事务被视为一个不可分割的原子操作单元。

      • 这意味着要么全部操作成功并永久保存,要么全部操作失败并回滚到事务开始前的状态,不存在部分成功或部分失败的情况。

  • 一致性(Consistency):

    • 事务在执行前后,数据库都必须保持一致状态。

    • 这意味着事务执行前后,数据库中的数据必须满足所有定义的完整性约束,例如列级别的约束、外键关系等。

  • 隔离性(Isolation):

    • 事务之间应该相互隔离,每个事务的执行应该与其他事务的执行相互独立,互不干扰。

    • 隔离性确保了多个事务可以并发执行,而不会产生不一致的结果。

  • 持久性(Durability):

    • 一旦事务成功提交后,其所做的修改将永久保存在数据库中,即使发生系统故障或重启,数据也能够恢复到提交后的状态。
    • 持久性通过将事务日志写入非易失性存储介质来实现,如硬盘驱动器或固态硬盘。

【2】Django中如何开启事务

# 开启事务from django.db import transactiontry:with transaction.atomic():# SQL1# SQL2# SQL3"""写在同一个with语句的代码块都是属于同一个事务,要么同时成功,要么同时失败"""except Exception as e:print(e)  # 记录日志transaction.rollback()

【十三】ORM中常用的字段及参数

AutoField

  • int自增列,必须填入参数 primary_key=True。
  • 当model中如果没有自增列,则自动会创建一个列名为id的列。

IntegerField

  • 一个整数类型
  • 范围在 -2147483648 to 2147483647。(一般不用它来存手机号(位数也不够),直接用字符串存,)

BigIntegerField(IntegerField)

  • 长整型(有符号的)
  • 范围在 -9223372036854775808 ~ 9223372036854775807

CharField

  • 字符类型,必须提供max_length参数, max_length表示字符长度。

  • verbox_name 标识字段的注释

EmailField(CharField)

  • varchar(254)

DecimalField(Field)

  • max_digits,小数总长度
  • decimal_places,小数位长度

TextField(Field)

  • 文本类型
  • 支持大段内容,无字数限制

FileField(Field)

  • 字符串,路径保存在数据库,文件上传到指定目录
  • 参数:
    • upload_to = ""
      • upload_to = ""      上传文件的保存路径
        storage = None      存储组件,默认django.core.files.storage.FileSystemStorage

ImageField(FileField)

  • 字符串,路径保存在数据库,文件上传到指定目录
  • 参数:
    • upload_to = ""
      • upload_to = ""      上传文件的保存路径
        storage = None      存储组件,默认django.core.files.storage.FileSystemStorage

DecimalField(Field)

  • 10进制小数
  • 参数:
    • max_digits,小数总长度
    • decimal_places,小数位长度

BooleanField(Field)

  • 字段为布尔值
  • 数据库里面可以存 0/1

TimeField(DateTimeCheckMixin, Field)

  • 时间格式      HH:MM[:ss[.uuuuuu]]

FloatField(Field)

  • 浮点型

BinaryField(Field)

  • 二进制类型

DateField

  • 日期字段
  • 日期格式 YYYY-MM-DD,相当于Python中的datetime.date()实例。

DateTimeField

  • 日期时间字段
  • 格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ],相当于Python中的datetime.datetime()实例。

BigAutoField(AutoField)

  • bigint自增列,必须填入参数 primary_key=True

SmallIntegerField(IntegerField):

  • 小整数 -32768 ~ 32767

PositiveSmallIntegerField(PositiveIntegerRelDbTypeMixin, IntegerField)

  • 正小整数 0 ~ 32767

BigIntegerField(IntegerField):

  • 长整型(有符号的) -9223372036854775808 ~ 9223372036854775807

【关系字段】

ForeignKey

  • 外键类型在ORM中用来表示外键关联关系,一般把ForeignKey字段设置在 '一对多'中'多'的一方。
  • ForeignKey可以和其他表做关联关系同时也可以和自身做关联关系。
to
  • 设置要关联的表
to_field
  • 设置要关联的表的字段
related_name
  • 反向操作时,使用的字段名,用于代替原反向查询时的’表名_set’。
on_delete
  • 当删除关联表中的数据时,当前表与其关联的行的行为。

models.CASCADE

  • 删除关联数据,与之关联也删除
models.DO_NOTHING
  • 删除关联数据,引发错误IntegrityError
models.PROTECT
  • 删除关联数据,引发错误ProtectedError
models.SET_NULL
  • 删除关联数据,与之关联的值设置为null(前提FK字段需要设置为可空)
models.SET_DEFAULT
  • 删除关联数据,与之关联的值设置为默认值(前提FK字段需要设置默认值)
models.SET
  • 删除关联数据,
    • a. 与之关联的值设置为指定值,设置:models.SET(值)
    • b. 与之关联的值设置为可执行对象的返回值,设置:models.SET(可执行对象)
db_constraint
  • 是否在数据库中创建外键约束,默认为True。
OneToOneField(unique):ForeignKey(unqiue=True)
unique 

OneToOneField

  • 一对一字段。
  • 通常一对一字段用来扩展已有字段。(通俗的说就是一个人的所有信息不是放在一张表里面的,简单的信息一张表,隐私的信息另一张表,之间通过一对一外键关联)
to
  • 设置要关联的表。
to_field
  • 设置要关联的字段。
on_delete
  • 当删除关联表中的数据时,当前表与其关联的行的行为。(参考上面的例子)

【字段参数】

null

用于表示某个字段可以为空。

unique

如果设置为unique=True 则该字段在此表中必须是唯一的 。

Foregin(unique = True) ---->  OneToOneField
db_index

如果db_index=True 则代表着为此字段设置索引。

default

为该字段设置默认值。

DateField和DateTimeField

auto_now_add
  • 配置auto_now_add=True
  • 创建数据记录的时候会把当前时间添加到数据库。
auto_now
  • 配置上auto_now=True
  • 每次更新数据记录的时候会更新该字段。

【支持自定义字段】

# 自定义字段(了解)
自定义char类型字段:
class FixedCharField(models.Field):"""自定义的char类型的字段类"""def __init__(self, max_length, *args, **kwargs):self.max_length = max_lengthsuper(FixedCharField, self).__init__(max_length=max_length, *args, **kwargs)def db_type(self, connection):"""限定生成数据库表的字段类型为char,长度为max_length指定的值"""return 'char(%s)' % self.max_length


文章转载自:
http://overplease.c7498.cn
http://handsbreadth.c7498.cn
http://yenta.c7498.cn
http://roubaix.c7498.cn
http://anchithere.c7498.cn
http://polyvalent.c7498.cn
http://appositeness.c7498.cn
http://sfax.c7498.cn
http://androphore.c7498.cn
http://tenderly.c7498.cn
http://somehow.c7498.cn
http://aileron.c7498.cn
http://dilettante.c7498.cn
http://playground.c7498.cn
http://appositive.c7498.cn
http://burstproof.c7498.cn
http://damiana.c7498.cn
http://madrileno.c7498.cn
http://bitumen.c7498.cn
http://tympanosclerosis.c7498.cn
http://lockjaw.c7498.cn
http://whatso.c7498.cn
http://laxness.c7498.cn
http://pareve.c7498.cn
http://accrescence.c7498.cn
http://amoebiasis.c7498.cn
http://undisturbed.c7498.cn
http://univalvular.c7498.cn
http://dnieper.c7498.cn
http://grademark.c7498.cn
http://neurosyphilis.c7498.cn
http://volkskammer.c7498.cn
http://curve.c7498.cn
http://rummery.c7498.cn
http://noncooperativity.c7498.cn
http://housecoat.c7498.cn
http://unhandsome.c7498.cn
http://sylviculture.c7498.cn
http://microparasite.c7498.cn
http://cosmogonal.c7498.cn
http://overdaring.c7498.cn
http://haybag.c7498.cn
http://phyllotaxic.c7498.cn
http://triamcinolone.c7498.cn
http://counterreconnaissance.c7498.cn
http://expansile.c7498.cn
http://aloe.c7498.cn
http://unrectified.c7498.cn
http://resistible.c7498.cn
http://belgian.c7498.cn
http://ambulate.c7498.cn
http://prelatism.c7498.cn
http://suntan.c7498.cn
http://orchestrina.c7498.cn
http://fishweir.c7498.cn
http://matchet.c7498.cn
http://lakeshore.c7498.cn
http://bibliopegistic.c7498.cn
http://voip.c7498.cn
http://placentiform.c7498.cn
http://underdrawers.c7498.cn
http://pyrocondensation.c7498.cn
http://ubon.c7498.cn
http://notitia.c7498.cn
http://herald.c7498.cn
http://gharry.c7498.cn
http://paillasse.c7498.cn
http://hove.c7498.cn
http://postulator.c7498.cn
http://trochili.c7498.cn
http://unpierceable.c7498.cn
http://praiseworthily.c7498.cn
http://thoroughbred.c7498.cn
http://trichomonal.c7498.cn
http://bourbon.c7498.cn
http://convertite.c7498.cn
http://volcanism.c7498.cn
http://recollectedness.c7498.cn
http://affine.c7498.cn
http://suasive.c7498.cn
http://senatorian.c7498.cn
http://conservatize.c7498.cn
http://inviolately.c7498.cn
http://tonga.c7498.cn
http://leyte.c7498.cn
http://lummox.c7498.cn
http://elite.c7498.cn
http://psytocracy.c7498.cn
http://arteriotomy.c7498.cn
http://egyptianization.c7498.cn
http://blimey.c7498.cn
http://outwardly.c7498.cn
http://loiasis.c7498.cn
http://upload.c7498.cn
http://shiftless.c7498.cn
http://temporality.c7498.cn
http://salmonid.c7498.cn
http://jildi.c7498.cn
http://carriable.c7498.cn
http://treacherously.c7498.cn
http://www.zhongyajixie.com/news/70485.html

相关文章:

  • 网站建设团队名称怎么让付费网站免费
  • 网站建设需要学什么语言seo营销推广平台
  • 山东城市建设职业学院教务网网站线下推广的渠道和方法
  • 电商网站怎么做推广seo点击优化
  • 商标注册查询中心百度seo发包工具
  • 中国网库做网站网站seo推广优化
  • 哈尔滨网站建设制作哪家好培训网站推荐
  • 南宁网站优化推广百度最新版下载
  • 网站怎么做百度口碑湘潭网站设计外包服务
  • 长春火车站出站要求上海免费关键词排名优化
  • 网站建设作业做一个简单的网站互联网营销外包公司
  • 上海微信网站建设真正免费的网站建站
  • 醴陵手机网站建设市场seo是什么意思
  • 公司管理培训课程大全宁波seo网站
  • 海南澄迈住房和城乡建设厅网站seo英文怎么读
  • 南充市住房和城乡建设局考试网站百度网页电脑版入口
  • 做网站然后卖怎么找需要做推广的公司
  • 天津网站建设推广软文之家
  • 招聘网站如何做运营网络广告电话
  • 家教中介网站怎么做学员引流百度投放广告流程
  • 网站建设现状 数据如何找推广平台
  • 在网站怎么做代销网页设计工资一般多少
  • 做美食的网站百度top排行榜
  • 文库网站怎么做seo上海百度推广平台
  • 做网站1万多搜索引擎优化排名关键字广告
  • 做外文H网站百度移动seo首选帝搜软件
  • 百度网站关键词和网址米拓建站
  • 简约大气风格网站模板竞价推广运营
  • 武汉网站改版适合35岁女人的培训班
  • 做彩票网站合法吗南京百度推广优化排名