Yazan : Åžadi Evren ÅžEKER
Bu yazının amacı JAVA programlama dilinden bir veri tabanına nasıl baÄŸlanılacağını adım adım örnek kod üzerinden açıklamaktır. Uygulamada veri tabanı olarak JavaDB kullanacağız. Bu veritabanı netbeans ile birlikte gelmenin yanında Sun microsystems’in web sitesinden de indirilebilir.
Temel olarak bir programlama dilinden (JAVA veya farklı bir dil) bir veritabanına (database) bağlanmak ve veri almak için aşağıdaki üç adım izlenmelidir:
- Veri tabanına bir bağlantı oluşturmak (connection)
- Bağlantı üzerinden bir sorgunun çalıştırılması
- Sorgunun sonucunun bir veri yapısı (Datastructure) içerisine alınması
Yukarıdaki bu adımları sırasıyla JAVA dilinde ve JavaDB veritabanında gerçekleştirmeye çalışalım.
Veritabanına bağlantı oluşturulması
Bu aşamada ve bundan sonraki veritabanı işlemlerinde JAVA dilinde bulunna java.sql.* paketini kullanıyoruz. Bu paket için
import java.sql.*;
satırını kodumuzun başına ekliyoruz.
Bağlantıyı oluşturmak için java.sql.Connection sınıfından (class) bir nesne (object) oluşturuyoruz. Bu işlem için aşağıdaki satırı kullanabiliriz:
 Connection con = DriverManager.getConnection( "jdbc:derby://localhost:1527/xyz;user=sadi;password=evren;");
