zoukankan      html  css  js  c++  java
  • python 使用事务

    1. def mysql_test(request):
          try:
          	with transaction.atomic():
              	# 一系列对数据库的操作
              	pass
      	except Exception:   # 最好具体的错误类型,捕捉具体的错误
              pass
      

    好了,上面就是关于django中使用事务的方式

    不过这里还是得提醒一下,mysql中INNODB存储引擎是支持事务的,MyISAM是不支持的!

    所以我们在settings.py文件中,关于mysql数据库,如果项目中需要使用到事务,那么就必须指定INNODB存储引擎。

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'root',
            'USER': 'root',
            'PASSWORD': 'root',
            'HOST': '127.0.0.1',
            'PORT': 3306,
            'OPTIONS': {
                "init_command": "SET storage_engine=INNODB",
            }
        }
    }
    

    如果忽略掉OPTIONS这个键值对的话,django给我们创建的表是MyISAM。这是一个小坑,本人记录一下。

  • 相关阅读:
    Linux找回root密码
    关于Linux的随笔笔记
    需求征集系统进度03
    需求征集系统进度02
    需求征集系统进度01
    第六周总结
    阅读笔记03
    第一周总结
    第五周总结
    阅读笔记02
  • 原文地址:https://www.cnblogs.com/ttym88m/p/14520437.html
Copyright © 2011-2022 走看看