UbrTrade adlı üyeden alıntı:
mesajı görüntüle
Bir veritabanındaki verileri diğer bir veritabanına nasıl kopyalarım
13
●284
- 27-10-2022, 17:37:56hocam bu işi php sayfası üzerinde yapmam gerekiyor ayrı bir program ile veya import export işlemi ile değil bu yüzden program ile olmaması gerekli ilginiz için teşekkür ederimercnakar adlı üyeden alıntı: mesajı görüntüle
- 27-10-2022, 17:42:30pardon o halde yanlış anladım, kusura bakmayınUbrTrade adlı üyeden alıntı: mesajı görüntüle
- 27-10-2022, 18:11:45Aynı kullanıcı 2 veritabanına da erişebiliyorsa;
$secilenSatirlar = [1,2,3,4,5]; $db = new PDO('mysql:host=localhost;dbname=veritabani_adi', 'kullanici_adi', 'parola'); $kopyala = $db->prepare("REPLACE INTO ithalat.saatler SELECT id, saat_adi FROM ihracat.saatler WHERE id IN (".implode(',', array_fill(0, count($secilenSatirlar), '?')).")"); $kopyala->execute($secilenSatirlar); echo $kopyala->rowCount();Veritabanları kullanıcıdan bağımsızsa;
$secilenSatirlar = [1,2,3,4,5]; $db1 = new PDO('mysql:host=localhost;dbname=veritabani_adi', 'kullanici_adi', 'parola'); $db2 = new PDO('mysql:host=localhost;dbname=veritabani_adi', 'kullanici_adi', 'parola'); $secilenleriGetir = $db1->prepare("SELECT id, saat_adi FROM saatler WHERE id IN (".implode(',', array_fill(0, count($secilenSatirlar), '?')).")"); $secilenleriGetir->execute($secilenSatirlar); $secilenleriKaydet = $db2->prepare("REPLACE INTO saatler (id, saat_adi) VALUES (:id, :saat_adi)"); foreach ($secilenleriGetir->fetchAll(PDO::FETCH_ASSOC) as $satir) { $secilenleriKaydet->execute($satir); }REPLACE INTO yerine INSERT IGNORE veya doğrudan INSERT de kullabilirsiniz. - 27-10-2022, 19:49:25Hocam çok teşekkür ederim kendime göre düzenliyorumghergedan adlı üyeden alıntı: mesajı görüntüle