Merhaba Arkadaşlar,
SELECT *
INTO Yedek_Tablo
FROM Yedeklenecek_Tablo
yukarıdaki kod kadar kolaydır yedeklemek.
Bu kodu SQL veritabanına bağlandıktan sonra New Query dedikten sonra resimdeki master yazan yerden ilgili tablo olması gerekiyor. Bu şekilde yazarsanız hata verecektir. Bu şekilde yazmak isterseniz ayrıyetten komutlarınıza veritabanı ismini de eklemeniz gerekecektir.

SELECT * INTO Yedek_Tablo FROM Yedeklenecek_Tablo sorgusu, Yedeklenecek_Tablo tablosundaki tüm verileri Yedek_Tablo adında yeni bir tabloya kopyalar. Bu sorgu çalıştırıldığında, aktif olan tablonun bu işlemle bir ilgisi yoktur; yani hangi tablo aktif olursa olsun, sorgu belirtilen tablodan verileri kopyalayıp yeni tabloyu oluşturacaktır.
Eğer Yedek_Tablo zaten varsa ve içinde veri yoksa, SQL hata verecektir çünkü SELECT INTO sorgusu her zaman için yeni bir tablo oluşturur. Eğer mevcut tabloya veri eklemek istiyorsanız, INSERT INTO komutunu kullanmalısınız.
Ayrıca, SELECT INTO sorgusu ile yeni oluşturulacak olan tabloya, mevcut tablodaki alanlar veri tipleri ve içindeki verilerle birlikte aynen kopyalanır.
Eğer alan adını mevcut isminden farklı bir isimle oluşturmak isterseniz AS yapısı kullanabilirsiniz.
İşte birkaç örnek:
SELECT *
INTO Yedek_Tablo
FROM Yedeklenecek_Tablo
yukarıdaki kod kadar kolaydır yedeklemek.
Bu kodu SQL veritabanına bağlandıktan sonra New Query dedikten sonra resimdeki master yazan yerden ilgili tablo olması gerekiyor. Bu şekilde yazarsanız hata verecektir. Bu şekilde yazmak isterseniz ayrıyetten komutlarınıza veritabanı ismini de eklemeniz gerekecektir.

SELECT * INTO Yedek_Tablo FROM Yedeklenecek_Tablo sorgusu, Yedeklenecek_Tablo tablosundaki tüm verileri Yedek_Tablo adında yeni bir tabloya kopyalar. Bu sorgu çalıştırıldığında, aktif olan tablonun bu işlemle bir ilgisi yoktur; yani hangi tablo aktif olursa olsun, sorgu belirtilen tablodan verileri kopyalayıp yeni tabloyu oluşturacaktır.
Eğer Yedek_Tablo zaten varsa ve içinde veri yoksa, SQL hata verecektir çünkü SELECT INTO sorgusu her zaman için yeni bir tablo oluşturur. Eğer mevcut tabloya veri eklemek istiyorsanız, INSERT INTO komutunu kullanmalısınız.
Ayrıca, SELECT INTO sorgusu ile yeni oluşturulacak olan tabloya, mevcut tablodaki alanlar veri tipleri ve içindeki verilerle birlikte aynen kopyalanır.
Eğer alan adını mevcut isminden farklı bir isimle oluşturmak isterseniz AS yapısı kullanabilirsiniz.
İşte birkaç örnek:
- Sadece bazı sütunları yeni tabloya taşımak istediğinizde:
SQL
SELECT sütun1, sütun2, sütun3 INTO YeniTablo FROM EskiTablo WHERE koşul;
- Eğer tablo içindeki verileri hariç tutup, sadece alan adları ve veri tiplerini almak isterseniz:
SQL
SELECT * INTO YeniTablo FROM EskiTablo WHERE 1=0;
- Farklı bir veritabanına tablo kopyalamak isterseniz:
SQL
SELECT * INTO YeniTablo IN 'c:\\yedek.mdb' FROM EskiTablo;
Bu komutların çalışabilmesi için, veritabanı üzerinde işlem yapan kullanıcının yeni bir tablo oluşturma yetkisine sahip olması gerekmektedir.