Anasayfa » Csharp

Csharp ile Uzak MySql Database Bağlantısı

16 Haziran 2011 6.953 kez okundu 3 yorum
1 Star2 Stars3 Stars4 Stars5 Stars (1 oy,5 üzerinden : 5,00 )
Loading ... Loading ...

Daha önce kod bölümünde kodunu verdiğim ve daha sonra makale şeklinde açıklayacağım dediğim konuya bugün değiniyorum. Konumuz c# ile sitemizin database’ine bağlanıp, masaüstü programımıza veri çekmek, sitemize veri eklemek, sitemizin verilerini güncellemek. Bunun için öncelikle bağlantının nasıl gerçekleştirileceğini anlatacağım.

Kodumuza buradan ulaşabilirsiniz.

Genelde .Net frameworkü ile mssql kullanılırken, mysql i seçtiğimizde bağlantıyı nasıl yapabiliriz. Detayını vereceğim konu uzak sunucu olacak, yani bilgisayarımızda bulunan localhost değilde, sunucularda bulunan mysql sunucusu olacak.

Projemiz ile sunucu arasındaki bağlantıyı mysql connector ile gerçekleştireceğiz.

Connectoru buradan indirebilirsiniz. Genelde ilk sırada olan “ADO.NET Driver for MySQL (Connector/NET)” başlığın yanındaki indir linkine tıklayarak indirebilirsiniz. Açılan sayfadan platformu microsoft windows olarak seçtikten sonra “MSI Installer” seçeneğini download edin. Tekrar açılan sayfada giriş yapmanızı isteyecek fakat siz altta bulunan “No thanks, just take me to the downloads!” a tıklayın. Tekrar açılan sayfada indirebileceğiniz seçenekler gelecektir. İstediğinizi seçebilirsiniz ama ben “Istanbul Technical University, Turkey” “HTTP” olanı tavsiye ederim.

Şimdi kodumuzu yazmadan önce visual studio da son bir ayar kaldı. Visual studio yu açalım ve yeni bir c# projesi oluşturalım. Console veya form application olabilir ama ben form application da anlatacağım. Yeni proje oluşturduktan sonra sağ tarafta bulunan solution explorer altındaki reference bölümüne sağ tıklıyoruz. Eğer bulamadıysanız üstteki View menüsünden solution explorerı açabilirsiniz yada kısayol olan ctrl+w ve hemen arkasından ctrl+s yaparsanız da açılır. Devam edelim solution explorer altındaki reference bölümüne sağ tıklayıp add reference diyoruz. .NET’e tıklıyoruz ve seçenekler arasından “MySql.Data” yı buluyoruz ve Ok diyoruz.

Şimdi MySqlDataReader nesnesini kullanarak data çekeceğiz. Bunun için projemize MySQL Namespace lerini aşağıdaki 9.ve 10. satırlardaki gibi ekliyoruz.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;
 
namespace connector
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            //eğer bağlanamaz iseniz sitenizin mysql ayarlarından uzaktan erişime izin vermeniz gerekir
            MySqlConnection cnn = new MySqlConnection("Data Source=kodmerkezi.net;Database=kodmerkezi_net;User ID=kodmerkezi_net;Password=kodmerkezi_net;Port=3306");
            MySqlCommand cmd = new MySqlCommand("Select * from kategori", cnn);
            try
            {
                cnn.Open();
                MySqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    listBox1.Items.Add(dr["kategori_adi"].ToString());
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
    }
}

29. satırdaki kodlar ConnectionString’imiz. Bu kodlar bizim sunucumuzun verilerini içerecek bunları kendinize göre düzenleyeceksiniz. Ve bağlantımız gerçekleşecek.

Data source yerine sitenizin domainini, Database yerine kullanacağınız database ismini, User  ID ye database kullanıcı adınızı ve Password yerinede database şifrenizi yazıyorsunuz. Port ise genelde 3306 dır.

Hemen altındaki 30. satırda ise komutumuzu çalıştırıyoruz. Ben sitemin kategorilerini çekiyorum. Try catch içine koyarak muhtemel hataların ne olduğunu öğrenebiliriz

Bir tane buton yaratın ve buton_click() içerisine kodları yapıştırın. Ben sonuçları görmek için bir tane listbox oluşturdum ve gelen verileri buraya ekledim.

Dikkat etmemiz gereken en önemli nokta sitemizin databaseine uzaktan erişimi açmak. Bunun için bilgisayarınızın ip adresini, cpanelden uzak mysql bağlantısı altındaki yeni host bölümüne eklemek.

Hepsi bu kadar, başka makalelerimde nasıl veri çekeceğiz,güncelleyeceğiz,sileceğiz bunları anlatacağım. Umarım işinize yarar.

<<< Önceki:

Sonraki: >>>


Facebookta Paylaş

3 yorum »

  • nurdan dedi ki:

    Teşekkurler..

  • Yakup TAŞLIBEYAZ dedi ki:

    Teşekkürler Gerçekten de Çok yardımcı Oldu Bende Böyle Bir Şey Arıyordum Bende Bunu Kullanarak Projemi Daha Geliştirdim

    Kolay Gelsin İyi Çalışmalar….

  • Abdullah dedi ki:

    Öncelikle teşekkürler.

    Ben bağlantı kurarken aşağıdaki hatayı alıyorum sebebi ne olabilir.

    Hata :

    authentication with old password no longer supported use 4.1 style passwords

Yorum Bırakın!

Yorum yaz, yada kendi sitende trackback (Geri besleme) olarak ekle. Ayrıca RSS ile bu konuya üye olabilirsin. .

Nazik olun. Temiz tutun. Konu dışına çıkmayın. Spam yaratmayın.

Bu tagları kullanabilirsiniz:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Bloğumuz gavatarı desteklemektedir. Kendi gavatarınızı edinmek için lütfen Gravatar a üye olun.