Java DatBase Connectivity help

rock pora

Well-known member
  • May 18, 2011
    11,951
    2,791
    113
    ###~.:::.සියනෑ කෝරළේ.::.~##
    macho mn mysql new version ekath install kala.
    connector j ekath damma.
    environment variable path eka connector ekatath damma
    jdk ekath damma,aluthma eka dala thiyenne ,jre7u51 thiyenneth

    me okkoma karala thiyenne,eth me programe eka run kalama "connection " fail kiyalane enne bn

    import java.sql.*;

    public class TestDriver {
    public static void main(String[] args) {
    try {
    Driver d = (Driver)
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    System.out.println("Connection works.");
    }
    catch (Exception e) {
    System.out.println("Connection failed.");

    }
    }
    }



    kohomda meka hadanne..

    ane bn danna kenek innavanm help ekak dennakooooo
    mn meka karanne notepad 1n,
    eclipse,netbeans eva hariyanne na,mata mekenma me case eka hoyaganna one machooo

    mokuthma danne nathnam bump ekak hari dala yannakooo...
     
    Last edited:
    • Like
    Reactions: Lomax

    rock pora

    Well-known member
  • May 18, 2011
    11,951
    2,791
    113
    ###~.:::.සියනෑ කෝරළේ.::.~##


    :):):)
    11.gif
     

    u_make_me_sick_

    Well-known member
  • Oct 1, 2011
    11,522
    7,320
    113
    mokkada ena exception eka? System.out ekata exception eka print karala, ena exception eka mokakda kiyanna. Full class ekama danna, koo meke connection string eka? sql server details nehe ne? server address eka, port eka..etc..
     
    • Like
    Reactions: rock pora

    rock pora

    Well-known member
  • May 18, 2011
    11,951
    2,791
    113
    ###~.:::.සියනෑ කෝරළේ.::.~##
    mokkada ena exception eka? System.out ekata exception eka print karala, ena exception eka mokakda kiyanna. Full class ekama danna, koo meke connection string eka? sql server details nehe ne? server address eka, port eka..etc..

    macho mn meka tutorial 1n bala bala kale,eke me code eken try eke thiyena eka display venava bn

    syz3.jpg
     
    Last edited:

    u_make_me_sick_

    Well-known member
  • Oct 1, 2011
    11,522
    7,320
    113
    Code:
    import java.sql.DriverManager;
    import java.sql.Connection;
    import java.sql.SQLException;
     
    public class JDBCExample {
     
      public static void main(String[] argv) {
     
    	System.out.println("-------- MySQL JDBC Connection Testing ------------");
     
    	try {
    		Class.forName("com.mysql.jdbc.Driver");
    	} catch (ClassNotFoundException e) {
    		System.out.println("Where is your MySQL JDBC Driver?");
    		e.printStackTrace();
    		return;
    	}
     
    	System.out.println("MySQL JDBC Driver Registered!");
    	Connection connection = null;
     
    	try {
    		connection = DriverManager
    		.getConnection("jdbc:mysql://localhost:3306/yourDBName","root", "password");
     
    	} catch (SQLException e) {
    		System.out.println("Connection Failed! Check output console");
    		e.printStackTrace();
    		return;
    	}
     
    	if (connection != null) {
    		System.out.println("You made it, take control your database now!");
    	} else {
    		System.out.println("Failed to make connection!");
    	}
      }
    }

    try something like this, MAke sure to put driver jar in to classpath
     
    • Like
    Reactions: Lomax

    rock pora

    Well-known member
  • May 18, 2011
    11,951
    2,791
    113
    ###~.:::.සියනෑ කෝරළේ.::.~##
    Code:
    import java.sql.DriverManager;
    import java.sql.Connection;
    import java.sql.SQLException;
     
    public class JDBCExample {
     
      public static void main(String[] argv) {
     
        System.out.println("-------- MySQL JDBC Connection Testing ------------");
     
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            System.out.println("Where is your MySQL JDBC Driver?");
            e.printStackTrace();
            return;
        }
     
        System.out.println("MySQL JDBC Driver Registered!");
        Connection connection = null;
     
        try {
            connection = DriverManager
            .getConnection("jdbc:mysql://localhost:3306/yourDBName","root", "password");
     
        } catch (SQLException e) {
            System.out.println("Connection Failed! Check output console");
            e.printStackTrace();
            return;
        }
     
        if (connection != null) {
            System.out.println("You made it, take control your database now!");
        } else {
            System.out.println("Failed to make connection!");
        }
      }
    }
    try something like this, MAke sure to put driver jar in to classpath
    tried it,but same problem

    c82p.jpg


    what is drive jar ??
    I always set classpaths jdk and connectr bin to the folder jre\lib\ext
     

    u_make_me_sick_

    Well-known member
  • Oct 1, 2011
    11,522
    7,320
    113
    Driver jar eka kiyanne, oyage java class eka mySql db ekata connect karana application eka, eeka java classes godak ekathu karala jar ekak widihata bundle karapu ekak. eeka nethuwa oyage java class ekata mysql ekata katha karanna be, me site eken connector j eka dl karanna, platform independent version eka (zip file ekak) dl karala, eeka extract karala, eeke ethi mysql-conneor-java.jar kiyala file ekak, eeka oyage java class eka thiyana folder ekatama dala run karanna. http://dev.mysql.com/downloads/connector/j/
     

    MihiCherub

    Well-known member
  • Sep 14, 2009
    18,861
    1
    9,623
    113
    Gampaha

    Creating Database Connection - Java Intermediate

    ගොඩක්ම java apps හදන්නෙ mysql db එක use කරල. වෙනවෙන db servers දැනගත්තට කමක් නෑ. mysql use කරන එක තමා ලේසිම. db connection එක හදාගන්න අමතර codes ටිකක් ඕනෙ වෙනව. ඒත් ඒ codes අපි ලියන්න ඕනෙ නෑ. sql class library එක හරහා import කරල ඒ codes ගන්න පුලුවන්.

    මුලින්ම මේ Library එක DL කරගන්න.

    Download Java SQL Library 5.1.23


    හරි දැන් කලින් NetBeans IDE එකේ Create කරගත්ත StudentRegistration Project එකට මේ library එක දාල code එක ලියාගමු.

    අලුත් db class එකක් හදා ගන්න.
    Right click StudentRegistration > New > Java Class

    20_zpscd7bd05b.jpg

    figure 2.0

    Class Name එක විදියට db දාන්න. Finish.

    21_zps05b04d4b.jpg

    Figure 2.1

    හරි දැන් library එක දාගමු
    Right Click Libraries > Add JAR/Folder > Open SQL Libary jar file (see figure 2.2 n 2.3)

    22_zps1c19bb6d.jpg

    figure 2.2

    db class n SQL db library එක Add කිරීමෙන් අනතුරුව.

    23_zps4d5cc12f.jpg

    figure 2.3

    හරි දැන් Code එක ලියමු. code එක එකපාර copy paste කරල දැන්මොත් සදා අනාතයි. ඒ නිසා තේරුමක් ඇතිව ලියමු. indent කරල Step by step පැහැදිලිව ලියන්න. ඒ වගේම මෙතනදි මම හැම code එකක්ම ලියන්න වෙන්න නැති බවත් පැහැදිලි කරල දෙනව. ඒවගේම සමහර codes generate කරගන්න විදියත් දානව. ඒ නිසා Step by step කරන්න. එකපාර copy paste කලොත් ඒව දැන ගන්න බැරි වෙනව.

    db.java file එක double click කරල open කරගන්න.

    මුලින්ම Static connection එකක් හදාගන්න ඕනෙ. ඒකට db class එක ඇතුලේ උඩින්ම Static connection එක හදාගන්න.


    Code:
    static Connection con;
    දැන් insert, update, delete queries වලට එක method එකකුත් search query එකට තව method එකකුත් ලියාගමු. අපිට හැම query එකක්ම මෙතන ලියන්න බෑ. මොකද එක එක තැන්වලදි යවන query වර්ග වෙනස් වෙන නිසා. ඒ නිසා ඔක්කොම queries වලට හරියන විදියට පැරා වල String එකක් අල්ලගන්න පුලුවන් විදියට method එක ලියාගන්න.

    for insert, update, delete queries. මේ Method එකෙන් නැවත result එකක් බලාපොරොත්තු වෙන්නෙ නැති නිසාත්, method එක හරහා data db එකට යවන නිසා method එක මේ විදියට හදාගන්න.

    Code:
    public static void setData(String s) {
    }
    for search query මේ Method එකෙන් නැවත result එකක් බලාපොරොත්තු වෙනව. මොකද අපි Search කරන result එක නැවත අපි search කරපු තැනට අරගන්න ඕනෙ. ඒ නිසා return කරගන්න පුලුවන් විදියෙ method එකක් හදාගන්න.

    Code:
    public static ResultSet getdata(String c) {
     return null; 
    }
    හරි දැන් setData method එක ඇතුලට දන්න කියන codes ටික දාගන්න. cast කලේ නැති උනාට කමක් නෑ. IDE එකෙන් cast කරන්න කියල පෙන්නල IDE එකෙන්ම cast කරල දානව.

    Code:
    Class.forName("com.mysql.jdbc.Driver"); 
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");
    con.createStatement().executeUpdate(s);
    හරි දැන් exception එකක් throw වෙන නිසා exception handle කරන්න කියල IDE එකෙන් කියනව. ඒ නිසා IDE එකෙන් දෙන Option වලින් Surround block with try catch කියන option එක තෝරන්න. එතකොට method එක මෙන්න මේවිදියට තියෙන්න ඕනෙ. catch දෙකක් තිබුනට අවුලක් නෑ.



    Code:
    public static void setData(String s) {
    
     try {
     Class.forName("com.mysql.jdbc.Driver");     
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");     con.createStatement().executeUpdate(s);         
    }      catch (ClassNotFoundException | SQLException ex) {
     Logger.getLogger(db.class.getName()).log(Level.SEVERE, null, ex);
     } 
    }
    දැන් getData method එක ඇතුලට දන්න කියන codes ටික දාගන්න. cast කලේ නැති උනාට කමක් නෑ. IDE එකෙන් cast කරන්න කියල පෙන්නල IDE එකෙන්ම cast කරල දානව.

    Code:
    Class.forName("com.mysql.jdbc.Driver"); 
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");
    Search කරල එන result එක අල්ලගන්න ඕනෙ නිසා resultset එකක් ඕනෙ වෙනව. මේක තමයි අපි search query එක එවපු තැනට ආයිත් return කරන්නෙත්.


    Code:
    ResultSet rs = con.createStatement().executeQuery(c); 
    return rs;
    හරි දැන් exception එකක් throw වෙන නිසා exception handle කරන්න කියල IDE එකෙන් කියනව. ඒ නිසා IDE එකෙන් දෙන Option වලින් Surround block with try catch කියන option එක තෝරන්න. එතකොට method එක මෙන්න මේවිදියට තියෙන්න ඕනෙ. catch දෙකක් තිබුනට අවුලක් නෑ.

    Code:
    public static ResultSet getdata(String c) {
     try {
     Class.forName("com.mysql.jdbc.Driver");         
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");         ResultSet rs = con.createStatement().executeQuery(c);
     return rs;
     }      catch (ClassNotFoundException | SQLException ex) {         
    Logger.getLogger(db.class.getName()).log(Level.SEVERE, null, ex);
     }      return null; 
    }
    දැන් සම්පූර්න code එක ලියාගෙන ඉවරයි. code එකේ කිසිම තැනක් රතුපාටින් තියෙන්නෙ බෑ. සමහරවිට imports වල අවුලක් තියෙන්න පුලුවන් ඒක ctrl+shift+I keys press කරල imports fix කරගන්න. මෙන්න මේටික auto import වෙලා තියෙන්නෙ ඕනෙ.

    Code:
     import com.mysql.jdbc.Connection; 
    import java.sql.DriverManager; import java.sql.ResultSet;
     import java.sql.SQLException; 
    import java.util.logging.Level; 
    import java.util.logging.Logger;
    සම්පූර්න code එක අන්තිමට තියෙන්නෙ ඕනෙ මෙන්න මේවිදියට. කොහෙවත් errors තියෙන්නෙ බෑ.

    24_zps38bd8cdf.jpg

    figure 2.4

    දැන් code එක සම්පුර්නයි. මේ code එකෙත් එකම lines repeat වෙලා තියෙනව පේනවනෙ. ඒවත් නැති කරල තවත් හොද db class එකක් ගහන්න පුලුවන්. ගුරුමුෂ්ටි ටිකක් තියාගත්ත.
     
    • Like
    Reactions: Lomax and rock pora

    CoolMan88

    Well-known member
  • Dec 27, 2012
    6,625
    2,718
    113
    compile karaddi jdbc driver (jar file eka) ekath ekka compile karanna one. eclipse/netbeans wala nam classpath gihin add karapan.
     

    rock pora

    Well-known member
  • May 18, 2011
    11,951
    2,791
    113
    ###~.:::.සියනෑ කෝරළේ.::.~##
    Driver jar eka kiyanne, oyage java class eka mySql db ekata connect karana application eka, eeka java classes godak ekathu karala jar ekak widihata bundle karapu ekak. eeka nethuwa oyage java class ekata mysql ekata katha karanna be, me site eken connector j eka dl karanna, platform independent version eka (zip file ekak) dl karala, eeka extract karala, eeke ethi mysql-conneor-java.jar kiyala file ekak, eeka oyage java class eka thiyana folder ekatama dala run karanna. http://dev.mysql.com/downloads/connector/j/

    mn oka dl karala thibbe.e jar file eka class file eka thiyen athanata damma.eth ara case ekamai,connect venne nane
     

    rock pora

    Well-known member
  • May 18, 2011
    11,951
    2,791
    113
    ###~.:::.සියනෑ කෝරළේ.::.~##

    Creating Database Connection - Java Intermediate

    ගොඩක්ම java apps හදන්නෙ mysql db එක use කරල. වෙනවෙන db servers දැනගත්තට කමක් නෑ. mysql use කරන එක තමා ලේසිම. db connection එක හදාගන්න අමතර codes ටිකක් ඕනෙ වෙනව. ඒත් ඒ codes අපි ලියන්න ඕනෙ නෑ. sql class library එක හරහා import කරල ඒ codes ගන්න පුලුවන්.

    මුලින්ම මේ Library එක DL කරගන්න.

    Download Java SQL Library 5.1.23


    හරි දැන් කලින් NetBeans IDE එකේ Create කරගත්ත StudentRegistration Project එකට මේ library එක දාල code එක ලියාගමු.

    අලුත් db class එකක් හදා ගන්න.
    Right click StudentRegistration > New > Java Class

    20_zpscd7bd05b.jpg

    figure 2.0

    Class Name එක විදියට db දාන්න. Finish.

    21_zps05b04d4b.jpg

    Figure 2.1

    හරි දැන් library එක දාගමු
    Right Click Libraries > Add JAR/Folder > Open SQL Libary jar file (see figure 2.2 n 2.3)

    22_zps1c19bb6d.jpg

    figure 2.2

    db class n SQL db library එක Add කිරීමෙන් අනතුරුව.

    23_zps4d5cc12f.jpg

    figure 2.3

    හරි දැන් Code එක ලියමු. code එක එකපාර copy paste කරල දැන්මොත් සදා අනාතයි. ඒ නිසා තේරුමක් ඇතිව ලියමු. indent කරල Step by step පැහැදිලිව ලියන්න. ඒ වගේම මෙතනදි මම හැම code එකක්ම ලියන්න වෙන්න නැති බවත් පැහැදිලි කරල දෙනව. ඒවගේම සමහර codes generate කරගන්න විදියත් දානව. ඒ නිසා Step by step කරන්න. එකපාර copy paste කලොත් ඒව දැන ගන්න බැරි වෙනව.

    db.java file එක double click කරල open කරගන්න.

    මුලින්ම Static connection එකක් හදාගන්න ඕනෙ. ඒකට db class එක ඇතුලේ උඩින්ම Static connection එක හදාගන්න.


    Code:
    static Connection con;
    දැන් insert, update, delete queries වලට එක method එකකුත් search query එකට තව method එකකුත් ලියාගමු. අපිට හැම query එකක්ම මෙතන ලියන්න බෑ. මොකද එක එක තැන්වලදි යවන query වර්ග වෙනස් වෙන නිසා. ඒ නිසා ඔක්කොම queries වලට හරියන විදියට පැරා වල String එකක් අල්ලගන්න පුලුවන් විදියට method එක ලියාගන්න.

    for insert, update, delete queries. මේ Method එකෙන් නැවත result එකක් බලාපොරොත්තු වෙන්නෙ නැති නිසාත්, method එක හරහා data db එකට යවන නිසා method එක මේ විදියට හදාගන්න.

    Code:
    public static void setData(String s) {
    }
    for search query මේ Method එකෙන් නැවත result එකක් බලාපොරොත්තු වෙනව. මොකද අපි Search කරන result එක නැවත අපි search කරපු තැනට අරගන්න ඕනෙ. ඒ නිසා return කරගන්න පුලුවන් විදියෙ method එකක් හදාගන්න.

    Code:
    public static ResultSet getdata(String c) {
     return null; 
    }
    හරි දැන් setData method එක ඇතුලට දන්න කියන codes ටික දාගන්න. cast කලේ නැති උනාට කමක් නෑ. IDE එකෙන් cast කරන්න කියල පෙන්නල IDE එකෙන්ම cast කරල දානව.

    Code:
    Class.forName("com.mysql.jdbc.Driver"); 
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");
    con.createStatement().executeUpdate(s);
    හරි දැන් exception එකක් throw වෙන නිසා exception handle කරන්න කියල IDE එකෙන් කියනව. ඒ නිසා IDE එකෙන් දෙන Option වලින් Surround block with try catch කියන option එක තෝරන්න. එතකොට method එක මෙන්න මේවිදියට තියෙන්න ඕනෙ. catch දෙකක් තිබුනට අවුලක් නෑ.



    Code:
    public static void setData(String s) {
    
     try {
     Class.forName("com.mysql.jdbc.Driver");     
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");     con.createStatement().executeUpdate(s);         
    }      catch (ClassNotFoundException | SQLException ex) {
     Logger.getLogger(db.class.getName()).log(Level.SEVERE, null, ex);
     } 
    }
    දැන් getData method එක ඇතුලට දන්න කියන codes ටික දාගන්න. cast කලේ නැති උනාට කමක් නෑ. IDE එකෙන් cast කරන්න කියල පෙන්නල IDE එකෙන්ම cast කරල දානව.

    Code:
    Class.forName("com.mysql.jdbc.Driver"); 
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");
    Search කරල එන result එක අල්ලගන්න ඕනෙ නිසා resultset එකක් ඕනෙ වෙනව. මේක තමයි අපි search query එක එවපු තැනට ආයිත් return කරන්නෙත්.


    Code:
    ResultSet rs = con.createStatement().executeQuery(c); 
    return rs;
    හරි දැන් exception එකක් throw වෙන නිසා exception handle කරන්න කියල IDE එකෙන් කියනව. ඒ නිසා IDE එකෙන් දෙන Option වලින් Surround block with try catch කියන option එක තෝරන්න. එතකොට method එක මෙන්න මේවිදියට තියෙන්න ඕනෙ. catch දෙකක් තිබුනට අවුලක් නෑ.

    Code:
    public static ResultSet getdata(String c) {
     try {
     Class.forName("com.mysql.jdbc.Driver");         
    con = (Connection) DriverManager.getConnection("jdbc:mysql:///students", "root", "123");         ResultSet rs = con.createStatement().executeQuery(c);
     return rs;
     }      catch (ClassNotFoundException | SQLException ex) {         
    Logger.getLogger(db.class.getName()).log(Level.SEVERE, null, ex);
     }      return null; 
    }
    දැන් සම්පූර්න code එක ලියාගෙන ඉවරයි. code එකේ කිසිම තැනක් රතුපාටින් තියෙන්නෙ බෑ. සමහරවිට imports වල අවුලක් තියෙන්න පුලුවන් ඒක ctrl+shift+I keys press කරල imports fix කරගන්න. මෙන්න මේටික auto import වෙලා තියෙන්නෙ ඕනෙ.

    Code:
     import com.mysql.jdbc.Connection; 
    import java.sql.DriverManager; import java.sql.ResultSet;
     import java.sql.SQLException; 
    import java.util.logging.Level; 
    import java.util.logging.Logger;
    සම්පූර්න code එක අන්තිමට තියෙන්නෙ ඕනෙ මෙන්න මේවිදියට. කොහෙවත් errors තියෙන්නෙ බෑ.

    24_zps38bd8cdf.jpg

    figure 2.4

    දැන් code එක සම්පුර්නයි. මේ code එකෙත් එකම lines repeat වෙලා තියෙනව පේනවනෙ. ඒවත් නැති කරල තවත් හොද db class එකක් ගහන්න පුලුවන්. ගුරුමුෂ්ටි ටිකක් තියාගත්ත.
    A bn uba mekata fatteta mahansi velane bn..thanx machoooo

    mata one meka note pad eken karannai,netbeans,eclipse valin karala hariyanne na.mokada ape clz eke meka kale note pad eken bn..

    mata notepad eken karala,cmd eka haraha vade karagannai one machooo
     

    u_make_me_sick_

    Well-known member
  • Oct 1, 2011
    11,522
    7,320
    113
    mn oka dl karala thibbe.e jar file eka class file eka thiyen athanata damma.eth ara case ekamai,connect venne nane

    Mage nam weda kara.mama me den test kara. Kohomada run kare? essellama javac yourClassName.java
    eeta passe java yourClassName
    ehemad?
     

    MihiCherub

    Well-known member
  • Sep 14, 2009
    18,861
    1
    9,623
    113
    Gampaha
    A bn uba mekata fatteta mahansi velane bn..thanx machoooo

    mata one meka note pad eken karannai,netbeans,eclipse valin karala hariyanne na.mokada ape clz eke meka kale note pad eken bn..

    mata notepad eken karala,cmd eka haraha vade karagannai one machooo
    Notepad will be fine for compiling a single file project. For anything more than this you will need an IDE or at least integrate with ant instead of java compiler. :yes: