Προς το περιεχόμενο

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • 0
christomar

Connection MySQL me NetBeans problem..

Ερώτηση

Θέλω να συνδέσω τη MySQL στο NetBeans..προσθέτω τον driver,κάνω τη σύνδεση με τη βάση η οποία φαίνεται στο πρόγραμμα,βλέπω δηλαδή τους πίνακες και τα δεδομένα μου,αλλά όταν θέλω να προσθέσω κώδικα για τη σύνδεση προσθέτοντας το πακέτο java.sql.* δε μου το κάνει build..δηλαδή έχω τον κώδικα

 

package myexample;

import java.sql.*;

 

public class main{

public static void main(String[] args){

try {

Class.forName("com.mysql.jdbc.Driver");

String connectionUrl = "jdbc:mysql://localhost:3306/example";

Connection con = DriverManager.getConnection(connectionUrl);

 

Statement stmt = null;

ResultSet rs = null;

// SQL query command

String SQL = "SELECT * FROM names";

stmt = con.createStatement();

rs = stmt.executeQuery(SQL);

while (rs.next()) {

System.out.println(rs.getString("name") + " : " + rs.getString("age"));

}}catch (SQLException e) {

System.out.println("SQL Exception: "+ e.toString());

} catch (ClassNotFoundException cE) {

System.out.println("Class Not Found Exception: "+ cE.toString());

}

}

Και όταν το κάνω build μου γράφει: The import java.sql cannot be resolved

 

Κι όταν κάνω import com.mysql.jdbc.*; δεν αναγνωρίζει τις υπόλοιπες μεθόδους (ResultSet, getString ktl) φαντάζομαι επειδή είναι της java.sql.*. Τι κάνω λάθος?

Αλλιώς πώς μπορώ να προσθέσω queries για τη βάση μου ώστε να αποθηκεύονται καπου τα αποτελέσματα από τα queries?

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

4 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

μηπως πρεπει να ορισεις καποιο classpath για τον compiler?

μηπως ειναι προβλημα στα settings του netbeans.

 

απο cmd line, με το javac.exe το κάνει compile;

 

 

αν σβήσεις το

import java.sql.*;

 

και βάλεις :

import java.sql.Connection;

import java.sql.Statement;

import java.sql.ResultSet;

import java.sql.SQLException;

θα παίξει;

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
μηπως πρεπει να ορισεις καποιο classpath για τον compiler?

μηπως ειναι προβλημα στα settings του netbeans.

 

απο cmd line, με το javac.exe το κάνει compile;

 

 

αν σβήσεις το

import java.sql.*;

 

και βάλεις :

import java.sql.Connection;

import java.sql.Statement;

import java.sql.ResultSet;

import java.sql.SQLException;

θα παίξει;

 

Το ίδιο μου βγαίνει κι αν προσθέσω τα Imports που έβαλες και αφαιρέσω το java.sql.*

Όταν φτιάχνω queries από sql commands και τα κάνω run από εκεί,τα queries βγάζουν αποτελέσματα κανονικά από κάτω..αυτά όμως δεν ξέρω πώς μπορώ να τα προσθέσω στον κώδικά μου..δεν καταλαβαίνω τι γίνεται..

πώς μπορώ να ορίσω classpath για τον compiler?Πάω στο project-->properties-->build-->compiling όμως δε μου έχει επιλογή για να ορίσω classpath.Παρεπιπτόντως χρησιμοποιώ το NetBeans 6..

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Katarxin prepei na katebaseis to Mysql JDBC pou periexei to arxeio mysql-connector-java-5.0.6-bin.jar

http://dev.mysql.com/downloads/connector/j/5.0.html

 

Meta phgaineis sto project sou sto netbeans kai sta libraries kaneis deksi click -> Add Jar/Folder kai epilegeis to mysql-connector-java-5.0.6-bin.jar (opou to exeis kanei unzip/untar)

 

Connection example class:

 

>
/*
* DBConnection.java
*
* Created on 2005/01/16, 10:50
*/

package mypackage;

import java.sql.*;

/**
*
* @author Charalampos Pournaris
*/
public class DBConnection {
   private String dbhost;
   private String dbuser;
   private String dbpass;
   private String dbname;
   private boolean isConnected;
  
   private Connection myConnection;
   
   /** Creates a new instance of MyDBConnection */
   public DBConnection(String dbhost, String dbuser, String dbpass, String dbname) {
       this.dbhost = dbhost;
       this.dbuser = dbuser;
       this.dbpass = dbpass;
       this.dbname = dbname;
       this.isConnected = false;
       init();
   }

   public void init(){
   
      try{
       
       Class.forName("com.mysql.jdbc.Driver");
       DriverManager.setLoginTimeout(1);
       myConnection=DriverManager.getConnection(
               "jdbc:mysql://"+dbhost+"/"+dbname+"?useUnicode=true&characterEncoding=greek&characterSetResults=greek",dbuser, dbpass
               );
       isConnected = true;
       }
       catch(Exception e){
           System.out.println("Failed to get connection to "+dbhost+" Error: "+e);
       }
   }
   
   public Statement createStatement(boolean updateable) {
       Statement stmt = null;
       try {
           if (!updateable) {
               stmt = myConnection.createStatement();
           } else {
               stmt = myConnection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
           }
       } catch(SQLException e) {
           System.out.println("SQL Exception: "+e);
           System.exit(1);
       }
       
       return stmt;
   }
   
   public Connection getMyConnection(){
       return myConnection;
   }
   
   
   public void close(ResultSet rs){
       
       if(rs !=null){
           try{
              rs.close();
           }
           catch(Exception e){}
       
       }
   }
   
    public void close(java.sql.Statement stmt){
       
       if(stmt !=null){
           try{
              stmt.close();
           }
           catch(Exception e){}
       
       }
   }
    
    public boolean getStatus() {
        return isConnected;
    }
    
 public void destroy(){
 
   if(myConnection !=null){
   
        try{
              myConnection.close();
           }
           catch(Exception e){}
       
       
   }
 }
   
}

 

Gl

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Tο είχα κάνει από την αρχή αυτό,αλλά δεν είχε διαφορά.Anyway,τελικά δε μου χρειάζεται γιατί τα κάνω με το Visual SQL Editor που έχει το netbeans.Ευχαριστώ πάντως!

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
×
×
  • Δημιουργία νέου...