Yukarıdaki satırda con ismi verilen nesne (object) oluÅŸturulmuÅŸ ve yerel bilgisayarda (localhost) bulunan “xyz” isimli veritabanına “sadi” kullanıcısı ve “evren” ÅŸifresi ile baÄŸlanmaya çalışmıştır. 1527 bilgisayarımızda kurulu olan JavaDB’nin port numarasıdır.
Veritabanında sorgunun çalıştırılması
Veri tabanına yukarıdaki şekilde bağlandıktan sonra istenilen bir sorgu çalıştırılabilir. Bu işlem için de yine java.sql paketinde bulunan Statement sınıfını kullanacağız.
Statement sta = con.createStatement();
ResultSet res = sta.executeQuery(
“SELECT * FROM USERTABLE“);
Yukarıda verilen kod parçasındaki sorgu bir sonuç kümesine (ResultSet) toplanmıştır. Yani yukarıdaki ilk satır ile bağlantımız üzerinde (con nesnesinin bağlantı olduğunu hatırlayalım) bir sorgu çalıştıracak imkan açılmıştır. İkinci satır ile de bu bağlantı üzerinde verilen sorgu çalıştırılarak res ismindeki nesnenin içersine sonuç bilgileri alınmıştır.
Sorgudan alınan sonuç kümesinin (Result Set) işlenmesi
Sorgudan dönen bilgi bir önceki adımda bir ResultSet nesnesinin içerisine atıldı. Bu sınıfın çok farklı fonksiyonları olmakla beraber aşağıdaki örnekte gösterilen kodu çalıştırabiliriz:
 while (res.next()) { System.out.println( " "+res.getString("USERNAME") + ", "+res.getString("PASSWORD"
); }
Yukarıdaki kod örneÄŸinde veri tabanından dönen kümeden “USERNAME” ve “PASSWORD” isimli kolonlar (Veritabanındanki USERTABLE tablosunun kolonları) alınarak ekrana basılmaktadır. Dikkat edilirse bu basma iÅŸlemi bir while döngüsü (loop) içerisinde gerçekleÅŸmektedir ve her adımda res.next() fonksiyonu ile kümedeki bir sonraki satır (Tuple) alınmaktadır.
Bağlantının kapatılması
Son olarak JAVA ile veritabanı arasındaki bağlantının kapatılması gerekir. Bu işlem için
con.close();
satırı kullanılabilir.
Tam çalışır kod
Yukarıdaki verilen parçalı ve açıklamalı kodun tamamı aÅŸağıda tek adımda verilmiÅŸtir. Yukarıdaki koda ilave olarak çeÅŸitli satırlarda try / catch blokları ile SQLException yakalandığına dikkat ediniz. Bunun sebebi beklenmedik bir durumda JAVA‘nın SQLException catch edilmesini zorunlu tutmasıdır.
import java.sql.*; /**  *  * @author shedai  */ public class dbAbstract {    Connection con;    public void close() {         try{              con.close();         }         catch(Exception e){}  }  public dbAbstract(){     try{     con = DriverManager.getConnection(        "jdbc:derby://localhost:1527/xyz;user=sadi;password=evren;");     }     catch(SQLException exp){        exp.printStackTrace();     }  }  public boolean Authenticate(String User,String Pass){     try{          Statement sta = con.createStatement();          ResultSet res = sta.executeQuery(          "SELECT * FROM USERTABLE where USERNAME='"+User+"';");          while (res.next()) {           if(Pass.equals(res.getString("PASSWORD")))              return true;      }      res.close();      sta.close();      return false;     }catch(SQLException exp){         exp.printStackTrace();         return false;     }  } } Veri Tabanı bağlantısından bilgileri JTAble'a çekerek görsel olarak gösteren kod Betül Hanımın sorusu üzerine aşağıdaki kodu yazdım ve basitçe veri tabanından veri çekip JFrame içerisindeki bir JTable bileşenine (component) ekliyoruz. import java.sql.*; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JTable; /**  *  * @author shedai  */ public class NewClass {    Connection con;    public void close() {         try{              con.close();         }         catch(Exception e){}  }  public NewClass(){     try{    con = DriverManager.getConnection( "jdbc:mysql://localhost/deneme", "root", "" );      }     catch(SQLException exp){        exp.printStackTrace();     }  }  JTable jt;  public void tablo(){     try{          Statement sta = con.createStatement();          ResultSet res = sta.executeQuery(          "SELECT * FROM persons");          Vector satirlar = new Vector();          Vector satir[] = new Vector[2];          satir[0] = new Vector();          satir[1] = new Vector();          int s = 0;          while (res.next()) {              for(int i = 1;i<6;i++){               satir[s].add(res.getString(i));                System.out.println(res.getString(i));              }              s++;          }          satirlar.add(satir[0]);          satirlar.add(satir[1]);          Vector basliklar = new Vector();          basliklar.add("id");          basliklar.add("soyisim");          basliklar.add("isim");          basliklar.add("adres");          basliklar.add("şehir");          jt = new JTable(satirlar,basliklar);      res.close();      sta.close();     }catch(SQLException exp){         exp.printStackTrace();     }  }  public static void main(String args[]){     NewClass nc = new NewClass();     nc.tablo();     JFrame jf = new JFrame();    jf.add(nc.jt);    jf.setVisible(true);  }  }
Öncelikle, hazır yeni bir kod yazıyorken, MySQL bağlantısını da örneklendirmiş olmak için kodu, MySQL sunucusna bağlanan şekilde yazdım. MySQL sunucunda öncelikle deneme isminde bir tablo oluşturduk:
CREATE TABLE IF NOT EXISTS `persons` ( `P_Id` int(11) NOT NULL, `LastName` varchar(255) NOT NULL, `FirstName` varchar(255) DEFAULT NULL, `Address` varchar(255) DEFAULT NULL, `City` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Ayrıca tabloya iki adet basit veri ekledim:
INSERT INTO `persons` (`P_Id`, `LastName`, `FirstName`, `Address`, `City`) VALUES (1, 'seker', 'sadi', 'fasfa af af a', 'ist'), (2, 'demir', 'ali', 'fasdf af af afa', 'adana');
Yukarıda verdiğim kodda, inşa sınıfında bulunan (constructor) veri tabanı bağlantısı, MySQL bağlantısı olduğu için, ilgili kütüphanenin öncelikle classpath içerisinde tanımlı olması gerekir. Bu kütüphane JDBC üzerinden MySQL bağlantısı kurmaya yarayan sürücü (driver) bilgisini içerir.
Ardından bağlantı kurulduktan sonra yukarıdaki kodda bulunan tablo() fonksiyonumuz veri tabanından ilgili tablonun içeriğini çekerek hem ekrana hem de JTable içerisine basmaktadır. Bu işlem yazının başında verilen ilk örnek koda benzer şekilde bir while döngüsü üzerinden yapılmaktadır.
JTable sınıfının çok sayıdaki inşa fonksiyonlarından (constructor) birisi de, iki adet vektör (vector) almaktadır.
Bu vectorlerden ilki, verileri tutan ve “vector of vector”, yani vektörler vektörü olan veri yapısıyken, ikinci vektör sadece tablo baÅŸlıklarını tutmaktadır.
Ä°ÅŸlemi kolaylaÅŸtırmak ve ileride çok sayıdak satır ile ilgilenmek ihtimalinden dolayı, bir dizi tanımlayıp (satir) her satırı bu dizininin bir elemanına çekiyoruz. Ardından çekilen bu satırları daha üstte tek bir vektörde (satirlar) topluyoruz ve bunu JTable’ın ilk elemanı yapıyoruz.
Son olarak, koddaki, ilk çalışan main fonksiyonuna bakalım. Main fonksiyonunda bir JFrame oluşturulmakta, bu JFrame içerisine de jt isimli, daha önceden tanımlanmış ve tablo() fonksiyonu ile içerisine veri tabanından veri çekilmiş olan JTable yerleştirilmektedir.
Kodun çalışmasının ardından ekran çıktısı aşağıdaki şekildedir:
çalışmalarınıza kısaca bir göz attım.gerçekten çok güzel bilgiler vermişsiniz.Jsvs programlama diline ilgi duyan birisi olarak teşekkür ederim.
Hocam kodları calıstırabilmek icin jdbc 3.0 ‘ ı indirdim.ama classpath ile uyumlastıracagım sanırım fakat yapamadım.Bu konu ile ilgili yardımcı olurmusunuz bu kodları çalıştırabilmem için.Ornegin su hata mesajını alıyorum
package com.microsoft.sqlserver.jdbc does not exist
TeÅŸekkur ederim
Pardon hocam yanlış bir yorum oldu.Yukarıdaki kodları calıstırabiliyorum.Ben sql server 2005 kullanıyorum.Management studio ile veritabanına baglanırken
Server type:Database Engine
Server Name:SARPER-EXPERSQLEXPRESS
Authentication:Windows Authentication
default degerleriyle direk baglanıyorum.Bir kullanıcı adı sifre girmiyorum.Dolayısıyla,
con = DriverManager.getConnection(” “); Bu noktadaki bosluga ne yazmam gerekicek ?
TeÅŸekkur ederim
DriverManager.getConnection(“jdbc:sqlserver://localhost\SQLEXPRESS;user=myuser;password=mypass; “);
Yukarıdaki satırda, localhost yerine sunucu ismini, myuser ve mypass yerine, bağlantıdaki kullanıcı adı ve şifrenizi yazmanız gerekir.
şayet farklı bir porttan bağlanıyorsanız o zaman port numarasını, localhost:5555 şeklinde sunucu adresinin yanına yazarsınız.
Hocam ben yukarıda anlattığınız şekilde,java konsol uygulaması veya bir application uygulaması ile sql server veritabanına bağlanabiliyorum.Fakat java applet uygulaması ile bağlamamıyorum.Aldığım hata
java.sql.SQLException: No suitable driver found for jdbc:sqlserver://127.0.0.1:1433;database=Diyet;integratedsecurity=true;
.
Bu url ile dediÄŸim gibi java konsol ile baÄŸlanabilirken neden java applet ile yapamıyorum.Applet projesinin içerisinde sqljdbc4.jar’ı eklediÄŸim halde bu driver’i bulamıyor.Sizce ne yapmalıyım hocam,acaba applet’in html sayfasının içerisine bazı komutlar mı yazmam gerekiyor ?
java applet uygulamalarının ağ bağlantısı ve yerel bilgisayara erişmesi yasaktır. Güvenlik sebebiyle bu şekilde bir kısıtlama getirilmiştir.
Basitçe bir applet bir web sayfasına gömülü olarak çalışır. Bunun anlamı siz web sitesini gezerken, applet sizin bilgisayarınıza indirilir ve sizin bilgisayarınızda çalışır.
Güvenlik de tam burada devreye girer, düşünün ki sizin bilgisayarınızda tamamen tesadüfen girdiğiniz bir siteden bir applet indiriliyor ve sizin dosya yapınıza erişip bilgi alıyor, değişiklikler yapıyor veya sizin bilgisayarınızdan internetteki kaynaklara bilgi gönderiyor veya sizin bilgisayarınız adına internetten bilgi alıyor ( bu bir veri tabanından bilgi almak veya göndermek de olabilir).
Bu durumu engellemek için java appletleri güvenli hale getirilmiş ve bazı erişimler engellenmiştir.
Ancak güvenilir applet (trusted applet) kullanımı veya applet güvenliklerinde yapılan değişikliklerle (ki bu durum tavsiye edilmez) bahsi geçen erişimlere izin verebilirsiniz.
Başarılar
Anladım hocam temel mantık bu şekilde çalışır diyosunuz.Yazınınız son cümlesinde ki,tavsiye edilmeyen bazı değişikler yapılabilir derken,kullandığım Idenin içerisindeki applet ayarlarından mı bu değişiklikleri yaparsam sorun çözülür ? çünkü hocam başladığım bir projenin son aşamasında böyle bir sorunla karşılaştım ve yazdığım kodlarda applet uyumlu olduğu için herşeyi sil baştan yeni bir proje de yapmak benim için çok kötü olacaktır =(
Hocam tamam application formatında açtığım zaman kodları dönüştürüyomuşum neyseki okadar kodu bir daha yazmaktan kurtuldum.Size de çok teşekkür ederim hocam aslında appletin tam olarak ne olduğunu sizden öğrendiğim için.
evet böyle bir durumda en mantıklı karar, yazdığınız applet’i bir applicationa çevirmek olacaktır. Basitçe, “extends Applet” yazan yeri “extends JFrame” olarak deÄŸiÅŸtirerek baÅŸlayabilirsiniz 🙂
Tavsiye edilmeyen deÄŸiÅŸiklikler, bilgisayarınızda kurulu olan JRE (Java Runtime Environment) üzerindeki applet güvenlik ayarlarıdır. IDE ile bir ilgisi yoktur çünkü applet’i IDE deÄŸil JRE çalıştırır.
başarılar
merhaba hocam,
yukarıda bahsettğiniz gibi java ile veritabanı bağlantımı gerçekleştirdim.şimdi de
combobox tan seçtiğim değer ile veritabanına bağlanıp jtable a adı ve soyadı verilerini çekmek istiyorum..fakat bazı hatalar var.
öncelikle jframe de şu tanımlamaları yaptım.
Vector data = new Vector();
String[] columnNames = {“Ad”, “Soyad”,};
Vector column = new Vector(Arrays.asList(columnNames));
DefaultTableModel model =new javax.swing.table.DefaultTableModel(data,column);
sonra jcomboobx ın içinde şöyle devam ettim;
Statement stap=m1.baglan().createStatement();
if (jComboBox1.getSelectedIndex() == 0) { //ilk deger seçili ise
String sql;
sql = “SELECT * From bolum”;
ResultSet re=stap.executeQuery(sql);
bundan sonra
vektöre atıp tabloya yerleştirmeye çalıştım ama hocam başarılı olamadım ..
while(re.next()){
Vector h = new Vector(Arrays.asList(row));
//data.add(h);
data.addElement(h);
}
model.addRow(data);
sanırım vektöre atamıyorum değerleri..bu durumda ne yapmam lazım..
teşekkürler
saygılar
Sorunuz üzerine, yukarıdaki yazıya JTable kullanan bir kod ekliyorum.
Başarılar
anlatım için teşekkürler hocam.ben bişey sormak istiyorum.ben java ile sql server a bağlanmak istiyorum.ama böyle bir hata alıyorum
com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host 127.0.0.1, port 1025 has failed. Error: “Connection refused: connect. Verify the connection properties, check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.”.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:171)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1033)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at sqlbaÄŸlan.Main.main(Main.java:31)
tcp/ıp yi configuration managerdan enabled da yaptım,jar dosyasını da ekledim neden böyle bir hata alıyorum.yardımcı olursanız sevinirim teşekkürler..
Sanırım hatanız, ilgili host üzerinde 1025 numaralı porta baÄŸlanamamanızdan kaynaklanıyor. Bu durumu basitçe ilgili IP / port ‘a telnet ile eriÅŸerek deneyebilirsiniz:
telnet 127.0.0.1 1025
Büyük ihtimalle bağlanamayacaksınız. Çözüm için de ilgili portun (1025) firewall üzerinde işaretli olmadığına dikkat edin. Ayrıca 127.0.0.1 yerine localhost yazmanız da yardımcı olabilir.
Kısacası probleminiz ilgil sunucuya ilgili porttan bağlanamamanız.
Başarılar
teşekkürler hocam . sunucuya bağlanamama problemim tcp dinamıc portunu 0 yapmam gerekiyormuş.yapınca düzeldi.
iyi günler, hocam ben internet üzerinden ip ile veritabanına nasıl ulaşırım.
private String url = “192.168.1.1:jdbc:mysql://localhost:3306/”; bu doÄŸrumu…
Evet doğru, ayrıca ilave parametreler olarak yukarıdaki yazıda anlatıldığı gibi username ve password de verebilirsiniz. Ancak sunucu tarafında sizin erişiminize izin verilmesi gerekir. Genelde uzaktan bağlantılar kısıtlanmıştır ve bu iznin verilmesi çok ciddi bir güvenlik açığı olarak yorumlanır. Ancak özel durumlarda bu izin verilebilir.
Şayet kullandığınız veritabanı mysql ise (ki bağlantı dizginizden (connection string) böyle olduğu anlaşılıyor), aşağıdaki adımları yapmanız gerekir (aslında bunun için ayrı bir yazı yazıp yayınlasam iyi olur şimdilik hızlıca açıklıyorum ancak problem yaşarsanız, internette farklı kaynaklardan faydalanabilirsiniz)
Öncelikle my.cnf dosyasını açmamız gerekiyor (vi editörünün hayranları olarak aşağıdaki şekilde açabilirsiniz)
vi /etc/my.cnf
Genelde my.cnf dosyası (yani mysql configuration) etc altında kuruludur, ancak sizde farklı bir yerdeyse bunu bulup ilgili dosyayı açın.
Dosya içerisinde mysqld isimli bir etiket vardır [mysqld] olarak geçer ve mysql deamon’ını yani sunucusunun ayarlarını içerir. Buraya bind satırı ekleyin yani hangi IP adresinden eriÅŸilecekse bu adresi aÅŸağıdaki ÅŸekilde ekleyin:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 188.138.0.88
Yukarıdaki örnekte bilgisayarkavramlari.com sitesinin IP adresi olan 188.138.0.88 eklenmiştir. Siz hangi IP adresine izin vermek istiyorsanız bunu ekleyin.
Ardından mysqld yeniden başlatılmalı, yine kurulum dizinine göre değişmekle birlkite aşağıdaki şekilde olabilir:
/etc/init.d/mysql restart
Son olarak mysql sunucusuna bağlanıp SQL haklarını vermemiz gerekir:
mysql -u root -p mysql
Şeklinde mysql client ile bağlanıyoruz (yukarıda kullanıcı adı root şifre mysql olarak girilmiştir siz kendinize göre bunları düzenleyin)
GRANT ALL ON foo.* TO bar@’188.138.0.88′ IDENTIFIED BY ‘PASSWORD’;
Yukarıdaki SQL komutu ile foo veritabanının altındaki herşeye (* burada jokerdir ve herşey anlamındadır) bar kullanıcısının 188.138.0.88 numaralı IP adresinden PASSWORD isimli şifre ile bağlanmasına izin verilmiştir.
Ayrıca ÅŸayet firewall, proxy gibi ayarlarınız varsa bunları da hem sunucu hem istemci tarafında doÄŸru bir ÅŸekilde ayarlamanız gerekir unutmayın mysql’in default protu 3306’dır (zaten bu protu deÄŸiÅŸtirmek isterseniz yapacaklarınız da aÅŸağı yukarı, biraz önce anlattığım adımlardan ibaret)
Başarılar
Yanıtladığınız için teşekkürler Hocam
Fakat ben windows tabanlı çalışıyorum. ayrıca Mysql Server kurulumu nasıl olmalı? Yalnızca yerel ağda birden cok kullanıcı bağlanabilecek.
Windowsta değişen birşey yok, aynı dosya farklı yerde, aynı komutlar geçerli. En kısa sürede vakit bulur bulmaz bu konuyu anlatan yeni bir yazı ekleyeceğim ama çok acil yapmanız gerekiyorsa yukarıdakileri adım adım windows üzerinde de yapabilirsiniz sadece dosyanın konumu farklı.
Başarılar
benim bilgisayarda my.cnf dosyası yok win7 de…
nasıl bulacam o dasyayı tez yapıorum da acil yardım ederseniz sevinirim…
Windowsta my.ini dosyası olarak geçiyor olabilir genelde windowsun kurulum dosyasına atıyor. Özel olarak belirtmediyseniz c:windows veya command promptta
cd %windir%
komutunu verirseniz kurulum dizinine girer veya doğrudan erişim için
wordpad %windir%my.ini
şeklinde bir komut verebilirsiniz (başlat düğmesinden çalıştırı seçip yukarıdaki komutu yazarsanız bulmazı gerekir)
Alternatif olarak doğrudan C: altına atabilir c:my.cnf veya c:my.ini olabilir
Son alternatif olarak da kurulum dizinine bakmakta yarar var. Örneğin c:mysql dizini altına mysql sunucunuzu kurdunuz diyelim bunun altında olabilir.
Son bir uyarı da windowsta kullanılan hazır paketler var bunlara kısaca AMP paketleri denilir (apache, mysql, php veya perl, python vs. baş harflerinden oluşur) Bunlardan birisini kurduysanız (ki kurulum daha basit olduğu için tavsiye ederim) bunların kendi yönetim konsolları oluyor, bu konsollarda doğrudan mysql configuration file erişimi oluyor (benzer şekilde php ve apache konfigürasyon dosyalarına da bu konsollardan erişiyorsunuz) kurduğunuz paket ile ilgili dokümantasyonu okumanızda yarar olabilir (veya kontrol panelini biraz kurcalamak işe yarayabilir)
Başarılar
sadece bind-adress i mi ekliycez diÄŸererini de ekliycez mi
yine olmuyo da…
Hocam merhaba. yazdığınız kodu bende projemde uygulamaya çalışıyorum. ama başlıklar görünmüyor ne yapabilirim?
Tamam hocam bu sorunu hallettim. Teşekkür ederim. kişi isimlerinin olduğu bu tabloda ismin üzerinde tıkladığımda yeni bi sayfada bilgileri görünsün istiyorum bunu nasıl yapabilirim.
Merhabalar Hocam
Java Applet ile Herhangi bir cihaza comport üzerinden veri gönderip cevap almak istiyorum.
Programı 5 günlük bir uğraş sonucu gerçekleştirdim ancak uygulamam appletviewer da çalışmasına rağmen herhangi bir browser ile açtığımda çalışmıyor.(uygulamanın arayüzü çalışıyor ancak buttonlar işlevlerini gerçekleştirmiyor.)Bu Program Güvenlik Engellerinemi takılıyor ?
Bunları aşmamızın herhangi bir yolu yok mu ?Evimdeki bir cihazı internet üzerinden kontrol etmek için böyle bir programla uğraşıyorum.Eğer applet ı web te çalıştırırsam projem gerçekleşicek.
Hocam makale için çok teşekkür ederim.
Hocam benim sorum remote connection yaparken herhangi bir db ye özel bir konfigürayon gerekirmi client tarafında ?
yoksa admin tarafından verilen hostname,password,username,port,servicename gibi bilgiler yeterli olurmu. uzak makinedaki db ye bağlanmak için
cevabınız için şimdiden teşekkür ederim hocam
Hocam üst yorumları okuyunca cevabımı aldım:d çok teşekkür ederim tekrardan
Merhaba hocam,
java.sql.SQLException: No suitable driver found for adbc:derby://localhost:1527/database;create=true
hatası alıyorum bunu nasıl çözebilirim.
Cevabınız için şimdiden teşekkürler.
sanıyorum bağlantı cümleniz adbc yerine jdbc olacak. Ayrıca derby bağlantısı kullandığınız için derbyclient.jar dosyasının da kütüphanelere ekli olduğundan emin olmanızda yarar var.
Merhabalar öncelikle ellerinize sağlık. Ben bir chat programı yazdım javada. fakat programı her çalıştırdığımda veriler kayboluyor. Bu verileri veritabanında tutabilir miyim ya da nasıl yapabilirim yardımcı olabilir misiniz?
Merhabalar hocam,baÅŸka bir arkadaşımın bilgisayarından aldığım jsf ile oluÅŸturulmuÅŸ localde çalışan bir web sitesi projesini kendi bilgisayarımda çalıştırdığımda “Could not find file C:\Users\Desktop\sqljdbc_4.2 to copy” gibi bir hata alıyorum.Netbeans 8.0.2 sürümünü kullanıyorum,”resolve references problem” toolu olan arkadaÅŸlar sorunu hallettiler kendi bilgisayarlarında ben bu toolu bulamadığım için sorunumu çözüp projeyi çalıştıramıyorum.Yardımcı olursanız çok Sevinirim.