Tüm Platformlar için Hızlı Uygulama Geliştirme Kitabı... Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 5/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
bir db,tablodan başka bir db, tabloya aktarım
#1
Arkadaşlar,

filtreleme yaptığım bir qry den başka bir qry nasıl aktarım yapabilirim ?

aynı vt de şu şekilde yapıyorum

INSERT INTO MESAJLAR (AD_SOYAD, TELEFON, KONU, FIRMA, TARIH, DURUMU)

SELECT AD_SOYAD, TELEFON, KONU, FIRMA, TARIH, DURUMU FROM WEB_GELEN_MESAJLAR  WHERE DURUMU='YENI'

bir tablo başka sunucuda diğer tablo başka sunucuda

Teşekkürler
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Cevapla
#2
Hangi veritabanından hangi veritabanına aktarım yapacaksınız?
Peyami Safa: "Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır". 
Can Yücel: "Toprak gibi olmalısın! Ezildikçe sertleşmelisin! Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı."
Cevapla
#3
Hocam x qry den  y qry aktarım yapıcam 

aşağıdaki gibi yaptım ama daha kolayı ve sağlıklıklısı varmı acaba ?

 QRY_WEB_MESAJLAR.Close;
    QRY_WEB_MESAJLAR.SQL.Clear;
    QRY_WEB_MESAJLAR.SQL.Add(' select * FROM iletisimform ');
    QRY_WEB_MESAJLAR.Open;

      QRY_WEB_MESAJLAR.First;
   while not QRY_WEB_MESAJLAR.Eof do
   begin
       QRY_GELEN_MESAJLAR.Append;
       QRY_GELEN_MESAJLARAD_SOYAD.AsString:= QRY_WEB_MESAJLARAdSoyad.Text;
       QRY_GELEN_MESAJLARTELEFON.AsString:= QRY_WEB_MESAJLARTelefon.Text;
       QRY_GELEN_MESAJLARKONU.AsString:= QRY_WEB_MESAJLARkonu.Text;
       QRY_GELEN_MESAJLARFIRMA.AsString:= QRY_WEB_MESAJLARfirma.Text;
       QRY_GELEN_MESAJLARTARIH.AsString:= QRY_WEB_MESAJLARTARIH.Text;
       QRY_GELEN_MESAJLARDURUMU.AsString:= QRY_WEB_MESAJLARDURUMU.Text;
       QRY_GELEN_MESAJLAR.Post;

       QRY_WEB_MESAJLAR.Next;
   end;
       QRY_WEB_MESAJLAR.Close;
       QRY_WEB_MESAJLAR.SQL.Clear;
       QRY_WEB_MESAJLAR.SQL.Add(' DELETE FROM iletisimform ');
       QRY_WEB_MESAJLAR.ExecSQL;
       QRY_WEB_MESAJLAR.close;
end;
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Cevapla
#4
"Hangi veritabanından" kastettiğim bir SQL Server'dan SQL Server'a mı, SQL Server'dan MySQL veritabanına mı yoks atam tersine mi? şeklindeydi
Peyami Safa: "Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır". 
Can Yücel: "Toprak gibi olmalısın! Ezildikçe sertleşmelisin! Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı."
Cevapla
#5
Smile mssql
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Cevapla
#6
Smile

SQL Server bu işler için harika bir yöntem sunuyor. Linked Server (Bağlantılı Sunucu)

Belli ki bu iş karşınıza çok çıkacak o nedenle teorik düzeyde kendinizi tamamlamalısınız. Bunun için şu makaleyi okumanızı tavsiye ederim;

Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Peyami Safa: "Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır". 
Can Yücel: "Toprak gibi olmalısın! Ezildikçe sertleşmelisin! Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı."
Cevapla
#7
(09-04-2018, Saat: 15:10)uparlayan Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlSmile

SQL Server bu işler için harika bir yöntem sunuyor. Linked Server (Bağlantılı Sunucu)

Belli ki bu iş karşınıza çok çıkacak o nedenle teorik düzeyde kendinizi tamamlamalısınız. Bunun için şu makaleyi okumanızı tavsiye ederim;

Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Paylaşım için teşekkürler.
Cevapla
#8
Çalıştığım kurumda ORACLE'dan SQLServer'a yaptığım Personel ünvan düzeltmeleri için kullandığım servis yapısını örnek olarak vereyim. 


Aynı işlemin OPENROWSET ile olan hali ile LINKED SERVER hallerini vereceğim. Linked Server sizi zorlarsa -ki SYSDBA olarak sunucu tarafında ek işlem ve yetki gerektirir- OPENROWSET işinizi görecektir.

OpenRowset hali
      SQL.Add('UPDATE P');
     SQL.Add('SET');
     SQL.Add('  P.P_Unvan   = PP.UNVAN');
     SQL.Add('FROM  ');
     SQL.Add('ProduksiyonDB.dbo.[PERSONEL] P ');
     SQL.Add('LEFT JOIN                                                                                                  ');
     SQL.Add('( SELECT * FROM OPENROWSET(   ');
     SQL.Add(' ''OraOLEDB.Oracle''          ');
     SQL.Add(' ''msdaora''                  ');
     SQL.Add(',''(DESCRIPTION=(CID=GTU_APP)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.99.88.77)(PORT=1521)))(CONNECT_DATA=(SID=arman11)(SERVER=DEDICATED)))''  ');
     SQL.Add(';''loginadim''              ');
     SQL.Add(';''loginpassim'               ');
     SQL.Add(',''select * from "PERSONEL"."PRODUKSIYON_VIEW"'' )) PP ');
     SQL.Add('ON (PP.SICIL_NO = P.P_SicilNo)       ');
     SQL.Add('WHERE 1=1');
     SQL.Add('AND NOT PP.SICIL_NO LIKE ''G%'' ');
     EXECSQL;

Linked Server hali (ORA9 isminde bir tanımı yukarıdaki OpenRowset içeriğindeki şekilde daha önceden tanımlamış olmanız lazım.
      SQL.Add('UPDATE P');
     SQL.Add('SET');
     SQL.Add('  P.P_Unvan   = PP.UNVAN');
     SQL.Add('FROM  ');
     SQL.Add('ProduksiyonDB.dbo.[PERSONEL] P ');
     SQL.Add('LEFT JOIN                                                                                                  ');
     SQL.Add('[ORA9]..PERSONEL.PRODUKSIYON_VIEW PP ');
     SQL.Add('ON (PP.SICIL_NO = P.P_SicilNo)       ');
     SQL.Add('WHERE 1=1');
     SQL.Add('AND NOT PP.SICIL_NO LIKE ''G%'' ');
     EXECSQL;
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#9
@erdogan en kısa yol bildiğin yol derler, şahsen ben de sizin yöntemle yapardım. 5-10 dakikaya biter aktarım zaten.
Bu arada Linked server neymiş acep, bi bakiiim hele Smile
Cevapla
#10
Çok Teşekkür ederim ilgi ve alakanıza.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  [ÇÖZÜLDÜ]-Başka Uygulamadaki MDIChild Form Handle Alma hi_selamlar 9 384 29-06-2018, Saat: 09:52
Son Yorum: hi_selamlar
  Excel'e aktarım ile ilgili emrekilinc1984 12 1.870 27-04-2018, Saat: 18:31
Son Yorum: rahim@kirazyazilim.com
  Accsess te tek tabloya girdiğim veri diğerinde de gözüksün Matesh 2 257 22-03-2018, Saat: 16:29
Son Yorum: Matesh



Konuyu Okuyanlar: 1 Ziyaretçi