Hocam Ben Javada Mysql Kullandiigim icin Sql Serverda Nasıl yol izlenir Tam Olarak Bilmem ama. En azindan Yazacagim Belki mantigi Kavramana Fayda Veriri..
Mysql’in kuruluşu ve connectorj’nin indirilişi ile ilgili Bilgileri “şuradan;
http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.27-wi n32.zip/from/pick#mirrors
herhangi bir mirror seçerek mysql'in windows için olan kurulum dosyasını indirebilirsiniz. İnen setup dosyasını çalıştırdım, yüklerken de standart kurulumu seçip yükledim. root kullanıcısı için şifre belirledim, yalnız sonunda uzaktan erişime izin ver gibi bir seçenek çıktı, onu da işaretledim. Kurulum bitti ve ayarları yapmaya başladı. Son kısımda hata verdi; "3306 numaralı port kapalı, bu portu açıp tekrar deneyin" diye. denetim masası>windows güvenlik duvarı>özel durumlar>bağlantı noktası ekle'ye tıklayınca açılan pencerede 2 satır geliyor. Üst satıra bir isim(tanımlayıcı herhangi birşey "mysql") ve alt satıra port numarasını "3306" girip, tamam dedim. Sonra hata penceresindeki retry tuşuna bastım ve işlem tamamlandı.
şu adresten de:
http://www.mysql.com/products/connector/j/
sürücüyü indirdim. Ben 3.1'i indirdim ama diğerinde de sorun çıkmaz heralde. Program filesda mysql klasörünün içine açtım dosyayı, herhangi biryere açılsa olur.
” Connectorj dediğim şey, yukarıdaki indirdiğiniz sürücünün içindeki .jar dosyası. Java üzerinden database ile ilgili yapabileceğiniz kabaca iki çeşit işlem var. Biri database’de değişiklik yapma, diğeri database’den bilgi okuma. Javada database işlemleri için jdbc api’si kullanılır. Önce connectorj’yi tomcat\common\lib altına kopyalayın. Sonra şu kodları jsp dosyasına yazın. <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@page import="java.sql.*,javax.sql.*"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <% Statement stm; Connection con; ResultSet results; try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); con=DriverManager.getConnection("jdbc:mysql://localhost/test","root","admin"); stm=con.createStatement(); stm.executeUpdate("create table user(id int, name varchar(32), pass varchar(32))"); stm.close(); con.close(); }catch(Exception e){ e.printStackTrace(); out.println("sql hatasi"); } %> </body> </html> Kodu kabaca açıklıyorum, <%@page import="java.sql.*,javax.sql.*"%> Javadaki import işlemi, jsp’de bu şekilde yapılıyor. Javax.sql paketiyle ilgili kod yok bu satırda, silebilirsiniz. Java bazı hataların kontrol edilmesini ister, hata oluşabilecek kodlar try bloğu içinde yazılır. Try bloğu içinde bir yerde hata oluşursa oradan itibaren kod catch bloğuna geçer, hata olmazsa try bloğu bittikten sonra catch bloğu atlanır. "com.mysql.jdbc.Driver" mysql’in sürücüsünün adı, buraya kullanılan database’in sürücüsünün adı yazılır. con=DriverManager.getConnection("jdbc:mysql://localhost/test","root","admin"); Burada metodun içindeki ilk parametre database’i belirtiyor, diğer ikisi de kullanıcı adı ve şifreyi. Test database’i mysql’in içinde geliyor örnek olarak. Burada yazan şifre de mysql’i kurarken benim belirttiğim şifre. Stm.executeUpdate metoduna sql komutlarını yazarak istediğiniz işlemleri yapabilirsiniz, şu anda biz user adında kolonu olan bir tablo oluşturduk. Sql’i örnek olarak şuradan çalışabilirsiniz; http://www.w3schools.com/sql/default.asp Başta iki çeşit işlemden bahsetmiştim. Bu kodda sadece database’de değişiklik yaptık. Bilgi okuma şu şekilde yapılıyor; ResultSet rs=stm.executeQuery(“select * from user”); Bu kodda sql sorgusundan dönen değerler rs’e atanır. Şu anda tüm tablo bilgileri dönüyor. Rs.next() komutuyla bilgiler satır satır okunur ve her satırda rs.get.....(kolon adı veya kolon numarası) tarzında bir metodla bilgiler alınıyor. Mesela alınacak bilgi bir sayı ise rs.getInt(“id”) veya rs.getInt(0) şeklinde alıyoruz. Metodların ayrıntılarını api’den bakarak anlayabilirsiniz. İnternetten örnek kodlara da bakın. Şu anda sql bilmiyorsanız ilk başta yukarıda verdiğim adresten veya internetteki başka bir kaynaktan sql öğrenin. Sonra jdbc ile ilgili bazı örnek kodlara bakın. Son adımda da jsp’de formlar ile kullanıcıdan bilgi alıp database üzerinde bu bilgiyi işlemek var. Örnek hazırlayabilirsem koyarım. Şu anda bu kodlarla normal java uygulamasından da database’e ulaşabilirsiniz, sadece connectorj’yi kütüphane’ye eklemeniz gerekli. İnternette araştırma yaparsanız connectorj’yi classpath’e ekleme gibi şeyler duyarsınız ama java yazarken kullanılan araçlar classpath’e bakmıyor, hangi ide ile java yazıyorsanız o ide üzerinden projenin kendi kütüphanesine eklemeniz gerek. (bu paragrafı anlamadıysanız önemli değil, aşağıdakileri yapın sadece) Örnek olarak eclipse üzerinden yapılışını anlatıyorum: File->new->project->java project seçtikten sonra gelen ekranda projeye isim verip finish’e basın. Proje oluşacak. Sonra soldaki listede projenin üzerinde sağ tık->build path->add external archieves’i seçip connectorj’yi gösterin. Bu kadar. Yeni bir java dosyası oluşturmak için gene projenin üstünde sağ tık->new->class ı seçin, isim verip finish’e basın. import java.sql.*; publicclass aaa { publicstaticvoid main(String args[]){ Statement stm; Connection con; ResultSet results; try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); con=DriverManager.getConnection("jdbc:mysql://localhost/test","root","admin"); stm=con.createStatement(); stm.executeUpdate("create table user(id int, name varchar(32), pass varchar(32))"); System.out.print("created"); stm.close(); con.close(); }catch(Exception e){ e.printStackTrace(); System.out.println("sql hatasi"); } } } Dosyaya aynı şekilde şu kodu yazarak java dosyasından database’e ulaşmış olacaksınız.