ADO.NET İle MySql Kullanımı
Merhaba Bu yazımda ADO.NET kullanılarak nasıl MySql Veritabanına VB.NET ve C# dillerini kullanılarak erişim sağlamayı anlatmaya çalışacağım.Geliştirdiğimiz uygulamalarda çoğunlukla bir database kullanıyoruz. Bunlardan biri olan MySql çok büyük ölçekli olmayan işler için kullanılabilir. MySql güvenli bir veritabanı ve neredeyse her ortamda kullanılabiliyor bazıları MySql in sadece Php ile kullanıldığını düşünüyorlar ama büyle olmadığını birazdan göreceğiz.
İşe başlamadan önce bize bir Provider lazım MySql Provider bunu mysqlin sitesinden indirebiliriz linkini de vereyim.
http://www.mysql.com/Downloads/Win32/MyOLEDB3.exeyaklaşık 4MB lik bir dosya bunu kurmanuz gerekiyor.
Yapacağımız iş aslında çok basit Veriye erişim için ADO.NET nesnelerini kullanacağız. ADO.NET içerisinde yer alan DataAdapter ve dataset nesnelerini kullanarak veriyi alıp bir datagrid içerisinde göreceğiz.
File>New>Project>Windows Application
Boş formumuza bir button birde datagrid ekleyelim
not: çayırda koyunlara bile isim verilirken benim butonum ve gridimin nesi eksik.
butonun un adı btnLoadMysql
datagrid in adı da grdMysql osun
Önce bize lazım olan namespace lerimizi tanımlıyoruz
//C#
using System;
using System.Windows.Forms;
using System.Data;
using System.Data.OleDb;
‘vb.net
Imports System
Imports System.Windows.Forms
Imports System.Data
Imports System.Data.OleDb
Şimdi iş yapan kodumuza bakalım
C#
private **** btnLoadMysql_Click(object sender, System.EventArgs e)
{
try
{
//cnn adında yeni bir bağlantı tanımlıyoruz. oleDbConnection sınıfının yapıcı (Constructor) metoduna connectionString imizi veriyoruz. burada her mysql de default olarak kurulu olan mysql databasesini kullanacağız. Provider=MySqlProv.3.0 ise yukarıda bahsettiğimiz providerin tanımı
OleDbConnection cnn=new OleDbConnection("Provider=MySqlProv.3.0;********=l ocalhost;data source=mysql;password=;User id=root");
//bağlantıyı açalım
cnn.Open();
//Dataadapterimizle sorgumuzu
çalıştırıyoruz user tablosu mysql veritabanı içinde default ularak verdır
OleDbDataAdapter dadapter = new OleDbDataAdapter( @"select * from user", cnn);
//yesyeni bir dataset tanımladık
DataSet dataset = new DataSet();
//dataadapterden gelen resultumuzu fill metodu ile dataset içine ornektablo isminde bir tabloya yerleştirdik datasete birkaç tablo eklememiz gerektiğinde bu isim dahada çok işe yarıyacak
dadapter.Fill (dataset,"ornektablo");
//burası malum datasetteki ornektablo içinde ne varsa gridime yazıver
grdMysql.DataSource = dataset.Tables["ornektablo"];
}
catch (Exception ex)
//try bloğunda hata olursa hemen buraya düş ve hata bilgisini mesaj olarak göster
{
MessageBox.Show(ex.GetType().ToString() );
}
}
‘vb.net
private sub btnLoadMysql_Click(object sender, System.EventArgs e)
try
dim cnn as OleDbConnection =new OleDbConnection("Provider=MySqlProv.3.0;********=l ocalhost;data source=mysql;password=;User id=root")
cnn.Open()
dim dadapter as OleDbDataAdapter = new OleDbDataAdapter( "select * from user", cnn)
dim dataset as DataSet = new DataSet()
dadapter.Fill (dataset,"ornektablo")
grdMysql.DataSource = dataset.Tables("ornektablo")
catch ex as Exception
MessageBox.Show(ex.GetType().ToString())
End try
end sub