Java JDBC ile MySQL Veritabanına Bağlanma ve SQL İşlemleri

Java JDBC ile MySQL Veritabanına Bağlanma ve SQL İşlemleri

 Bu yazıda Java programlama dilinde JDBC ile bir veritabanına bağlanmayı öğreneceğiz. Ayrıca, örnek oluşturması açısından bağlandığımız veritabanından sorgu yapacağız. O zaman hazırsak başlayalım.

Öncelikle bağlanmak istediğimiz bir veritabanı oluşturalım. Ben lokalimde demo_connection isminde bir veritabanı oluşturdum. Veritabanı içerisinde Persons isminde bir tablo oluşturdum ve bu tablo içerisinde ID , Name , Age sütunlarını aşağıdaki gibi tanımladım.

 
CREATE TABLE Persons(
ID int not null primary key auto_increment,
Name varchar(30) not null,
Age int not null
);

Oluşturduğumuz bu veritabanına sorgulama yaparken göstermek adına bazı değerler girelim.

Bu örnekte 3 adet değer girdim ve veritabanım yukarıdaki halini aldı. Veritabanı kısmı hazır olduğuna göre Java’daki kod kısmına geçelim.

Öncelikle , Java’da JDBC ile MYSQL işlemlerini yapmak için MySQL Connector gerekiyor, buradaki bağlantıdan Java için olanını indirebilirsiniz. İndirdiğiniz bu kütüphaneyi projenize dahil etmeniz(import) gerekiyor.

Bu anlatımda Intellij IDEA kullandığım için Intellij IDEA için anlatmak gerekirse Ctrl + Alt + Shift + S kombinasyonunu kullanarak Project Structure kısmına giriş yapın. Girdikten sonra sol taraftaki kısımdan Libraries kısmına gelin ve kütüphane ekleme seçeneğini seçin. İndirdiğiniz dosya içerisindeki mysql-connector-java-xxxxx.jar dosyasının bulunduğu yolu gösterin ve tamam deyin. Böylelikle kütüphaneyi projemize dahil etmiş olduk. Diğer geliştirme ortamları için de benzer yolu izleyerek kütüphaneyi projeye dahil edebilirsiniz.Kütüphaneyi dahil etme işlemini bitirdiyseniz kod kısmına geçelim.

Öncelikle DBConnection isminde bir sınıf oluşturuyorum (İstediğiniz başka bir isimde de oluşturabilirsiniz). Daha sonra aşağıda verilen kütüphaneleri import edeceğiz. Aşağıdaki import komutlarıyla verilmiş kütüphaneleri oluşturduğunuz sınıfın package bilgisinin hemen altında ekleyin.

 


import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;

Yukarıdaki işlemleri gerçekleştirdikten sonra veritabanı bağlantısı için kullanacağımız değişkenlerin ve kurucu fonksiyonun tanımlamasını yapacağız. Bu anlatımda kurucu fonksiyon veritabanına bağlantının sağlandığı kısımdır. Dilerseniz, bu örneği inceleyerek başka bir şekilde de yapabilirsiniz.


private Statement st;
private Connection con;
private ResultSet rs;
public DBConnection() {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/demo_connection", "root", "deneme");
st = con.createStatement();
} catch (Exception e) {
System.out.println("Error  : " + e);
}
}

Yukarıdaki kısımları kendinize göre değiştirmeniz gerekmektedir. DB_NAME yazan kısma oluşturduğunuz veritabanının ismini , USERNAME kısmına MySQL kullanıcı adınızı , PASSWORD kısmına da MySQL şifrenizi yazmalısınız.
Not : Eğer lokalinizde değil de uzak sunucuda çalışıyorsanız localhost kısmına sunucu adresinizi ve port numarasını da ona göre değiştirmelisiniz.
Projemizin main fonksiyonunun bulunduğu yere gelelim ve şu ana kadar yaptıklarımız çalışıyor mu test edelim. Aşağıdaki tanımlamayı yapın ve projenizi Run edin.

DBConnection db = new DBConnection();

Eğer bir hata ile karşılaşmadıysanız , tebrikler! Başarı ile veritabanı bağlantısını bağlanmışsınız demektir.
Buraya kadar olan kısım veritabanına bağlanmak ile ilgiliydi şimdi ise veritabanındaki verileri sorgulama örneği yapalım.


public void getData() { //veriler okunuyor.
String data = null;
try {
String query = "SELECT * FROM Persons";
rs = st.executeQuery(query);
while (rs.next()) {
data = rs.getString("Name");
System.out.println(data);
}
} catch (Exception e) {
System.out.println("Error : " + e);
}
}

Yukarıdaki query Stringindeki kısmı yapacağınız sorguya göre ayarlamanız gerekmektedir. Benim örneğimde tablo adım Persons olduğu ve tablo içerisinden isimleri çekmek istediğim için

data = rs.getString("Name");

yazdım. Buradaki uygun kısımları kendinize göre ayarlayarak sorgu işlemi yapabilirsiniz.
Çıktısını görmek için aşağdaki kodu yazıp çalıştıralım projeyi.

db.getData();

Yukarıdaki kodun ekran çıktısı aşağıdaki gibi olacaktır.

Bir de veri ekleme örneği gösterelim. Aşağıdaki fonksiyonda veri ekleme ile ilgili bir örnek fonksiyon yazdım. Burada dikkat edilmesi kısım veri sorgularken executeQuery komutu veri eklerken ise executeUpdate kullandığımızdır.


public void addData(String addedName , int addedAge) {
String add = "INSERT INTO Persons(Name , Age)"
+ "VALUES (" + "'" + addedName + "'" +"," + String.valueOf(addedAge) + ")";
try {
st.executeUpdate(add);
System.out.println("Veri eklendi");
} catch (Exception e) {
System.out.println("Error occured when adding value to database : " + e );
}
}

Evet , arkadaşlar bu anlatımımda JDBC ile veritabanına bağlanmayı , veri sorgulamayı ve veri eklemeyi gösterdik. Umarım yararlı olmuştur.


Paylaş :

Full Stack Developer · Yazılım Tutkunu · Fikir, kod ve teknoloji Daha fazlası için hakkımda sayfasını ziyaret edebilirsiniz.



Bu yazı hakkındaki görüşünü benimle paylaşmaya ne dersin ?


Email adresiniz yayınlanmayacaktır.

Yorum yap butonuna
bastıktan sonra yorumunuz gönderilecektir. Yorumunuz incelenip onaylandıktan sonra diğer ziyaretçilerimiz tarafından da görünecektir. Lütfen, yorum yaparken saygı çerçevesinde ve hakaret etmeden yorum yapmaya özen gösteriniz.

Bu yorumu göndererek bu uyarıları okuduğumu ve kabul ettiğimi onaylıyorum.