Sql Server sunucu ismi?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Sql Server sunucu ismi?
Sevgili emektar delphi dostları
kendi pc mizde sql tabanlı bir uyguluma geliştirdiğimiz zaman bu normal olarak bizim pc de çalışacaktır
fakat bu uygulamayı başka bir pc ye taşıdığımız zaman çalışmayacaktır
sql sunucu ismini nasıl değiştirebiliriz.
kendi pc mizde sql tabanlı bir uyguluma geliştirdiğimiz zaman bu normal olarak bizim pc de çalışacaktır
fakat bu uygulamayı başka bir pc ye taşıdığımız zaman çalışmayacaktır
sql sunucu ismini nasıl değiştirebiliriz.
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Sql Server sunucu ismi?
Örnek olması açısından aşağıdaki örnekler ip ucu verecektir kanaatindeyim.
Böyle bir fonksiyonu kullanarak aşağıdaki şekilde bağlantı dizesi gerektiği şekilde oluşarak bağlantı kurulabilecektir.
1-ADOConnection1.ConnectionString:=SQLConnSt('master','192.168.1.17\SQLEXPRESS'); //NT Mode
192.168.1.17 bilgisayarında SQLExpress instancename ile yüklü SQL Server'daki master veritabanına bağlantı dizesi oluşturur.
2-ADOConnection2.ConnectionString:=SQLConnSt('master','.\SQL2008'); //NT Mode
Mevcut bulunulan makinede bulunan SQL2008 inctancename'i ile yüklü SQL Server'ın master veritabanına bağlantı kurulur ve aşağıdakiler de aynı şekilde mevcut makinede ki sql2008 instancename'ine bağlanacaktır.
ADOConnection2.ConnectionString:=SQLConnSt('master','\SQL2008'); //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','(local)\SQL2008'); //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','localhost\SQL2008'); //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','192.168.1.17\SQL2008'); (192.168.1.17 o makine IP Adresi ise) //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','AKMAN\SQL2008'); (o makine adı AKMAN ise) //NT Mode
bu atamaların hepsi (AKMAN isimli 192.168.1.17 IP adresli makinede) aynı anlama gelmektedir.
3-Kullanıcı adı ve şifre ile bağlanmak için de
ADOConnection3.ConnectionString:=SQLConnSt('master','.\SQL2008','sa','12345'); //SQL Mode
şeklinde atamalar yapılabilmektedir. Burada dikkat etmek gereken bir diğer husus ise eğer bir SQL Adı (instancename'i) yoksa \ karakteri ve sağında yazan isim olmadan bağlantı yapmak gerekmektedir.
4-ADOConnection4.ConnectionString:=SQLConnSt('master','.'); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master',''); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','(local)'); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','localhost'); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','192.168.1.17'); (192.168.1.17 o makine IP Adresi ise) //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','AKMAN'); (o makine adı AKMAN ise) //NT Mode
5-Başka makineye bağlantı için ise o makine adını veya ip adresini (\instancename ile birlikte) yazmak gerekmektedir.
ADOConnection5.ConnectionString:=SQLConnSt('master','192.168.1.17','sa','12345'); //SQL Mode
ADOConnection5.ConnectionString:=SQLConnSt('master','AKMAN'); //NT Mode
Daha fazla bilgi için ..: http://www.connectionstrings.com/sql-server/
Kod: Tümünü seç
function SQLConnSt(const DBName, DataSource:String;const DBUser:String='';const DBUsrPwd: String=''): String;
const
NTMode='Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=%s;Data Source=%s';
SQLMode='Provider=SQLOLEDB.1;Password=%s;Persist Security Info=True;User ID=%s;Initial Catalog=%s;Data Source=%s';
begin
if (DBUser<>'') then Result:=Format(SQLMode, [DBUsrPwd, DBUser, DBName, DataSource])
else Result:=Format(NTMode,[DBName, DataSource]);
end;
1-ADOConnection1.ConnectionString:=SQLConnSt('master','192.168.1.17\SQLEXPRESS'); //NT Mode
192.168.1.17 bilgisayarında SQLExpress instancename ile yüklü SQL Server'daki master veritabanına bağlantı dizesi oluşturur.
2-ADOConnection2.ConnectionString:=SQLConnSt('master','.\SQL2008'); //NT Mode
Mevcut bulunulan makinede bulunan SQL2008 inctancename'i ile yüklü SQL Server'ın master veritabanına bağlantı kurulur ve aşağıdakiler de aynı şekilde mevcut makinede ki sql2008 instancename'ine bağlanacaktır.
ADOConnection2.ConnectionString:=SQLConnSt('master','\SQL2008'); //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','(local)\SQL2008'); //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','localhost\SQL2008'); //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','192.168.1.17\SQL2008'); (192.168.1.17 o makine IP Adresi ise) //NT Mode
ADOConnection2.ConnectionString:=SQLConnSt('master','AKMAN\SQL2008'); (o makine adı AKMAN ise) //NT Mode
bu atamaların hepsi (AKMAN isimli 192.168.1.17 IP adresli makinede) aynı anlama gelmektedir.
3-Kullanıcı adı ve şifre ile bağlanmak için de
ADOConnection3.ConnectionString:=SQLConnSt('master','.\SQL2008','sa','12345'); //SQL Mode
şeklinde atamalar yapılabilmektedir. Burada dikkat etmek gereken bir diğer husus ise eğer bir SQL Adı (instancename'i) yoksa \ karakteri ve sağında yazan isim olmadan bağlantı yapmak gerekmektedir.
4-ADOConnection4.ConnectionString:=SQLConnSt('master','.'); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master',''); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','(local)'); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','localhost'); //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','192.168.1.17'); (192.168.1.17 o makine IP Adresi ise) //NT Mode
ADOConnection4.ConnectionString:=SQLConnSt('master','AKMAN'); (o makine adı AKMAN ise) //NT Mode
5-Başka makineye bağlantı için ise o makine adını veya ip adresini (\instancename ile birlikte) yazmak gerekmektedir.
ADOConnection5.ConnectionString:=SQLConnSt('master','192.168.1.17','sa','12345'); //SQL Mode
ADOConnection5.ConnectionString:=SQLConnSt('master','AKMAN'); //NT Mode
Daha fazla bilgi için ..: http://www.connectionstrings.com/sql-server/
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: Sql Server sunucu ismi?
öncelikle verdiğiniz bilgiden dolayı çok teşekkür ederim
ama söyle bir yol buldum kısa ve basit
şimdi uygulamayı taşığımız pc nin adı x diyelim
bizim ise uygulamayı geliştirdiğimiz pc de y
x olan makinenin pc adını y olarak değiştiriyoruz ve reset atıyoruz
sql den y\sqlexpress olarak başlanıyoruz ve veritabanını oluşturuyoruz uygulama çalışıyor
şimdi şu sorun ortaya çıkabilir uygulamayı taşıdığımız x makinesine ağdan bağlı bir uygulama varsa doğal olarak çalışmayacak çünkü adını değiştirdik
işte y yaptığımız makineyi tekrar x yapıp reset attığımıza herşey eski haline geliyor ve uygulama sorunsuz çalışıyor.
denenmiş bir uygulamadır
ama söyle bir yol buldum kısa ve basit
şimdi uygulamayı taşığımız pc nin adı x diyelim
bizim ise uygulamayı geliştirdiğimiz pc de y
x olan makinenin pc adını y olarak değiştiriyoruz ve reset atıyoruz
sql den y\sqlexpress olarak başlanıyoruz ve veritabanını oluşturuyoruz uygulama çalışıyor
şimdi şu sorun ortaya çıkabilir uygulamayı taşıdığımız x makinesine ağdan bağlı bir uygulama varsa doğal olarak çalışmayacak çünkü adını değiştirdik
işte y yaptığımız makineyi tekrar x yapıp reset attığımıza herşey eski haline geliyor ve uygulama sorunsuz çalışıyor.
denenmiş bir uygulamadır
Re: Sql Server sunucu ismi?
Bilgisayar adı yerine "localhost" yada ip olarak "127.0.0.1" kullan. Bazı programlar lisans kontrolü olarak bilgisayar adını da kontrol eder. (Örn. Netsis) Ayrıca Bilgisayar adını değiştirmen ağdaki diğer ayarları da etkileyebilir.
Bildiğim tek şey, hiç bir şey bilmediğim.
Re: Sql Server sunucu ismi?
pc adını değiştiriyoruz ama sonra yine düzeltiyoruz . kaldı ki biz kendi yaptığımız uygulamadan söz ediyoruz ama sizin yöntem de denemeye değer uğgulayacağım
teş.
teş.
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Sql Server sunucu ismi?
2 numara ile belirtilen örneklerden en zor olan yöntemi kullanmışsınız 

Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: Sql Server sunucu ismi?
sql in içindeki bir script dosyası ile de bu işi yapmak mümkünmüş.
select * from sys.servers
sp_addserver yeni sunucu'
sp_dropserver 'eski sunucu'
select * from sys.servers
sp_addserver yeni sunucu'
sp_dropserver 'eski sunucu'
Re: Sql Server sunucu ismi?
@sabanakman
Hocam sizin yazdığınızı görmeden cevap vermişim, kusura bakmayın
Hocam sizin yazdığınızı görmeden cevap vermişim, kusura bakmayın

Bildiğim tek şey, hiç bir şey bilmediğim.