/**

*功能:模拟两张表关系及添加两个主键和外键详细过程

*日期: 2018年7月26日   18:45

*注释: 学习数据库MySQL的点点记录, 谢谢网上各位大神分享经验与资料, 欢迎各位大神批评指导与交流。

*/

在Navicat 新建一个数据库cc, 在cc新建“查询中”输入下列sql语句:

第一张表---班级表 (ok)

create table banji

(

banji_id int primary key,

banji_num int not null,

banji_name nvarchar(150)

)

第二张表---教师表(ok)

create table jiaoshi

(

jiaoshi_id int primary key,

jiaoshi_name nvarchar(150)

)

第三张表---用来模拟班级和教师的关系1  mapping---映射   ---(ok,此时没有外键)

create table banji_jiaoshi_mapping

(

banji_id int,

jiaoshi_id int,

kecheng nvarchar(60),

constraint pk_banji_id_jiaoshi_id primary key (banji_id,  jiaoshi_id)

)

drop table banji_jiaoshi_mapping;

第三张表---用来模拟班级和教师的关系2   mapping---映射  ---(error,此时sql语句使用Navicat在MySQL运行报错)

create table banji_jiaoshi_mapping2

(

banji_id int constraint fk_banji_id foreign key references banji (banji_id),

jiaoshi_id int foreign key references jiaoshi (jiaoshi_id),

kecheng nvarchar(60),

constraint pk_banji_id_jiaoshi_id primary key (banji_id,  jiaoshi_id)

)

第三张表---用来模拟班级和教师的关系3   mapping---映射  ---(ok,此时有两个主键和外键)

create table banji_jiaoshi_mapping3

(

banji_id int,

jiaoshi_id int,

constraint fk_banji_id foreign key (banji_id) references banji (banji_id),

constraint fk_jiaoshi_id foreign key (jiaoshi_id) references jiaoshi (jiaoshi_id),

kecheng nvarchar(60),

constraint pk_banji_id_jiaoshi_id primary key (banji_id,  jiaoshi_id, kecheng)

)

---删除表banji_jiaoshi_mapping3的sql语句

drop table banji_jiaoshi_mapping3;

原文:https://www.cnblogs.com/blovedr/p/9373619.html

mysql navicat 多语句_使用Navicat多对多关系SQL语句在MySQL中实现相关推荐

  1. mysql查看cpu使用高sql语句_查询CPU占用高的SQL语句

    触发器造成死锁.作业多且频繁.中间表的大量使用.游标的大量使用.索引的设计不合理.事务操作频繁.SQL语句设计不合理,都会造成查询效率低下.影响服务器性能的发挥.我们可以使用sql server自带的 ...

  2. tp5循环查询语句_如何用Excel快速生成SQL语句,用过的人都说好

    Excel的公式自动生成想必大家都知道了,就是写好一个公式后直接往下拖,就可以将后面数据的公式自动生成. 今天我们就用这个功能来快速生成SQL语句. 导入Excel数据 Excel的数据有多种方式,这 ...

  3. oracle 带有变量的语句_【成都校区】Oracle SQL语句之常见优化方法总结

    本帖出自于黑马程序员成都中心,更多资源可关注微信公众号 1.SQL语句尽量用大写的: 因为oracle总是先解析SQL语句,把小写的字母转换成大写的再执行. 2.使用表的别名: 当在SQL语句中连接多 ...

  4. oracle 执行带参数的sql语句_当用EXECUTE IMMEDIATE执行SQL语句中的参数个数也是动态的?用什么方法实现?...

    当用EXECUTE IMMEDIATE执行SQL语句中的参数个数也是动态的?用什么方法实现? 描述详细一点就是:在要执行的SQL语句中所用到(: parameter)这种参数的个数,因具体条件不同,而 ...

  5. sql删除语句_推荐强大开源的数据库SQL语句审核平台,再也不用担心删除跑路了!...

    删除数据库跑路,本来是一个调侃的话语,但是前段时间在互联网圈子真的发生过,震动整个圈子,为了避免此类悲剧再次发生,现推荐一个强大的开源SQL语句管理平台,具体的功能如下: 用户模块 1.Dashboa ...

  6. 东软mysql期末题库_东软大三上学期实训笔记-mysql篇Day5完结篇

    mysql篇Day5完结篇 知识点讲解: 1.视图:view (1) 虚拟表.和普通表一样使用 (2) 作用: ① 视图存储在数据库中的查询语句.主要作用:安全原因.可以使复杂的查询语句容易理解与使用 ...

  7. mysql写php木马_PHP一句话木马小总结与SQL语句写一句话木马

    一.基础类的一句话--功能仅限于验证漏洞了,实际中太容易被查出出来: 1 <?php @eval($_GET["code"])?> 2 <?php @system ...

  8. mysql 下 计算 两点 经纬度 之间的距离 含具体sql语句

    mysql取字段逗号分隔的第一个 cover字段为:(admin/LUpiEMD1Pk6U6B,admin/LUpiEMD1Pk6U6B,admin/LUpiEMD1Pk6U6B) 取逗号分隔第一个词 ...

  9. navicat怎么安装mysql数据库_【20170825】从零开始学SQL数据库 安装mysql与navicat,开始练习...

    封面已经说明一切.左边mysql确实很酷炫,时时刻刻感觉自己像个程序猿,但是还是右边的navicat美化过后的界面更友好一些. 网上关于如何安装这两个软件已经有很多教程了,我选择了一个比较新的,且非常 ...

最新文章

  1. redis设置密码和启动 redis数据类型
  2. Spring 基于注解(annotation)的配置之@Autowired注解
  3. Socket 之 API函数介绍
  4. 蓝桥杯 2011年第二届C语言初赛试题(3)
  5. 学习指南!美国java程序员要求
  6. JDBC:随机生成车牌号,批量插入数据库
  7. could not load hsdis-mips64el:hsdis-mips64el library not loadable PrintAssembly is disabled
  8. 在AVEVA PDMSE3D软件实现三维二维码模型
  9. 启动Hadoop集群,出现Cannot set priority of nodemanager(resourcemanager) process xxx问题
  10. 数据库课程设计-KTV点歌系统(VB.net 窗体,MySQL5.5)
  11. UG工程图模板制作方法,超级实用
  12. 正确插入目录并且自由更新
  13. 改善磁带存储性能的五种方法
  14. JavaScript 各种参数 详解(十二)
  15. pjsip学习 ------ 三
  16. 大连先河计算机学校什么时候黄的,黑带联盟_235
  17. PyQt5界面编程改变字体大小
  18. 2022年全球及中国疏水阀行业头部企业市场占有率及排名调研报告
  19. 从签到功能到用户激励体系——产品经理项目实录
  20. Open vSwitch---流表控制主机数据转发实验(四)---meter表实践

热门文章

  1. python 空列表对象的布尔值_python – 从TensorFlow对象中检索数据 – 来自correct_prediction的布尔值列表...
  2. AOP处理事务静、动态代理(jdk方法)
  3. abb变频器如何拷贝_教你变频器参数怎样简单设置
  4. python判断数组中是否有重复元素_python经典面试算法题4.1:如何找出数组中唯一的重复元素...
  5. python精彩编程200例百度_完整word版,python经典例题100道
  6. 徕卡静态转换rinex软件_[摄影]旅游伴侣———徕卡SL2
  7. fuck-KUNLUN昆仑ECRS会员管理系统
  8. 注入学习(3) Mysql+php注入 基于bool和时间的盲注
  9. [iOS-UI]点击清空按钮,却会有提交的感觉
  10. Adaptive Placeholder – 自适应的占位符效果