laravel使用模型实现跨库连表

摘要:
假设数据库A和数据库B(表c),获得的主要内容是数据库A_B=env('B')中的$db;a: :leftJoin-˃leftJoin-˃get()-˃toArray();注意:这里使用env函数来获取in The env配置文件中的数据,即您配置的数据库的别名。例如,您为数据库B_B=B配置了DATABASE,然后可以使用env获取它。主要是数据库名称通过这种方式,可以跨数据库链接表名称,以实现不同数据库模型之间的关联。假设补货模型和产品模型需要关联,并且补货模型与产品模型的表在不同的数据库中?

假设有数据库A (表a,b),和数据库B(表c),获取的主要内容在数据库A中

$db_B =  env('B');
a::leftJoin('a','a.ID','b.ID')->leftJoin($db_B.'.c','c.ID','a.ID')->get()->toArray();

说明:这里使用env函数,是获取在.env配置文件中,你所配置的那个数据库的别名,例如你给数据库B配置了 DATABASE_B=B ,那么你就用env('DATABASE_B')来获取即可。
主要是库名.表名这种方式就可以跨库连表

实现不同数据库的模型进行关联

假设模型Replenishment和模型Product要关联,并且模型Replenishment和模型Product的表是在不同数据库

<?php

namespace AppModels;

use IlluminateDatabaseEloquentModel;

class Replenishment extends Model
{
    protected $fillable = ['g_code'];
    public $table = 'replenishment';
    protected $connection = "mm"; //config/database.php中的connections数组中的
    public function product(){
        $connection = 'mysql';//config/database.php中的connections数组中的
        return $this->setConnection($connection)->belongsTo(Product::class,'g_code','code');//Product::class就是要关联的模型,g_code和code是关联字段    } }

免责声明:文章转载自《laravel使用模型实现跨库连表》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Vuex的深入学习Pycharm安装并配置jupyter notebook下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

用友U8的SQL SERVER 数据库结构说明表

用友U8的SQL SERVER 数据库结构说明表 用友U8的SQL SERVER 数据库结构说明表在帐套中的两个表,一个表是RPT_GRPDEF,存放帐套中重要的表名及相关说明;另一个是RPT_ITMDEF,存放的是主要表中的相关字段说明;这两个表在8.20以后的版本中都有,可以看看 金蝶K3是T_tabledescription 和 T_fielddes...

SQL表分区之常规操作分区

新建一个数据库 2)新增的时候添加几个文件组 3)回到“常规”选项卡,添加数据库文件 看到用红色框框起来的地方没?上一步中建立的文件组在这里就用上了。再看后面的路径,我把每一个文件都单独放在不同的磁盘上,而且最好都是单独的放在不同的物理盘上,这样会大大提高数据的性能。 点击“确定”数据库就算创建完成了。 4)接下来要做的是建立一个分区行数,SQL语句...

01、MySQL_简介

数据库概念   数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。   数据库:存储数据的仓库 数据库分类 网络数据库   网络数据库是指把数据库技术引入到计算机网络系统中,借助于网络技术将存储于数据库中的大量信息及时发布出去;而计算机网络借助于成熟的数据库技术对网络中的各种数据进行有效管理,并实现用户与网络中的...

查看sql server数据库连接情况

1.通过系统的“性能”来查看:开始->管理工具->性能(或者是运行里面输入 mmc)然后通过添加计数器添加 SQL 的常用统计(MSSQL General Statistics) 然后在下面列出的项目里面选择 用户连接(User Connection) 就可以时时查询到sql server数据库连接数了。 2.通过系统表来查询: 查询数据库当前...

GIS中的数据库.gdb与.mdb的区别

gdb是文件地理数据库,mdb是个人地理数据库,都是数据库文件类型。 个人地理数据库,是以access数据库为基础的个人将数据库格式mdb,可以存储不超过2G的文件,只适合Windows系统下; 文件数据库是在文件系统文件夹中保存的各种类型的GIS数据集的集合。 参考文章 GIS中的数据库.gdb与.mdb的区别在哪,m892832piczpec5。...

cx_Oracle连接oracle数据库

一、准备工作 #下载oracle客户端 https://www.oracle.com/database/technologies/instant-client/downloads.html #windows都下载32位 #下载后解压,将解压后的路径添加到系统环境变量中 #如果用Navicat的话,在选项OCI配置内加载oci.dll文件 二、单表代码...