我很難連接兩個表,一個是來自 postgres 資料庫的表,這是我在 laravel 中的默認資料庫,另一個是來自另一臺服務器上的 mysql 資料庫的表。
我已經在 config/database.php 中定義了 mysql 連接
我的問題是我想將表與一個公共列(即 ID)連接起來。
我已經完成了我的研究。但是他們中的大多數人表示不可能連接來自兩個不同網路的兩個表。
我想要實作的是我想加入兩個表,因為我想在 laravel 中使用 Yajra 資料表創建一個搜索過濾器。
所以我的問題是。在不同的網路上連接兩個不同的資料庫postgres和mysql的表真的不可能嗎?或者我可以使用一些技巧來實作這一目標
uj5u.com熱心網友回復:
您可以使用 Eloquent 模型輕松做到這一點。這不是正確的 SQL 連接,但您可以實作跨多個資料庫或事件服務器的關系查詢。
- 在您的
config/database.php檔案中,根據需要宣告盡可能多的連接 - 為每個表創建您想要的模型
$connection在模型中指定屬性
例如:
class Model1 extends Model
{
public $connection = 'mysql_database';
public function model2()
{
return $this->belongsTo(Model2::class);
}
}
class Model2 extends Model
{
public $connection = 'postgre_database';
public function model1s()
{
return $this->hasMany(Model1::class);
}
}
然后,您可以將這些模型之間的關系用作正常的Eloquent 關系
uj5u.com熱心網友回復:
老實說,我以前沒有使用過這個,但讓它在以后使用。感謝您的回答。以下是一些關于 Postgres<->MySQL 用法的過濾和有用資源:
- 將 MySQL 連接到 PostgreSQL:2 個簡單的方法
- Интеграция PostgreSQL с другими СУБД: делаем запросы в MySQL很酷的文章(對不起,俄語,我明白,但不知何故你可以翻譯)
- PostgreSQL 使用 mysql_fdw 訪問 MySQL 作為資料源
- 在 Postgresql 中設定 Mysql 外部資料包裝器
- 外部資料包裝器和并行查詢
- 如何在 psycopg2 中使用多個 Postgres 資料庫
- 使用 mysql_fdw 將 Postgres 中的表連接到 MySQL
- Postgres 外部資料包裝器奇怪的連接行為
- 如何在 PostgreSQL 中設定外部資料包裝器
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/349321.html
標籤:拉拉维尔
下一篇:例外:“Symfony\Component\HttpKernel\Exception\NotFoundHttpException”,...
