事务的目的:保证多个SQL语句要么同时成功,要么同时失败
事务的4个特性:原子性、一致性、间隔性、持久性
事务的三个方法:
1、transaction ---------- 开启事务
2、rollback -------- 回滚
3、commit --------- 提交
- from django.db import transaction
-
- try:
- # 开启事务
- with transaction.atomic():
- SQL1
- SQL2
- SQL3
- except Exception as e:
- print(e) #记录日志
-
- transaction.rollback()
字段类型 | 解释及参数 |
AutoField | int自增列,参数primary_key=True(必填),如果model中没有自增列,会自动创建一个名为id的列 |
TntegerField | 整数类型,范围在-2147483648 ~ 2147483647 |
CharField | 字符类型,参数max_length(必填),max_length表示参数 |
DateField | 日期字段,日期格式:YYYY-MM-DD,年月日 |
DateTimeField | 日期字段,格式:YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ],年月日时分秒 |
BigAutoField(AutoField) | bigint自增列,必须填入参数 primary_key=True |
SmallIntegerField(IntegerField) | - 小整数 范围:-32768 ~ 32767 |
PositiveSmallIntegerField(PostitiveIntegerRelDbTypeMixin, IntegerField) | 正小整数 范围:0 ~ 32767 |
BigIntegerField(IntegerField) | 长整型(有符号的)范围:-9223372036854775808 ~ 9223372036854775807 |
BooleanField(Field) | 布尔值类型 True/False 1/0 |
TextField(Field) | 字符串,路径保存在数据库,文件上传到指定目录 参数: upload_to ="" 上传文件的保存路径 storage = None 存储组件,默认django.core.files.storage.FileSystemStorage |
ImageField(FileField) | 字符串:路径保存在数据库,文件上传到指定,目录 参数: upload_to = "" 上传文件的保存路径 storage = None 存储组件,默认django.core.files.storage.FileSystemStorage |
TimeField(DateTimeCheckMixin,Field) | 时间格式: HH:MM[:ss[.uuuuuu]] 时分秒 |
FloatField(Field) | 浮点型 |
DecimalField(Field) | 10进制小数 参数: max_digits --------- 小数总长度 decimal_places --------小数位长度 |
BinaryField(Field) | 二进制类型 |
外键类型在ORM中用来表示外键关联关系,一般把ForeignKey设置在一对多表关系中多的一方
ForeignKey可以和其它表做关联关系同时也可以和自身做关联关系