- - - Attach işlemi - - -
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- - - Attach işlemi - - -
Slm arkadaşlar SQL Server 2000 öğrenmeye çalışıyorum şimdi bu veritabanı ile bir program yaptım ve programı bitirdim bu programı başka sql yüklü olmayan makinada çalıştırmak için attach etmemiz gerekiyornuş ben yapamıyorum 15-20 gündür bunla uğraşıyorum bana bir yardımcı olurmusnuz bunla ilgili kaynak video döküman vs.. elinde olan varsa benimle paylaşırsa inanın çok sevinirim......
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: - - - Attach işlemi - - -
SQL Server veritabanı isimlerine karşılık disk üzerinde doyalar kullanırlar. Bunun en yaygın biçimi ise verilerin tutulduğu .mdf dosyası ile log tutulan .log dosyaları biçimindedir. Mesela master veri tabanı dosyaları C:\Program Files\Microsoft SQL Server\MSSQL\Data\master.mdf ve C:\Program Files\Microsoft SQL Server\MSSQL\Data\mastlog.ldf dosyalarıdır. Kendi veritabanı dosyalarında aynı şekilde dosyalara sahiptir, tek yapman gereken bu iki dosyayı (.mdf ve .ldf dosyalarını) diğer bilgisayara taşımak ve sp_attach_db sql komutu ile SQL'e gerekli veritabanını eklemek olacaktır.
Örnek..:
ECZANEDB isimli veritabanımız olsun ve dosyaları da eczane.mdf ve eczane_log.ldf olsun. Bu dosyaları diğer bilgisayarda d:\proje klasörüne kopyalamış varsayalım. İşte bu durumda aşağıdaki kodla gerekli işlemi sağlamış olacağız.gibi bir sql kodu çalıştırılırsa gerekli işlem gerçekleşecektir. Tabi bu kodu çalıştırırken SQL Server'da herhangi bir veritabanına bağlanmak yeterli olacaktır. Tabi master veritabanı SQL Server'da olan sistem veritabanı olduğundan bu veritabanına bağlanmış bir ADOConnection içinde bu kodu çalıştırmak yeterli olacaktır.kodları gerekli veritabanını ekleyecektir.
Uyarı..:SQL Server çalışırken veri (.ldf ve .ldf) dosyalarının kullanılmasına izin vermez. Bu dosyaların kopyasını alabilmek için SQL Server hizmetinin dururulmuş olması gerekmektedir.
Örnek..:
ECZANEDB isimli veritabanımız olsun ve dosyaları da eczane.mdf ve eczane_log.ldf olsun. Bu dosyaları diğer bilgisayarda d:\proje klasörüne kopyalamış varsayalım. İşte bu durumda aşağıdaki kodla gerekli işlemi sağlamış olacağız.
Kod: Tümünü seç
EXEC sp_attach_db 'ECZANEDB', 'd:\proje\ eczane.mdf','d:\proje\eczane_log.ldf'
Kod: Tümünü seç
ADOConnection1.Close;
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master';
ADOConnection1.Open;
ADOConnection1.Execute('EXEC sp_attach_db ''ECZANEDB'', ''d:\proje\ eczane.mdf'',''d:\proje\eczane_log.ldf''');
Uyarı..:SQL Server çalışırken veri (.ldf ve .ldf) dosyalarının kullanılmasına izin vermez. Bu dosyaların kopyasını alabilmek için SQL Server hizmetinin dururulmuş olması gerekmektedir.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .