Farklı veritabanları ve tablolar içeren sorgulamak için birden fazla veritabanı adaptör nasıl kullanılır?

1 Cevap php

Ben belirttiğim gibi ayarlanır 2 veritabanları, ettik here. Nasıl database_1.table_1 ve database_2.table_1 içeren bir SQL sorgusu yazabilirim?

Örneğin Bu sorguyu dikkate

$sql = "SELECT distinct database_1.users.id, database_1.users.name
        FROM database_1.users, database_2.sales
        WHERE database_2.sales.user_id = database_1.users.id";

Bu nasıl sorgu birden çok db adaptör kullanılarak yazılmış olabilir?

Edit: Ben bu şekilde ben application.ini gerçek veritabanı isimlerini değiştirebilirsiniz, çünkü 2 veritabanı adaptörleri kullanarak düşündüm. Ben sql sorguları değiştirmeden veritabanı isimlerini değiştirebilirsiniz başka bir yolu var mı?

Solution I'm using: Ben ikinci veritabanı adını okumak için başka bir yapılandırma değişkeni kullanılır. İlk veritabanı adı adaptör ayarlarına geliyor.

1 Cevap

Eğer Federated databases gibi bir şey kullanamazsınız sürece, ama daha sonra sorgu için bir veritabanı adaptörü kullanın ve veritabanı federe diğer veritabanlarından getiriliyor halledeyim istiyorum.

Zend_Application_Resource_Multidb sadece anda birden fazla veritabanı bağdaştırıcısı kuruyor. Hiçbir şey daha. Sen birbirlerinden ayrı adaptörü kullanır. Database1 sorgulamak ve database2 sorgulamak için adaptörü kullanmak için Bağdaştırıcısı1 kullanın. İki sorgular. Uygulama içerisinden sonuçları Birleştirme.