mysql关联表(references)的条件:
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 事务类型表的用法相关推荐

  1. mysql 普通索引使用方法,Mysql索引类型与基本用法实例分析

    本文实例讲述了Mysql索引类型与基本用法.分享给大家供大家参考,具体如下: 索引 MySQL目前主要有以下几种索引类型: 普通索引 唯一索引 主键索引 组合索引 全文索引 - 普通索引 是最基本的索 ...

  2. MySQL字段类型汇总及用法(超详细)

    /********************************FileName: MySQL字段类型汇总及用法*Author: weibo*Version: v1.0*Date: 2016.5.1 ...

  3. Mysql 事务锁表,解决方法

    2019独角兽企业重金招聘Python工程师标准>>> 1.执行 select * from information_schema.innodb_trx; kill 进程id 转载于 ...

  4. mysql 索引类型案例_Mysql索引类型与基本用法实例分析

    本文实例讲述了Mysql索引类型与基本用法.分享给大家供大家参考,具体如下: 索引 MySQL目前主要有以下几种索引类型: 普通索引 唯一索引 主键索引 组合索引 全文索引 - 普通索引 是最基本的索 ...

  5. tp3.1 mysql 事务_tp框架事务处理实例和理解

    tp的事务开启是非常简单的, 只需要M()->startTrans();//开启事务,M()可以是M('xxx') $m->rollback();//事务回滚 $m->commit( ...

  6. mysql 并发锁表_MySQL锁表的用法,防止并发情况下的重复数据

    早就听说lock tables和unlock tables这两个命令,从字面也大体知道,前者的作用是锁定表,后者的作用是解除锁定.但是具体如何用,怎么用,不太清楚.今天详细研究了下,总算搞明白了2者的 ...

  7. mysql有没有类似merge_有关于Mysql的MERGE表类型

    有关于Mysql的MERGE表类型 他将多个表在逻辑上当作一个表来查询.他建立后有两个文件, .frm 表结构定义 .mrg union表的名字清单 两个基本表: CREATE TABLE TEST_ ...

  8. hibernate mysql 映射_hibernate与mysql映射类型对应表与mysql导入导出

    http://blog.sina.com.cn/s/blog_5f240fc40100etlt.html 一.记录下hibernate mysql映射类型对应表: 1.常规Hibernate 映射 i ...

  9. ruhr启动mysql数据库_Mysql表类型(存储引擎)的选择

    以下内容转载自:https://www.cnblogs.com/jswang/p/6923911.html 7.1 mysql存储引擎概述 插件式存储引擎是mysql数据库最重要的特性之一,用户可以根 ...

最新文章

  1. (原創) 如何在VC8使用OpenMP? (C/C++) (VC++) (OpenMP)
  2. 转--Linux邮件服务器软件比较
  3. 【学习笔记】月末操作-外币评估
  4. python爬取虾米音乐_Python爬取620首虾米歌曲,揭秘五月天为什么狂吸粉?!
  5. 美赛开赛在即,你准备好了吗?
  6. VB快速查找大型文件中包含的字符串
  7. 01_测试基础知识---功能测试常用方法/正交表的使用
  8. python之time:基于python语言利用time模块计算运行时间—计算机器学习模型训练前后的时间代码实现
  9. chinapub matlab,MATLAB 5手册
  10. 关于PLC控制伺服电机找原点
  11. SonarQube task ‘xxx‘ status is ‘PENDING‘
  12. 'MPD' object has no attribute 'myIP'
  13. 题解 【NOIP2016】魔法阵
  14. [老码团队]ttcn3特性介绍
  15. 你一念之差,我动情一场:伤感日志
  16. 目标检测:PASCAL VOC 数据集简介
  17. SQL-视图(view)
  18. 【算法】二分法求多项式单根
  19. HDFS 细粒度锁优化,FusionInsight MRS有妙招
  20. Unity3D 判断鼠标向左还是向右滑动

热门文章

  1. C++primer plus第六版课后编程题答案8.6
  2. memcached客户端(分布算法)
  3. 新发现的两个Delphi要点。
  4. Base64编码简介及在java中的使用
  5. python 命令行解析模块_Python解析命令行读取参数 -- argparse模块
  6. c语言存储类型重要吗,C语言储存类别(Storage Class)
  7. 如何在Hadoop中控制MapReduce任务的数量
  8. (54)Xilinx双沿原语-IDDR与ODDR(第11天)
  9. (44)Verilog HDL 计数器设计
  10. python3callable使用_python --- Python中的callable 函数