为什么链表?--博客园老牛大讲堂

因为表与表之间有关系,而且查询时需要两张表的某些数据。

链表的前提是:表与表之间必须设置主外键吗?

不是的,其实表与表之间不需要设置主外键关系,用数据库语句就可以实现链表查询,删除,修改,增加等操作。

为什么要设置主外键呢?

通常我们看到表与表之间有关系,常常设置主外键。为什么?其实这样做是为了规范!假设一个不了解你表结构的人,都能够任意的修改你的外键。那这个表就不严谨了。

我们到底设不设主外键呢?

分情况:1、如果表结构简单,少量的表。逻辑不复杂。那么这个就不需要设置主外键了。特别对于数据库语句不熟悉的人,就方便多了。

2、如果表结构复杂,有大量的表,逻辑复杂的。那么自己不可能记住所有主外键之间的关系,那么就需要设置主外键。

怎样实现链表查询呢?

链表查询又分为:左联表,右链表。等.

链表不仅可以进行查询,还可以链表查询,链表增加,链表删除,链表修改。

(左联表)、现在有两张表,a表与b表,a表主要字段有:id,a​1,a2,a3。b表字段有:id,b1,b1_id。其中a表的id为主键,b1_id为外键。如

思路:左连接就是以左边的a表为基础,查询出所关联的数据。多余的数据则清除,缺失的数据则为空。

左链表查询结果如图所示:

(右联表)、现在有两张表,a表与b表,a表主要字段有:id,a​1,a2,a3。b表字段有:id,b1,b1_id。其中a表的id为主键,b1_id为外键。图如上所示

思路: 右连接就是以右边的b表为基础,原理与左联接类似。

如果是右连接的结果是:

上面都是链表查询结果,下面我说一个链表删除操作。

题目:现有两张表:chapters表:id(主键),name。division表:id(主键),name_id(chapters的外键),part。

要求:实现链表删除操作。

语句:DELETE c,d FROM chapters c JOIN division d ON c.id=d.name_id WHERE c.id=1

mysql链表_MySql链表语句--博客园老牛大讲堂相关推荐

  1. mysql左链表右链表区别_MySql链表语句--博客园老牛大讲堂

    为什么链表?--博客园老牛大讲堂 因为表与表之间有关系,而且查询时需要两张表的某些数据. 链表的前提是:表与表之间必须设置主外键吗? 不是的,其实表与表之间不需要设置主外键关系,用数据库语句就可以实现 ...

  2. java 模拟登陆exe_Java简单模拟登陆和爬虫实例---博客园老牛大讲堂

    鉴于有人说讲的不清楚,我这里再详细补充一下:更新日期:2017-11-23 本片文章适合初学者,只简单说了一下爬虫怎么用,和一个简单的小实例.不适合你的就可以不看了.----博客园老牛大讲堂 1.什么 ...

  3. Java实现 第三方的验证码发送问题--博客园老牛大讲堂

    简要:本篇文章,主要介绍怎样利用第三方平台实现短信验证码的发送问题.--博客园老牛大讲堂 1.Java发送(验证码,短信)原理--博客园老牛大讲堂 1.首先用户选定一个第三方平台. 2.进行一系列操作 ...

  4. bootstrap实现网页手风琴--博客园老牛大讲堂

    网页常用有网页的左右导航,其中用到了bootstap框架. 例子一. <!DOCTYPE html> <html><head><meta charset=&q ...

  5. Css3引用外部字体样式---博客园老牛大讲堂

    css3可以实现什么? 圆角,阴影,动画... 选择器: >:孩子选择器:例子:div>b{color:red}(div下孩子b颜色为红色) ~:兄弟 选择器:例子:div~b{color ...

  6. H5移动开发AUI框架入门---博客园老牛大讲堂

    大家都知道H5可以开发移动端的页面,网上提供的移动端的开发都有很多.因为我学习了AUI框架,所以我这里介绍一下移动端AUI框架.--博客园老牛大讲堂 一.AUI框架是什么?---博客园老牛大讲堂 AU ...

  7. mysql 圆周率_mysql - π=3.1415926 - 博客园

    数据库 Database Management System 简称DBMS 包括三大部分构成: 1 数据库文件集合, 主要是一系列的数据文件,作用是存储数据 2 数据库服务端, 主要负责对数据文件以及 ...

  8. mysql sign_mysql - 随笔分类 - signheart - 博客园

    随笔分类 - mysql 摘要:有一个项目需要存储ios的表情(emoji表情)这种表情虽然是utf8编码,但是一个字符需要占用4个字节,而MySQL utf8编码只能存放3字节的字符.在MySQL ...

  9. mysql迭代器_迭代器 - 御姐玫瑰 - 博客园

    一.协程 1.协程是Python语言独有的一种多任务方式. 2.使用gevent模块实现协程. 3.协程的实现过程(步骤) 迭代器 生成器 yield greenlet gevent 二.迭代器 1. ...

最新文章

  1. 设计模式--外观模式
  2. 算法笔记_188:历届试题 危险系数(Java)
  3. socket编程实现文件传输功能
  4. 如何将QVTKWidget嵌入到QT窗体,实现点云的显示?
  5. 定时器(setTimeout/setInterval)调用带参函数失效解决方法
  6. 2021-06-13读写锁=独占锁与共享锁
  7. 未来教育二级MS Office无纸化考试模拟软件
  8. 网络通信基础(局域网、广域网、IP地址、端口号、协议、封装、分用)
  9. 单片机c语言 课后答案,十天学会单片机C语言_郭天祥---课后习题答案
  10. jdbc sql拼接字符串
  11. 益盟操盘手编译的指标破解
  12. qq设置头衔显示服务器异常,qq头衔如何设置
  13. 两条线段之间的最短距离
  14. [python之数据分析] 基础篇1- Numpy,Scipy,Matplotlib 快速入门攻略
  15. 什么蓝牙耳机颜值高?盘点四款高颜值蓝牙耳机
  16. 这一年又是稀里糊涂地度过了
  17. Ubuntu 下旋转显示器屏幕
  18. 优达数据分析课程免费分享
  19. PHP分页方法,中间加省略号
  20. 人事工资信息管理系统

热门文章

  1. 彻底明白Java语言中的IO系统
  2. [转] 三层开发中的层次划分
  3. jsch设置代理_Java使用JSch组件实现SSH协议代理服务
  4. expdp / impdp 用法详解
  5. SAP系统内部顾问如何培养
  6. 一直觉得饿是什么问题
  7. excel数据透视表列名更改
  8. 带你认识SAP反记账
  9. 物料分类账的基本原理
  10. 全国各省“光棍”排名,数据揭秘哪里脱单最难?