błąd DriverManager.getConnection(Unknown Source)-Java

2011-09-13 12:54
0

proszę o pomoc. nie wiem dlaczego program nie może znaleźć bazy danych MySQL. Próbowałam także z nazwą użytkownika i hasłem do bazy. I nic. Być może wpisałam zły parametr getConnection, może pliki bazy są w niewłaściwym katalogu. Oto kod:

package gra1;

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

public class bazadanych {
private Connection conn = null;
private Statement statement = null;
private ResultSet resultset = null;
public void czytajBaze() throws Exception, SQLException {

    try {
        Class.forName("com.mysql.jdbc.Driver");
        conn = DriverManager.getConnection("jbdc:mysql://localhost:3306/pracownicy");
        statement = conn.createStatement();
        resultset = statement.executeQuery("select * from pracownicy");
        System.out.println("wynik: " + resultset);  
    }
    catch (Exception e){
        throw e;
    }

a to komunikat o błędzie:
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at gra1.bazadanych.czytajBaze(bazadanych.java:17)
at gra1.jjhgj.main(jjhgj.java:36)

Pozostało 580 znaków

2011-09-13 13:09
0

Nie, to nie jest komunikat błędu. To jest informacja, gdzie wystąpił. Zgubiłeś pierwszą linijkę :>

Pozostało 580 znaków

2011-09-13 13:38
0

jasne. Sorki. Dzięki. To cały komunikat:

Loading temp lib: E:\DOCUME~1\King\USTAWI~1\Temp\jna9005361073409484383.hunspell-win-x86-32.dll
Exception in thread "main" java.sql.SQLException: No suitable driver found for jbdc:mysql://localhost:3306/pracownicy
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at gra1.bazadanych.czytajBaze(bazadanych.java:17)
at gra1.jjhgj.main(jjhgj.java:36)

Pozostało 580 znaków

2011-09-13 13:53
0

No... komunikat nie dotyczy "nieznalezienia bazy danych", tylko tego, że nie można załadować sterownika do bazy danych. Musisz pobrać tzw. connectora: http://dev.mysql.com/usingmysql/java/ i on dostarczy Ci tę klasę, którą próbujesz załadować tuż przed połączeniem się z bazą danych. Tutoriali, jak to zrobić, poszukaj na necie ;)

Pozostało 580 znaków

2011-09-13 17:07
0

Przy okazji widzę błąd w składni. Jest
conn = DriverManager.getConnection("jbdc:mysql://localhost:3306/pracownicy");

Powinno być
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/pracownicy");

edytowany 2x, ostatnio: Arctor75, 2011-09-13 17:08
Pewnie to ta literówka powodowała, że nie był znaleziony odpowiedni sterownik ;) - [losowa nazwa] 2011-09-13 18:08

Pozostało 580 znaków

2011-09-13 22:53
0
[losowa nazwa] napisał(a)

Musisz pobrać tzw. connectora: http://dev.mysql.com/usingmysql/java/ i on dostarczy Ci tę klasę, którą próbujesz załadować tuż przed połączeniem się z bazą danych.

ale ja już mam w Referenced Libraries plik mysql-connector-java-5.1.17-bin.jar. Więc dalej nie wiem o co chodzi.

Arctor75, zmieniłam literówkę i wyszedł jeszcze większy hardcore:

Exception in thread "main" java.sql.SQLException: Access denied for user 'king'@'localhost' (using password: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3597)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3529)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:935)
at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4101)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1300)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2337)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2370)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2154)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at gra1.bazadanych.czytajBaze(bazadanych.java:17)
at gra1.jjhgj.main(jjhgj.java:36)

Pozostało 580 znaków

2011-09-13 22:58
0

Access denied for user 'king'@'localhost' (using password: YES)

Taki problem rozkmninić co tutaj pisze?
No to Ci podpowiem: ODMOWA DOSTĘPU DLA UŻYTKOWNIKA 'KING'@'LOCALHOST' (UŻYWA HASŁA: TAK)


Nie pisz do mnie PM o czymś co nie dotyczy bezpośrednio mnie. | Nie rozmawiaj ze mną jeśli brak Ci kultury (wystarczy że mi brakuje) | Nie jestem zły, jestem po prostu zły.
edytowany 2x, ostatnio: payl, 2011-09-13 23:00

Pozostało 580 znaków

2011-09-13 23:17
0
payl napisał(a)

Access denied for user 'king'@'localhost' (using password: YES)

Taki problem rozkmninić co tutaj pisze?
No to Ci podpowiem: ODMOWA DOSTĘPU DLA UŻYTKOWNIKA 'KING'@'LOCALHOST' (UŻYWA HASŁA: TAK)

To rozumiem, ale nie wiem dlaczego występuje ten błąd. Nazwa użytkownika King, to nazwa konta w Windowsie. Chyba, że w MySQL jest inny domyślny użytkownik, ale nie wiem jaki.

Pozostało 580 znaków

2011-09-14 00:09

Jeśli MySQL postawiony za pomocą np XAMPP-a i ustawienia nie zmienione to domyślnie masz login root i bez hasła.

Pozostało 580 znaków

2011-09-14 10:17
0

jednak użytkownik root i z hasłem. działa. Wszystkim bardzo dziękuję :)

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0