mysql 事务类型表的用法
1。两个表必须是 InnoDB表类型
2。使用在外键关系的域必须为索引型(Index)
3。使用外键关系的域必须与数据类型相似
以下是父表和子表的例子:
创建表时同时创建关联
create table `parent`(
`id` int(11) not null primary key,
`name` varchar(255) not null
) type = innodb;
create table `child`(
`id` int(11),
`parent_id` int(11),
index `parend_ind` (`parent_id`),
foreign key(`parent_id`) references parent(`id`)
on delete cascade
)type=inndob;
建立表之后建立的关联:
(一定要先创建需要的索引)
ALTER TABLE yourtablename
ADD [CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)
REFERENCES tbl_name (index_col_name, ...)
[ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION}]
[ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION}]
CONSTRAINT symbol 如果被给出,它在数据库必须是唯一的,如果没有给出则自动创建,
CASCADE:从父表删除或更新且自动删除或更新子表中匹配的行
SET NULL:从父表删除或更新行,并设置子表中外键列为NULL;
NO ACTION:意味不采取动作,就是如果有一个相关的外键值在被参考的表里,删除或更新主要键值的企图不被允许进行,InnoDB拒绝对父表的删除或更新操作
RESTRICT:拒绝对父表的删除或更新操作。
SET DEFAULT: 这个动作被解析程序识别,但InnoDB拒绝包含ON DELETE SET DEFAULT或ON UPDATE SET DEFAULT子句的表定义。
大概用法:
mysqli->autocommit(); //关闭事务自动提交
编写别的代码;
mysqli->commit(); // 提交事务让里面的代码执行
mysqli_rollback(); //不执行里面的代码==>事务回滚
转载于:https://www.cnblogs.com/lin3615/p/3543616.html
mysql 事务类型表的用法相关推荐
- mysql 普通索引使用方法,Mysql索引类型与基本用法实例分析
本文实例讲述了Mysql索引类型与基本用法.分享给大家供大家参考,具体如下: 索引 MySQL目前主要有以下几种索引类型: 普通索引 唯一索引 主键索引 组合索引 全文索引 - 普通索引 是最基本的索 ...
- MySQL字段类型汇总及用法(超详细)
/********************************FileName: MySQL字段类型汇总及用法*Author: weibo*Version: v1.0*Date: 2016.5.1 ...
- Mysql 事务锁表,解决方法
2019独角兽企业重金招聘Python工程师标准>>> 1.执行 select * from information_schema.innodb_trx; kill 进程id 转载于 ...
- mysql 索引类型案例_Mysql索引类型与基本用法实例分析
本文实例讲述了Mysql索引类型与基本用法.分享给大家供大家参考,具体如下: 索引 MySQL目前主要有以下几种索引类型: 普通索引 唯一索引 主键索引 组合索引 全文索引 - 普通索引 是最基本的索 ...
- tp3.1 mysql 事务_tp框架事务处理实例和理解
tp的事务开启是非常简单的, 只需要M()->startTrans();//开启事务,M()可以是M('xxx') $m->rollback();//事务回滚 $m->commit( ...
- mysql 并发锁表_MySQL锁表的用法,防止并发情况下的重复数据
早就听说lock tables和unlock tables这两个命令,从字面也大体知道,前者的作用是锁定表,后者的作用是解除锁定.但是具体如何用,怎么用,不太清楚.今天详细研究了下,总算搞明白了2者的 ...
- mysql有没有类似merge_有关于Mysql的MERGE表类型
有关于Mysql的MERGE表类型 他将多个表在逻辑上当作一个表来查询.他建立后有两个文件, .frm 表结构定义 .mrg union表的名字清单 两个基本表: CREATE TABLE TEST_ ...
- hibernate mysql 映射_hibernate与mysql映射类型对应表与mysql导入导出
http://blog.sina.com.cn/s/blog_5f240fc40100etlt.html 一.记录下hibernate mysql映射类型对应表: 1.常规Hibernate 映射 i ...
- ruhr启动mysql数据库_Mysql表类型(存储引擎)的选择
以下内容转载自:https://www.cnblogs.com/jswang/p/6923911.html 7.1 mysql存储引擎概述 插件式存储引擎是mysql数据库最重要的特性之一,用户可以根 ...
最新文章
- (原創) 如何在VC8使用OpenMP? (C/C++) (VC++) (OpenMP)
- 转--Linux邮件服务器软件比较
- 【学习笔记】月末操作-外币评估
- python爬取虾米音乐_Python爬取620首虾米歌曲,揭秘五月天为什么狂吸粉?!
- 美赛开赛在即,你准备好了吗?
- VB快速查找大型文件中包含的字符串
- 01_测试基础知识---功能测试常用方法/正交表的使用
- python之time:基于python语言利用time模块计算运行时间—计算机器学习模型训练前后的时间代码实现
- chinapub matlab,MATLAB 5手册
- 关于PLC控制伺服电机找原点
- SonarQube task ‘xxx‘ status is ‘PENDING‘
- 'MPD' object has no attribute 'myIP'
- 题解 【NOIP2016】魔法阵
- [老码团队]ttcn3特性介绍
- 你一念之差,我动情一场:伤感日志
- 目标检测:PASCAL VOC 数据集简介
- SQL-视图(view)
- 【算法】二分法求多项式单根
- HDFS 细粒度锁优化,FusionInsight MRS有妙招
- Unity3D 判断鼠标向左还是向右滑动
热门文章
- C++primer plus第六版课后编程题答案8.6
- memcached客户端(分布算法)
- 新发现的两个Delphi要点。
- Base64编码简介及在java中的使用
- python 命令行解析模块_Python解析命令行读取参数 -- argparse模块
- c语言存储类型重要吗,C语言储存类别(Storage Class)
- 如何在Hadoop中控制MapReduce任务的数量
- (54)Xilinx双沿原语-IDDR与ODDR(第11天)
- (44)Verilog HDL 计数器设计
- python3callable使用_python --- Python中的callable 函数