2016-04-11 19 views
0

Crystal Reports içinde kullandığım ODBC aracılığıyla bağlı 10 Postgres Veritabanım var. Bu 10 veritabanının hepsi aynı, aynı şema ve tablolardır.Crystal raporlarında birden fazla veritabanı

Tek bir konsolide rapor almak için 10 veritabanını aynı anda sorgulamam gerekiyor. Mümkün mü? Öyleyse, veritabanlarını konsolide verilere nasıl bağlarım?

Verileri çizmek için bir SQL sorgusu kullanıyorum. peşin

+0

Evet size alt raporları kullanması gereken mümkündür ... bir veritabanı için bir alt rapor. ancak 10 veritabanına erişirseniz performans düşebilir ... – Siva

+0

Teşekkür ederim, ben buna bakacağım. Performans, yalnızca verileri birleştirmek için bir kerelik bir rapor olacağından bir sorun olmayacaktır. Bunu almayı ve öneri olarak koşmayı başardığımda geri bildirim sağlayacağım –

cevap

1

yılında

sayesinde doğru yolu Kristal raporları dışında veri kaynağı ele olacaktır. Postgres'le aşina değilim ve tabloları veya veritabanlarını bağlayıp bağlamadığınızı bilmiyorum. SQL Server'da MS Access bağlantılı tablolarda bağlantılı sunucuları kullanabilirsiniz, Postgres'de benzer bir kavram olmalıdır. Buradaki fikir, veritabanının dışındaki bir nesneyi bağlamak ve veritabanının içinde kullanmaktır. ,

A, B seçeneğini server2.database1.table1 BİRLİĞİ'NDEN A, B, C seçeneğini server1.database1.table1 BİRLİĞİ'NDEN A, B, C belirleyin: Bu, böyle bir sorgu hazırlamak sağlayacak server3.database1.table1 DAN C ... BİRLİĞİ seçmek , B, C server10.database1.table1

Bu sorgu (veya görünüm) DAN tüm bilgileri içerecek ve üzerinde size Kristal raporunu temel alabilirsiniz . Crystal, sorguyu içeren tek bir veritabanıyla çalışacak ve sorgu, verileri toplamak için diğer veritabanlarıyla ilgilenecektir. Tüm 10 veritabanına bağlantılarınızı doğrudan Crystal raporlarına eklediğinizde, yönteme göre daha hızlı olacaktır.

Burada alt raporların bir seçenek olduğunu düşünmüyorum. Her alt rapor ayrı bir veritabanına bağlanacak ve 10 ayrı alt rapor alacaktır. Tüm verileri alabilir ancak her bir alt rapor için sıralanacaktır, böylece ilk veri için A-> Z, sonra ikinci için A-> Z olacaktır. Ther birlikte sunulacak 10 ayrı veri kümesi olacak, ancak yine de ayrı kayıt kümeleri gibi davranacak.

Postgres bağlantılı veri tabanları desteklemiyorsa sadece kendi tabloları bağlamak ve verileri birleştirecek olan bir yer olarak kullanmak, bir proxy olarak bir Access veritabanı kullanabilirsiniz

+0

Bunun için gerçekten iyi bir çözüm +1 .... Ama bana bir şeyi açıklığa kavuşturun, eğer tüm 10 veritabanı için bir sorgu oluşturursanız, o zaman bu sorgulama işlemi nasıl ele alınır? veritabanı girişleri ve sorgu ne zaman geri alınacak. – Siva

+0

Giriş, bağlantı tarafından ele alınacaktır. Bağlantılı sunucu veya bağlantılı tablo eklerken bağlantı bilgilerini sağlamanız gerekir ve proxy veritabanına kaydedilir. Alınan süre, Crystal'in verileri almasıyla aynı olan en kötü durum senaryosunda olacaktır. Genellikle daha iyi olacak çünkü veriler Crystal yerine bir veritabanı motoru tarafından işlenecek. – Lan

+0

Veritabanlarını erişime bağladım, ancak aynı tablo adlarından dolayı, kopyaların hepsinin tablonun sonunda bir numarası var. Tüm 100 tabloyu ikizlerine nasıl bağlayabilirim, böylece 1000 tablo olarak değil, 100 tablo olarak görülebilir mi? (100 tablo x 10 veritabanı) –

İlgili konular