merhaba arkadaşlar. herkese kolay gelsin.
yazdığım bir programı ve veritabanını kullanacak olan makineye taşıdığımda. ilk çalıştırmamda
Sağlayıcı bulunanmadı veya düzgün yüklenmemiş olabilir diye bir hata alıyorum
kendim yazdığım makine haricinde b,r makineye kurduğum sql le veritabanını atıp program exesinide kendi maknemden çalıştırdığımda sorun yaşamadım
ama programı asıl kullanacak olan makineye taşıdığımda bu sorun ile karşılaştım
konu ile ilgili yardım edecek arkadaşlara şimdiden teşekkür ederim.
ms sql 2012 kullanıyorum
exe sorunu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: exe sorunu
(1) İlk çalıştırmada hata veriyor ama sonrakilerde hata vermiyorsa connection TIMEOUT değerini biraz esnetin.
(2) Uzak makineden bağlanamama durumu için (Veritabanı fiziksel olarak kurulu olduğu yani SQLServer kurulu makine hangisi ise )
. (a) TEST için Güvenlik Duvarını geçici olarak kapatın.
. (b) SQLServer TCP erişiminin ENABLED olduğuna emin olun.
. (c) Uzak makineden ServerIP (virgül) PORT şeklinde ilgili IP - PORT ikilisinin doğru olduğuna emin olun.
. (d) Daha güzeli, uzak herhangi bir makineye (kendi dizüstünüz de olabilir) SQLServer Management Studio kurun ve onunla (sa) olarak bağlanmaya çalışın.
(2) Uzak makineden bağlanamama durumu için (Veritabanı fiziksel olarak kurulu olduğu yani SQLServer kurulu makine hangisi ise )
. (a) TEST için Güvenlik Duvarını geçici olarak kapatın.
. (b) SQLServer TCP erişiminin ENABLED olduğuna emin olun.
. (c) Uzak makineden ServerIP (virgül) PORT şeklinde ilgili IP - PORT ikilisinin doğru olduğuna emin olun.
. (d) Daha güzeli, uzak herhangi bir makineye (kendi dizüstünüz de olabilir) SQLServer Management Studio kurun ve onunla (sa) olarak bağlanmaya çalışın.
-
- Üye
- Mesajlar: 32
- Kayıt: 04 May 2014 02:23
Re: exe sorunu
veritabanıda exe de aynı makinede
connection string şu şekilde
procedure TAna_Form.RzBitBtn1Click(Sender: TObject);
var
a1,aa1,b1,c1,d1,e1,f1:String;
g1,h1,j1,k1,l1,m1,n1,o1:String;
a,aa,b,c,d,e,f:String;
g,h,j,k,l,m,n,o:String;
sifre1:integer;
ad:String;
begin
//Con_btkursyon.Connected:=False;
a1:='Provider=SQLNCLI.1;';
aa1:='Password=11111;';
b1:='Persist Security Info=True;';
c1:='User ID=sa;';
d1:='Initial Catalog='+RzDBEdit3.Text+';';
//d:='Initial Catalog=btkursyon;';
e1:='Data Source='+RzDBEdit1.Text+';';
//f1:='Use Procedure for Prepare=1;';
//g1:='Auto Translate=True;';
//h1:='Packet Size=4096;';
//j1:='Workstation ID='+RzDBEdit1.Text+';';
//k1:='Use Encryption for Data=False;';
//l1:='Tag with column collation when possible=False;';
//m1:='MARS Connection=False;';
//n1:='DataTypeCompatibility=0;';
//o1:='Trust Server Certificate=False;';
Con_btkursyon.ConnectionString:=a1+aa1+b1+c1+d1+e1;//+f1+g1+h1+j1+k1+l1+m1+n1+o1;
Con_btkursyon.Connected:=True;
{
Provider=SQLNCLI.1;
Password=11111;
Persist Security Info=True;
User ID=sa;
Initial Catalog=btkursyon;
Data Source=HPCOMP
}
SHOWMESSAGE('Yönetim Veritabanına Bağlandı');
//Con_btkurs.Connected:=False;
a:='Provider=SQLNCLI.1;';
aa:='Password=11111;';
b:='Persist Security Info=True;';
c:='User ID=sa;';
d:='Initial Catalog='+RzDBEdit2.Text+';';
//d:='Initial Catalog=btkurs;';
e:='Data Source='+RzDBEdit1.Text+';';
f:='Use Procedure for Prepare=1;';
g:='Auto Translate=True;';
h:='Packet Size=4096;';
j:='Workstation ID='+RzDBEdit1.Text+';';
k:='Use Encryption for Data=False;';
l:='Tag with column collation when possible=False;';
m:='MARS Connection=False;';
n:='DataTypeCompatibility=0;';
o:='Trust Server Certificate=False;';
Con_btkurs.ConnectionString:=a+aa+b+c+d+e+f+g+h+j+k+l+m+n+o;
Con_btkurs.Connected:=True;
SHOWMESSAGE('Veritabanına Bağlandı');
{
Provider=SQLNCLI.1;
Password=11111;
Persist Security Info=True;
User ID=sa;
Initial Catalog=btkurs;
Data Source=HPCOMP;
Use Procedure for Prepare=1;
Auto Translate=True;
Packet Size=4096;
Workstation ID=ATALAR;
Use Encryption for Data=False;
Tag with column collation when possible=False;
MARS Connection=False;
DataTypeCompatibility=0;
Trust Server Certificate=False
}
küme parantezleri içinde yer alan bilgiler orjinal stringler
zaten bu 2012 yi birtürlü anlayamıyorum kendi makinemdeki db yi diğer makineye atach ederkende restore ederkende katalar veriyo. ama sıfırdan db açabiliyorum ???
bu arada karşıdaki makine w8 bende ise v7 var bununla alakalı olabilirmi karşıdaki makine 64 bit işletim sistemi vende ise 32bit bu yüzden karşıdakinede 32 bit sql kurdum
connection string şu şekilde
procedure TAna_Form.RzBitBtn1Click(Sender: TObject);
var
a1,aa1,b1,c1,d1,e1,f1:String;
g1,h1,j1,k1,l1,m1,n1,o1:String;
a,aa,b,c,d,e,f:String;
g,h,j,k,l,m,n,o:String;
sifre1:integer;
ad:String;
begin
//Con_btkursyon.Connected:=False;
a1:='Provider=SQLNCLI.1;';
aa1:='Password=11111;';
b1:='Persist Security Info=True;';
c1:='User ID=sa;';
d1:='Initial Catalog='+RzDBEdit3.Text+';';
//d:='Initial Catalog=btkursyon;';
e1:='Data Source='+RzDBEdit1.Text+';';
//f1:='Use Procedure for Prepare=1;';
//g1:='Auto Translate=True;';
//h1:='Packet Size=4096;';
//j1:='Workstation ID='+RzDBEdit1.Text+';';
//k1:='Use Encryption for Data=False;';
//l1:='Tag with column collation when possible=False;';
//m1:='MARS Connection=False;';
//n1:='DataTypeCompatibility=0;';
//o1:='Trust Server Certificate=False;';
Con_btkursyon.ConnectionString:=a1+aa1+b1+c1+d1+e1;//+f1+g1+h1+j1+k1+l1+m1+n1+o1;
Con_btkursyon.Connected:=True;
{
Provider=SQLNCLI.1;
Password=11111;
Persist Security Info=True;
User ID=sa;
Initial Catalog=btkursyon;
Data Source=HPCOMP
}
SHOWMESSAGE('Yönetim Veritabanına Bağlandı');
//Con_btkurs.Connected:=False;
a:='Provider=SQLNCLI.1;';
aa:='Password=11111;';
b:='Persist Security Info=True;';
c:='User ID=sa;';
d:='Initial Catalog='+RzDBEdit2.Text+';';
//d:='Initial Catalog=btkurs;';
e:='Data Source='+RzDBEdit1.Text+';';
f:='Use Procedure for Prepare=1;';
g:='Auto Translate=True;';
h:='Packet Size=4096;';
j:='Workstation ID='+RzDBEdit1.Text+';';
k:='Use Encryption for Data=False;';
l:='Tag with column collation when possible=False;';
m:='MARS Connection=False;';
n:='DataTypeCompatibility=0;';
o:='Trust Server Certificate=False;';
Con_btkurs.ConnectionString:=a+aa+b+c+d+e+f+g+h+j+k+l+m+n+o;
Con_btkurs.Connected:=True;
SHOWMESSAGE('Veritabanına Bağlandı');
{
Provider=SQLNCLI.1;
Password=11111;
Persist Security Info=True;
User ID=sa;
Initial Catalog=btkurs;
Data Source=HPCOMP;
Use Procedure for Prepare=1;
Auto Translate=True;
Packet Size=4096;
Workstation ID=ATALAR;
Use Encryption for Data=False;
Tag with column collation when possible=False;
MARS Connection=False;
DataTypeCompatibility=0;
Trust Server Certificate=False
}
küme parantezleri içinde yer alan bilgiler orjinal stringler
zaten bu 2012 yi birtürlü anlayamıyorum kendi makinemdeki db yi diğer makineye atach ederkende restore ederkende katalar veriyo. ama sıfırdan db açabiliyorum ???
bu arada karşıdaki makine w8 bende ise v7 var bununla alakalı olabilirmi karşıdaki makine 64 bit işletim sistemi vende ise 32bit bu yüzden karşıdakinede 32 bit sql kurdum
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: exe sorunu
"Hatalar veriyor" ifadesi çok yüzeysel. Nerede ne yapınca ne hata geliyor tam metni bildirirseniz daha anlaşılabilir olabilir.
İp ucu..: Hata mesajı penceresinde Ctrl+C yaparsanız penceredeki metni hafızaya almış olursunuz?
İp ucu..: Hata mesajı penceresinde Ctrl+C yaparsanız penceredeki metni hafızaya almış olursunuz?
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: exe sorunu
iyi günler.
ana makina server 2012 anladığım kadarıyla
alakası yok demeyin bir deneyin.
ana makinada database ve varsa programınızın olduğu dizinin özelliklerinde güvenlik sekmesinde düzenle bölümüne ekle
diyerek tüm sql kullanıcılarını ekleyin sql admin, sqlbackup ve tüm sql kullanıcıları
bir ilerleme olursa paylaşın lütfen
ana makina server 2012 anladığım kadarıyla
alakası yok demeyin bir deneyin.
ana makinada database ve varsa programınızın olduğu dizinin özelliklerinde güvenlik sekmesinde düzenle bölümüne ekle
diyerek tüm sql kullanıcılarını ekleyin sql admin, sqlbackup ve tüm sql kullanıcıları
bir ilerleme olursa paylaşın lütfen
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
-
- Üye
- Mesajlar: 32
- Kayıt: 04 May 2014 02:23
Re: exe sorunu
ARKADAŞLAR
connection string te bulunan Provider=SQLNCLI.1 satırını
Provider=SQLOLEDB.1 oalrak değiştirdim. internette birazdaha ayrıntılı araştırınca bu şekilde olabileceğini buldum.
ve sorun çözüldü ama bu değişiklik tam olarak ne yaptıda düzeldi
bilmiyorum. bilgisi olan arkadaşlar yazabilirmi.
connection string te bulunan Provider=SQLNCLI.1 satırını
Provider=SQLOLEDB.1 oalrak değiştirdim. internette birazdaha ayrıntılı araştırınca bu şekilde olabileceğini buldum.
ve sorun çözüldü ama bu değişiklik tam olarak ne yaptıda düzeldi

- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: exe sorunu
SQL Server veritabanı bağlantısı kurarken hangi kütüphaneyi kullanacağını belirtir, SQLOLEDB (Microsoft OLE DB for SQL Server) eski bir kütüphanedir ama bütün sistemlerde vardır ama SQLNCLI (SQL Server Native Client) ise yeni teknolojiler içeren bir kütüphanedir her sistemde yüklü olamayabiliyor, ayrıca internetten indirip (sqlncli=http://www.connectionstrings.com/downlo ... ve-client/) kurmak gerekebiliyor.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .