1. CREATE TABLE class (
  2. cid int(11) NOT NULL AUTO_INCREMENT,
  3. caption varchar(32) NOT NULL,
  4. PRIMARY KEY (cid)
  5. ) ENGINE=InnoDB CHARSET=utf8;
  6. CREATE TABLE student(
  7. sid int(11) NOT NULL AUTO_INCREMENT,
  8. gender char(1) NOT NULL,
  9. class_id int(11) NOT NULL,
  10. sname varchar(32) NOT NULL,
  11. PRIMARY KEY (sid),
  12. KEY fk_class (class_id),
  13. CONSTRAINT fk_class FOREIGN KEY (class_id) REFERENCES class (cid)
  14. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  15. CREATE TABLE teacher(
  16. tid int(11) NOT NULL AUTO_INCREMENT,
  17. tname varchar(32) NOT NULL,
  18. PRIMARY KEY (tid)
  19. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  20. CREATE TABLE course(
  21. cid int(11) NOT NULL AUTO_INCREMENT,
  22. cname varchar(32) NOT NULL,
  23. teacher_id int(11) NOT NULL,
  24. PRIMARY KEY (cid),
  25. KEY fk_course_teacher (teacher_id), #创建索引并加约束
  26. CONSTRAINT fk_course_teacher FOREIGN KEY (teacher_id) REFERENCES teacher (tid)
  27. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  28. CREATE TABLE score (
  29. sid int(11) NOT NULL AUTO_INCREMENT,
  30. student_id int(11) NOT NULL,
  31. course_id int(11) NOT NULL,
  32. num int(11) NOT NULL,
  33. PRIMARY KEY (sid),
  34. KEY fk_score_student (student_id),
  35. KEY fk_score_course (course_id),
  36. CONSTRAINT fk_score_course FOREIGN KEY (course_id) REFERENCES course (cid),
  37. CONSTRAINT fk_score_student FOREIGN KEY (student_id) REFERENCES student(sid)
  38. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  39. INSERT INTO class VALUES
  40. (1, '三年二班'),
  41. (2, '三年三班'),
  42. (3, '一年二班'),
  43. (4, '二年九班');
  44. INSERT INTO student VALUES
  45. (1, '男', 1, '理解'),
  46. (2, '女', 1, '钢蛋'),
  47. (3, '男', 1, '张三'),
  48. (4, '男', 1, '张一'),
  49. (5, '女', 1, '张二'),
  50. (6, '男', 1, '张四'),
  51. (7, '女', 2, '铁锤'),
  52. (8, '男', 2, '李三'),
  53. (9, '男', 2, '李一'),
  54. (10, '女', 2, '李二'),
  55. (11, '男', 2, '李四'),
  56. (12, '女', 3, '如花'),
  57. (13, '男', 3, '刘三'),
  58. (14, '男', 3, '刘一'),
  59. (15, '女', 3, '刘二'),
  60. (16, '男', 3, '刘四');
  61. INSERT INTO teacher VALUES
  62. (1, '张磊老师'),
  63. (2, '李平老师'),
  64. (3, '刘海燕老师'),
  65. (4, '朱云海老师'),
  66. (5, '李杰老师');
  67. INSERT INTO course VALUES
  68. (1, '生物', 1),
  69. (2, '物理', 2),
  70. (3, '体育', 3),
  71. (4, '美术', 2);
  72. INSERT INTO score VALUES
  73. (1, 1, 1, 10),
  74. (2, 1, 2, 9),
  75. (5, 1, 4, 66),
  76. (6, 2, 1, 8),
  77. (8, 2, 3, 68),
  78. (9, 2, 4, 99),
  79. (10, 3, 1, 77),
  80. (11, 3, 2, 66),
  81. (12, 3, 3, 87),
  82. (13, 3, 4, 99),
  83. (14, 4, 1, 79),
  84. (15, 4, 2, 11),
  85. (16, 4, 3, 67),
  86. (17, 4, 4, 100),
  87. (18, 5, 1, 79),
  88. (19, 5, 2, 11),
  89. (20, 5, 3, 67),
  90. (21, 5, 4, 100),
  91. (22, 6, 1, 9),
  92. (23, 6, 2, 100),
  93. (24, 6, 3, 67),
  94. (25, 6, 4, 100),
  95. (26, 7, 1, 9),
  96. (27, 7, 2, 100),
  97. (28, 7, 3, 67),
  98. (29, 7, 4, 88),
  99. (30, 8, 1, 9),
  100. (31, 8, 2, 100),
  101. (32, 8, 3, 67),
  102. (33, 8, 4, 88),
  103. (34, 9, 1, 91),
  104. (35, 9, 2, 88),
  105. (36, 9, 3, 67),
  106. (37, 9, 4, 22),
  107. (38, 10, 1, 90),
  108. (39, 10, 2, 77),
  109. (40, 10, 3, 43),
  110. (41, 10, 4, 87),
  111. (42, 11, 1, 90),
  112. (43, 11, 2, 77),
  113. (44, 11, 3, 43),
  114. (45, 11, 4, 87),
  115. (46, 12, 1, 90),
  116. (47, 12, 2, 77),
  117. (48, 12, 3, 43),
  118. (49, 12, 4, 87),
  119. (52, 13, 3, 87);

1.KEY fk_course_teacher (teacher_id),表示创建索引fk_course_teacher,类型是normal。并添加约束

2.在关联表的时候需要先创建好。

3.在删除的时候要先删除关联表,否则出错。

4.CONSTRAINT fk_class FOREIGN KEY (class_id) REFERENCES class (cid) ,添加外键约束FOREIGN KEY (class_id) REFERENCES class (cid)表示本表的class_id字段外联class表的cid字段。class如果不提前创建好就出出错。

后续。。。

msyql笔记的更多相关文章

  1. msyql 笔记

    mysql复习 一:复习前的准备 1:确认你已安装wamp 2:确认你已安装ecshop,并且ecshop的数据库名为shop 二 基础知识: 1.数据库的连接 mysql -u -p -h -u 用 ...

  2. MySQL入门笔记

    MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: ·          rpm包形式 ·          通用二进制 ...

  3. Hbase—学习笔记(一)

    此文的目的: 1.重点理解Hbase的整体工作机制 2.熟悉编程api,能够用来写程序 1.  什么是HBASE 1.1.   概念特性 HBASE是一个数据库----可以提供数据的实时随机读写 HB ...

  4. 笔记-mysql-管理及基础操作

    笔记-mysql使用-管理及基础操作 1.      简介 mysql是一个免费的关系型数据库,不过好像被oracle收购了.... 希望它继续免费. 1.1.    相关术语 数据库,表,列,行,冗 ...

  5. go微服务框架kratos学习笔记十(熔断器)

    目录 go微服务框架kratos学习笔记十(熔断器) 什么是熔断 熔断器逻辑 kratos Breaker kratos 熔断逻辑 kratos熔断器使用说明 bladmaster client br ...

  6. Vue学习笔记-rest_framework_jwt 学习

    一  使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7  (Windows x86- ...

  7. Vue学习笔记-Django REST framework3后端接口API学习

    一  使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7  (Windows x86- ...

  8. Vue学习笔记-vue-element-admin 前端学习

    一  使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7  (Windows x86- ...

  9. Vue学习笔记-vue-element-admin 按装报错再按装

    一  使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7  (Windows x86- ...

随机推荐

  1. 《精通Windows API-函数、接口、编程实例》——第4章文件系统

    第4章文件系统 4.2 磁盘和驱动器管理 文件系统的基本概念:包括磁盘分区,卷,目录,文件对象,文件句柄,文件映射1.磁盘分区:物理磁盘,逻辑磁盘2.卷:也称逻辑驱动器,是NTFS,FAT32等文件系 ...

  2. git bash配置SSH远程连接阿里云ECS

    1.连接配置 1-1.添加安全组规则 1-2.使用GitHub的话本地都会有id_rsa.pub(公钥),id_rsa(私钥),一般保存在C盘用户目录下.ssh文件夹. 把公钥内容复制下来(ssh-r ...

  3. Linux下mysql创建用户并设置权限,设置远程连接

    为了安全考虑,OneinStack仅允许云主机本机(localhost)连接数据库,如果需要远程连接数据库,需要如下操作:打开iptables 3306端口 # iptables -I INPUT 4 ...

  4. uni-app使用Canvas绘图

    最近公司项目在用uni-app做小程序商城,其中商品和个人需要生成图片海报,经过摸索记录后将一些重点记录下来.这里有两种方式来生成 1.后台控制生成 2.前端用canvas合成图片 这里我们只讲使用c ...

  5. sql server 语句书写注意事项

    1  Between在某些时候比IN 2 在必要是对全局或者局部临时表创建索引,有时能够提高速度,但不是一定会这样,因为索引也耗费大量的资源.他的创建同是实际表一样 3 尽量少用视图,它的效率低.对视 ...

  6. python之atexit模块的使用

    python atexit 模块定义了一个 register 函数,用于在 python 解释器中注册一个退出函数,这个函数在解释器正常终止时自动执行,一般用来做一些资源清理的操作. atexit 按 ...

  7. mysql管理工具之pt

    之前我一直用Seconds_behind_master来衡量主从的延迟,今天看到文档,才觉得多么不可靠!以下是官方文档的描述: In essence, this field measures the ...

  8. 【Distributed】限流技巧

    一.概述 1.1 高并发服务限流特技 1.2 为什么要互联网项目要限流 1.3 高并发限流解决方案 二.限流算法 2.1 计数器 2.2 滑动窗口计数 2.3 令牌桶算法 使用RateLimiter实 ...

  9. const成员函数和const对象

    从成员函数说起 在说const成员函数之前,先说一下普通成员函数,其实每个成员函数都有一个隐形的入参:T *const this. int getValue(T *const this) { retu ...

  10. 随意软连接/home/users目录导致环境变量消失后的事故

    1 自己的用户zj下,把/home/zj 删除后用ln -s软连接其他目录,导致了当前用户的.bash_profile失效 2 解决思路 第一,删除软连接 rm -rf /home/zj   记住后面 ...