Sql - Tüm Tabloyu veya Tablodaki Kayıtları Kopyalama


Twitter'da Paylaş Favorilerime Ekle

Bir Tablodaki Kayıtları Yeni Bir Tabloya Kopyalama

SELECT INTO deyimi kullanılarak bir tablodaki istenen kayıtlar, yeni oluşturulan bir tabloya kopyalanabilir.

SELECT kopyalanacakAlanlar

INTO yeniTabloAdi IN veritabaniAdi

FROM kaynakTabloAdi;

Yeni tablo aynı veritabanına oluşturulacak ise In kısmı kullanılmayabilir.

SELECT *
INTO musterilerYedek
FROM musteriler;
 
SELECT *
INTO matematikYedek IN 'verilerYedek.mdb'
FROM matematik;
 
SELECT adi, soyadi, adres
INTO adresler
FROM personel;
 
SELECT adi, soyadi, telefon
INTO iletisim
FROM personel
WHERE unvani = 'Memur';
 
SELECT matematik.sinav1, ogrenciler.adi
INTO yeniTablo
FROM matematik
LEFT JOIN ogrenciler
ON matematik.numarasi = ogrenciler.numarasi;
Kopyalama yapmadan sadece aynı yapıda boş bir tablo da oluşturabiliriz.
SELECT *
INTO yeniTablo
FROM varOlanTablo
WHERE 1=0;

Bu örnekte şart 1=0 tutmayacağı için hiçbir kayıt kopyalanmayacak, ancak tablo oluşturulacaktır.

Kayıtları Var Olan Bir Tabloya Kopyalama

Bir tablodaki istenen kayıtları başka bir tabloya eklemek için insert ve select sorguları birlikte kullanılabilir. Bu durumda insert sorgusuna ait values deyimi kullanılmaz.

Örnek:

INSERT INTO urunlerYedek
SELECT * FROM urunler WHERE kategori=1

Sürekli çalıştığımız bir tablonun şismesini istemediğimiz ama verileri silmek de istemediğimiz durumlarda bu yöntem işimize yarayabilir. Kayıtları başka bir tabloya kopyaladıktan sonra ilk tablodan silebiliriz.

sql tabloyu kopyalama, bir tablodaki kayıtları yeni bir tabloya koypalama, kayıtları var olan bir tabloya kopyalama