Avatar billede bearhugx Nybegynder
15. september 2001 - 09:20 Der er 1 kommentar og
1 løsning

MySql og DriverManager.getConnection()

Hejsa ekspeter

Jeg har downloaded org.gjt.mm.mysql-pakken, og forsøger nu at indsætte nogle værdier til db\'en...

Jeg er i stand til at loade klassen org.gjt.mm.mysql.Driver -
Men...

når jeg forsøger at lave en connection til db\'en går det galt - her er min kode :

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

public class CreateDB {
  private Connection conn;
  private Statement stmt;

  public static void main(String args[]) {
      new CreateDB();
  }
  public CreateDB() {
        loadJDBCDriver();
      try {
        conn = getConnection(\"test\");
        stmt = conn.createStatement();

        createTables(stmt);
        populateTables(stmt);

        stmt.close();
        conn.close();
      }
      catch(SQLException ex) {
        ex.printStackTrace();
      }
  }
  private void createTables(Statement stmt) {
[...klippet for korthed...]  }
  private void populateTables(Statement stmt) {
[...klippet for korthed...]
  }
  private void loadJDBCDriver() {
      try {
        Class.forName(\"org.gjt.mm.mysql.Driver\");
        System.out.println(\" Loaded class : org.gjt.mm.mysql.Driver\");
      }
      catch(ClassNotFoundException e) {
          System.out.println(\" Could not find org.gjt.mm.mysql.Driver\");
        e.printStackTrace();
      }
  }
  private Connection getConnection(String dbName) {
      Connection con = null;
      try {
        con = DriverManager.getConnection(
            \"jdbc:mysql:\"+dbName);
      }
      catch(SQLException sqe) {
        System.err.println(\"Couldn\'t access \" + dbName);
      }
      return con;
  }     
}

PS : Koden er rippet fra en gut, som ville tilgå cloudscape-db\'en (hvilket er min undskyldning for placeringen af \'{\' && \'}\' )

mappen \'test\' ligger i MySql\'s data-mappe (default)

hvis det har noget at sige : jeg kører Win98

/Søren
Avatar billede mipe1 Nybegynder
15. september 2001 - 14:23 #1
Et eksempel fra noget af mit kode:
String driver = \"org.gjt.mm.mysql.Driver\";
String connectionStr = \"jdbc:mysql://localhost/minDB\";
String user = \"en bruger\";
String password= \"et password\";

Class.forName(driver);
con = DriverManager.getConnection(connectionStr,user,password);

Ser ud til at du mangler hostname i
con = DriverManager.getConnection(\"jdbc:mysql:\"+dbName);

Hvad med
con = DriverManager.getConnection(\"jdbc:mysql://localhost/\"+dbName);
/mic
     
Avatar billede bearhugx Nybegynder
19. september 2001 - 01:18 #2
Det var lige det (hostnavn), der skulle til ... Tak!!
/Søren
/*
Ser ud til at du mangler hostname i
con = DriverManager.getConnection(\"jdbc:mysql:\"+dbName);

Hvad med
con = DriverManager.getConnection(\"jdbc:mysql://localhost/\"+dbName);
/mic
*/
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB