当前位置:Gxlcms > 数据库问题 > mysql 跨库join

mysql 跨库join

时间:2021-07-01 10:21:17 帮助过:16人阅读

TABLE student( id VARCHAR(10) NOT NULL DEFAULT ‘‘ COMMENT 主键id, student_name VARCHAR(10) DEFAULT NULL COMMENT 学生姓名, school_id VARCHAR(10) NOT NULL DEFAULT ‘‘ COMMENT 学校id, PRIMARY KEY(id) )ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=学生表;

 

B库中添加一张school表:

CREATE TABLE school(
    id VARCHAR(10) NOT NULL DEFAULT ‘‘ COMMENT 主键id,
    school_name VARCHAR(10) DEFAULT NULL COMMENT 学校名称,
    PRIMARY KEY(id) 
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=学校表; 

 

三、表中添加数据

在数据库A中添加一行数据:

id = 1 
student_name = 琚建飞
school_id = 1

在数据库B中添加一行数据:

id=1
school_name = 廊坊师范

 

四、在数据库A中建立远程表

CREATE TABLE school (
  `id` varchar(10) NOT NULL DEFAULT ‘‘ COMMENT 主键id,
  `school_name` varchar(10) DEFAULT NULL COMMENT 学校名称,
  PRIMARY KEY (`id`)
) ENGINE=FEDERATED DEFAULT CHARSET=utf8 
    COMMENT=学校表-远程表 CONNECTION=mysql://root:root@localhost:3306/b/school;
-- root:root   远程数据库的账号和密码
-- localhost:3306  远程数据库的ip和端口
-- b  远程数据库的名称
-- school 远程数据库的表名称 

 

五、执行join操作

SELECT s.id, s.student_name, sc.school_name FROM student s JOIN school sc ON s.school_id = sc.id

 

技术图片

 

 

 

本地表和远程表

  1. 对本地表进行更新操作,远程表也会同步更新。
  2. 删除本地表,远程表不会删除。
  3. 远程表结构修改,本地表不会更新。


————————————————
版权声明:本文为CSDN博主「琚建飞」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gnd15732625435/article/details/80270096

mysql 跨库join

标签:协议   mysql   ESS   关联关系   engine   win   关联   inno   csdn   

人气教程排行