Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Yazdığım Projeyi Diğer Bilgisayarlarda Çalıştırmak
#11
PHP Kod:
using System.Data.SqlClient

PHP Kod:
private void button1_Click(object senderEventArgs e)
 
       {
 
           SqlConnection con = new SqlConnection("Server="+tbSunucu.Text+";User Id="+tbKullaniciAdi.Text+";Password ="+tbParola";Trusted_Connection=True;");
 
           con.Open();
 
           if(con.State == ConnectionState.Open)
 
           {
 
               MessageBox.Show("Bağlantı başarılı.","BİLGİ",MessageBoxButtons.OK,MessageBoxIcon.Information);

 
               SqlCommand cmd = new SqlCommand("SELECT name  FROM sys.databases;"con);
 
               SqlDataReader reader cmd.ExecuteReader();
 
               if(reader.HasRows)
 
               {
 
                   while(reader.Read())
 
                   {
 
                       cbDB.Items.Add(reader["name"].ToString());
 
                   }
 
               }
 
               reader.Close();
 
               if(cbDB.Items.Count 0)
 
               {
 
                   cbDB.SelectedIndex 0;
 
               }
 
           }
 
           else
            
{
 
               MessageBox.Show("SQL Server Bağlantısı kurulamadı!""DİKKAT!"MessageBoxButtons.OKMessageBoxIcon.Warning);
 
           }
 
           con.Close();
 
       

Proje halinde : http://www.dosya.tc/server13/f8w1fl/SqlS...n.zip.html
Cevapla
#12
(29-04-2018, 14:14)Administrator Adlı Kullanıcıdan Alıntı:
PHP Kod:
using System.Data.SqlClient

PHP Kod:
private void button1_Click(object senderEventArgs e)
 
       {
 
           SqlConnection con = new SqlConnection("Server="+tbSunucu.Text+";User Id="+tbKullaniciAdi.Text+";Password ="+tbParola";Trusted_Connection=True;");
 
           con.Open();
 
           if(con.State == ConnectionState.Open)
 
           {
 
               MessageBox.Show("Bağlantı başarılı.","BİLGİ",MessageBoxButtons.OK,MessageBoxIcon.Information);

 
               SqlCommand cmd = new SqlCommand("SELECT name  FROM sys.databases;"con);
 
               SqlDataReader reader cmd.ExecuteReader();
 
               if(reader.HasRows)
 
               {
 
                   while(reader.Read())
 
                   {
 
                       cbDB.Items.Add(reader["name"].ToString());
 
                   }
 
               }
 
               reader.Close();
 
               if(cbDB.Items.Count 0)
 
               {
 
                   cbDB.SelectedIndex 0;
 
               }
 
           }
 
           else
            
{
 
               MessageBox.Show("SQL Server Bağlantısı kurulamadı!""DİKKAT!"MessageBoxButtons.OKMessageBoxIcon.Warning);
 
           }
 
           con.Close();
 
       

Proje halinde : http://www.dosya.tc/server13/f8w1fl/SqlS...n.zip.html


Hocam çok teşekkür ederim.Yanlız şöyle bir problem var.Ben genel diye bi classta veritabanı bağlantısını
public string conString = ("Server=DESKTOP-ADAM4;Database=adam4;Trusted_Connection=True"); 

bu şekilde yaptığım için projedeki butun klaslardada bu stringi kullandım tabi.Burdan oluşan bağlantısıyı tekrar genel classına nasıl atarım.Heryeden ulaşabileceğim şekilde.


Düzenleme : Hocam kusura bakmayın soruya bak işte dalgınlıgama gelmiş çok teşekkürler tekrardan


Hocam bu arada bişey farkettim.Login ve password hiç bir işe yarmaıyor yani boş bırakıncada geliyor databaseler.
Nasıl kontrol ettitiriz login ve şifreyi.Aslında biz bunları sqle yollamıyormuyuz gelmemesi gerekmez mi?
Bul
Cevapla
#13
Evet deneyince ben de farkettim.
Sanırım kullanmış olduğumuz bağlantı ifadesi (connection string) ile sql server kimlik doğrulaması yerine windows kimlik doğrulama yöntemini kullanıyor ve kullanıcı adı ve parola bilgisini es geçiyor.

PHP Kod:
SqlConnection con = new SqlConnection("Data Source="+tbSunucu.Text+";User ID="+tbKullaniciAdi.Text+";Password="+tbParola.Text);
 
            

Bağlantı kısmını şu şekilde güncelleyin, sanırım sorun çözülecektir.
Cevapla
#14
(29-04-2018, 19:17)Administrator Adlı Kullanıcıdan Alıntı: Evet deneyince ben de farkettim.
Sanırım kullanmış olduğumuz bağlantı ifadesi (connection string) ile sql server kimlik doğrulaması yerine windows kimlik doğrulama yöntemini kullanıyor ve kullanıcı adı ve parola bilgisini es geçiyor.

PHP Kod:
SqlConnection con = new SqlConnection("Data Source="+tbSunucu.Text+";User ID="+tbKullaniciAdi.Text+";Password="+tbParola.Text);
 
            

Bağlantı kısmını şu şekilde güncelleyin, sanırım sorun çözülecektir.

Aynen hocam o yüzdenmiş.

(29-04-2018, 20:05)fruion Adlı Kullanıcıdan Alıntı:
(29-04-2018, 19:17)Administrator Adlı Kullanıcıdan Alıntı: Evet deneyince ben de farkettim.
Sanırım kullanmış olduğumuz bağlantı ifadesi (connection string) ile sql server kimlik doğrulaması yerine windows kimlik doğrulama yöntemini kullanıyor ve kullanıcı adı ve parola bilgisini es geçiyor.

PHP Kod:
SqlConnection con = new SqlConnection("Data Source="+tbSunucu.Text+";User ID="+tbKullaniciAdi.Text+";Password="+tbParola.Text);
 
            

Bağlantı kısmını şu şekilde güncelleyin, sanırım sorun çözülecektir.

Aynen hocam o yüzdenmiş.


Abi seni yine rahatsız edicem ama bi çözemedim ya.Şimdi bende şöyle bir şey vardı.
Cgenel diye bi classım vardı.İçinde 
 private string conString = ("Server=DESKTOP-ADAM4;Database=adam4;Trusted_Connection=True");

Bu vardı.Şimdi ben bu classın içine geldim.
Alıntı: private string conString;
        public string ConString { get => conString; set => conString = value; }
        #endregion

        public void Baglanti(ComboBox cbDB , TextBox tbSunucu ,  TextBox tbKullaniciAdi , TextBox tbParola)
        {
            ConString = "Data Source=" + tbSunucu.Text + ";User ID=" + tbKullaniciAdi.Text + ";Password=" + tbParola.Text + "; Database=" + cbDB.SelectedItem;
            SqlConnection con = new SqlConnection(ConString);
            try
            {
                con.Open();
                if (con.State == ConnectionState.Open)
                {
                    MessageBox.Show("Bağlantı başarılı.", "BİLGİ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    SqlCommand cmd = new SqlCommand("SELECT name  FROM sys.databases;", con);
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (reader.HasRows)
                    {
                        while (reader.Read())
                        {
                            cbDB.Items.Add(reader["name"].ToString());
                        }
                    }
                    reader.Close();
                    if (cbDB.Items.Count > 0)
                    {
                        cbDB.SelectedIndex = 0;
                    }
                }
                else
                {
                    MessageBox.Show("SQL Server Bağlantısı kurulamadı!", "DİKKAT!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                con.Close();

            }
            catch (SqlException ex)
            {
                string hata = ex.Message;
                MessageBox.Show("SQL Server Bağlantısı kurulamadı!Şifre veya Kullanıcı Adında hata var!!", "DİKKAT!", MessageBoxButtons.OK, MessageBoxIcon.Warning);

            }
        }


Bunları yazdım.Form oluştrudm işte ordan değerledi salladım buraya.Şimdi değerler buraya geliyor herşey yukarıya geliyor herşey tamam.Bu işlem sonrada frmGiris formunu açacak uygulama.frmGiris'de personelleri falan çekiyor veritabanından.
Ama hatayı çakıyor breokpoint koydum conString'in içi boş.Yani değer geliyor ama değer içinde tutulmuyor.Nerde hata yapıyorum.Yardım bekliyorum.Ben oldu sanmıştım girişi falan denemeden.Yardım bekliyorum.Bu arada tekrar teşekkürler.
Bul
Cevapla
#15
"cbDB.SelectedItem" şeklinde kullanım hatalı. cbDB.Text şeklinde kullanabilirsin. (Seçilen item'ın değerini döndürür)
Ayrıca "Baglanti" isimli metodu çağırdığında cbDB içeriği boş oluyor o yüzden conString değil cbDB içinden veritabanı adı alınmıyor.
Yani daha veritabanı isimleri cbDB içine eklenmeden kullanılmaya çalışmış oluyor.
"Baglanti" metodunu çağırmadan önce veritabanı adlarını cbDB içine eklemiş olman gerekiyor.
Cevapla
#16
(29-04-2018, 22:11)Administrator Adlı Kullanıcıdan Alıntı: "cbDB.SelectedItem" şeklinde kullanım hatalı. cbDB.Text şeklinde kullanabilirsin. (Seçilen item'ın değerini döndürür)
Ayrıca "Baglanti" isimli metodu çağırdığında cbDB içeriği boş oluyor o yüzden conString değil cbDB içinden veritabanı adı alınmıyor.
Yani daha veritabanı isimleri cbDB içine eklenmeden kullanılmaya çalışmış oluyor.
"Baglanti" metodunu çağırmadan önce veritabanı adlarını cbDB içine eklemiş olman gerekiyor.

Hocam olay comboboxla alakalı değil.Onun yerine veritabanı adımı yazsamda olmuyor.Yani olay şu ben veritabanı bağlantısı yaptığım formda conString'e değeri yolluyorum herşey tamam.Değer geliyor.Diğer forma geçtiğimde conString null dönüyor.
Yani değeri içinde tutmuyor.
Bul
Cevapla
#17
(30-04-2018, 10:50)fruion Adlı Kullanıcıdan Alıntı:
(29-04-2018, 22:11)Administrator Adlı Kullanıcıdan Alıntı: "cbDB.SelectedItem" şeklinde kullanım hatalı. cbDB.Text şeklinde kullanabilirsin. (Seçilen item'ın değerini döndürür)
Ayrıca "Baglanti" isimli metodu çağırdığında cbDB içeriği boş oluyor o yüzden conString değil cbDB içinden veritabanı adı alınmıyor.
Yani daha veritabanı isimleri cbDB içine eklenmeden kullanılmaya çalışmış oluyor.
"Baglanti" metodunu çağırmadan önce veritabanı adlarını cbDB içine eklemiş olman gerekiyor.

Hocam olay comboboxla alakalı değil.Onun yerine veritabanı adımı yazsamda olmuyor.Yani olay şu ben veritabanı bağlantısı yaptığım formda conString'e değeri yolluyorum herşey tamam.Değer geliyor.Diğer forma geçtiğimde conString null dönüyor.
Yani değeri içinde tutmuyor.

O zaman formlar arası veri taşıma kısmında bir hata yapıyorsundur. Bu kısımlara ilişkin kodları incelemeden çözüm üretmek maalesef mümkün değil.
Cevapla
#18
(30-04-2018, 13:59)Administrator Adlı Kullanıcıdan Alıntı:
(30-04-2018, 10:50)fruion Adlı Kullanıcıdan Alıntı:
(29-04-2018, 22:11)Administrator Adlı Kullanıcıdan Alıntı: "cbDB.SelectedItem" şeklinde kullanım hatalı. cbDB.Text şeklinde kullanabilirsin. (Seçilen item'ın değerini döndürür)
Ayrıca "Baglanti" isimli metodu çağırdığında cbDB içeriği boş oluyor o yüzden conString değil cbDB içinden veritabanı adı alınmıyor.
Yani daha veritabanı isimleri cbDB içine eklenmeden kullanılmaya çalışmış oluyor.
"Baglanti" metodunu çağırmadan önce veritabanı adlarını cbDB içine eklemiş olman gerekiyor.

Hocam olay comboboxla alakalı değil.Onun yerine veritabanı adımı yazsamda olmuyor.Yani olay şu ben veritabanı bağlantısı yaptığım formda conString'e değeri yolluyorum herşey tamam.Değer geliyor.Diğer forma geçtiğimde conString null dönüyor.
Yani değeri içinde tutmuyor.

O zaman formlar arası veri taşıma kısmında bir hata yapıyorsundur. Bu kısımlara ilişkin kodları incelemeden çözüm üretmek maalesef mümkün değil.


Hocam bu kodları sana nasıl gösterebilir.Ö.M attım ama meşgulsünüz heralde.
Teamviewer ile kontrol daha doğru olur diye düşündüm.
Bul
Cevapla
#19
(02-05-2018, 11:04)fruion Adlı Kullanıcıdan Alıntı:
(30-04-2018, 13:59)Administrator Adlı Kullanıcıdan Alıntı:
(30-04-2018, 10:50)fruion Adlı Kullanıcıdan Alıntı:
(29-04-2018, 22:11)Administrator Adlı Kullanıcıdan Alıntı: "cbDB.SelectedItem" şeklinde kullanım hatalı. cbDB.Text şeklinde kullanabilirsin. (Seçilen item'ın değerini döndürür)
Ayrıca "Baglanti" isimli metodu çağırdığında cbDB içeriği boş oluyor o yüzden conString değil cbDB içinden veritabanı adı alınmıyor.
Yani daha veritabanı isimleri cbDB içine eklenmeden kullanılmaya çalışmış oluyor.
"Baglanti" metodunu çağırmadan önce veritabanı adlarını cbDB içine eklemiş olman gerekiyor.

Hocam olay comboboxla alakalı değil.Onun yerine veritabanı adımı yazsamda olmuyor.Yani olay şu ben veritabanı bağlantısı yaptığım formda conString'e değeri yolluyorum herşey tamam.Değer geliyor.Diğer forma geçtiğimde conString null dönüyor.
Yani değeri içinde tutmuyor.

O zaman formlar arası veri taşıma kısmında bir hata yapıyorsundur. Bu kısımlara ilişkin kodları incelemeden çözüm üretmek maalesef mümkün değil.


Hocam bu kodları sana nasıl gösterebilir.Ö.M attım ama meşgulsünüz heralde.
Teamviewer ile kontrol daha doğru olur diye düşündüm.

Merhafa @fruion, yoğunluktan dolayı fırsat bulamıyorum pek. Eğer bir sakıncası yoksa projenizi info@turkishcode.com adresine mail atın. İnceleyip geri dönüş yapmaya çalışırım.
Cevapla
#20
(02-05-2018, 13:10)Administrator Adlı Kullanıcıdan Alıntı:
(02-05-2018, 11:04)fruion Adlı Kullanıcıdan Alıntı:
(30-04-2018, 13:59)Administrator Adlı Kullanıcıdan Alıntı:
(30-04-2018, 10:50)fruion Adlı Kullanıcıdan Alıntı:
(29-04-2018, 22:11)Administrator Adlı Kullanıcıdan Alıntı: "cbDB.SelectedItem" şeklinde kullanım hatalı. cbDB.Text şeklinde kullanabilirsin. (Seçilen item'ın değerini döndürür)
Ayrıca "Baglanti" isimli metodu çağırdığında cbDB içeriği boş oluyor o yüzden conString değil cbDB içinden veritabanı adı alınmıyor.
Yani daha veritabanı isimleri cbDB içine eklenmeden kullanılmaya çalışmış oluyor.
"Baglanti" metodunu çağırmadan önce veritabanı adlarını cbDB içine eklemiş olman gerekiyor.

Hocam olay comboboxla alakalı değil.Onun yerine veritabanı adımı yazsamda olmuyor.Yani olay şu ben veritabanı bağlantısı yaptığım formda conString'e değeri yolluyorum herşey tamam.Değer geliyor.Diğer forma geçtiğimde conString null dönüyor.
Yani değeri içinde tutmuyor.

O zaman formlar arası veri taşıma kısmında bir hata yapıyorsundur. Bu kısımlara ilişkin kodları incelemeden çözüm üretmek maalesef mümkün değil.


Hocam bu kodları sana nasıl gösterebilir.Ö.M attım ama meşgulsünüz heralde.
Teamviewer ile kontrol daha doğru olur diye düşündüm.

Merhafa @fruion, yoğunluktan dolayı fırsat bulamıyorum pek. Eğer bir sakıncası yoksa projenizi info@turkishcode.com adresine mail atın. İnceleyip geri dönüş yapmaya çalışırım.

Mail attım hocam
Bul
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  C# TaskBar'da Uygulamaya Tıklayarak Projeyi Küçültme/Büyültme root 1 11,569 09-10-2019, 22:40
Son Yorum: rodan

Hızlı Menü:


Konuyu Okuyanlar: 4 Ziyaretçi