Java+Firebird brak błędów a program nie działa

0

Witam,
dostałem za zadanie napisać prostą bazę z wykorzystaniem firebirda (dodam, że nigdy z firebirda nie korzystałem). Ściągnąłem sterownik i napisałem program testowy żeby sprawdzić czy działa. Na początku wywalało kilka błędów, aż w końcu doszedłem do takiego kodu i teraz jest tak, że ani nie wywala błędów ani nie wyświetla informacji z bazy. Proszę o wskazówki i porady. Oto kod:

 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.firebirdsql.jdbc.*;



public class test {

	
	public static void main(String[] args) {
	
		Connection polaczenie = null;
		ResultSet result =null;
		Statement statement =null;
		
		String zapytanie = "SELECT *FROM PROBA";
		
		try{
			Class.forName("org.firebirdsql.jdbc.FBDriver").newInstance();
			polaczenie = DriverManager.getConnection("jdbc:firebirdsql://localhost:3050/F:/TEST.fdb", "sysdba", "masterkey");
			statement = polaczenie.createStatement();
			
			result = statement.executeQuery(zapytanie);
			while(result.next()){
				String id = result.getString("ID");
				String imie = result.getString("IMIE");
				String nazwisko = result.getString("NAZWISKO");
				System.out.println(id+" "+imie+" "+nazwisko);
			}
		}catch(Exception e){
			System.out.println("Cos jest nie tak");
		}
	
		
		
	}

}

0

Podstawowe pytanie: czy w tabeli Proba znajdują się jakiekolwiek dane?

0

Tak znajdują się dwa rekordy.

0

Ehh do pętli nie wchodzi :-(

0

Dostajesz chociaż jeden rekord w wyniku wykonania tego zapytania? rs.next() ma wartość false, czy true?

0

No właśnie nie dostaję nic. result.next() ma wartość false.
Teraz próbowałem zrobić podobnie jak w innym programie który pisałem pod mysql-a i dalej to samo(czyli nic się nie dzieje):

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

import javax.swing.JScrollPane;
import javax.swing.JTable;
import org.firebirdsql.jdbc.*;

public class test {
	
	public static void main(String[] args) {
		Connection polaczenie = null;
		String sterownik = "org.firebirdsql.jdbc.FBDriver";
		
			
		try {
			Class.forName(sterownik).newInstance();
		} catch (InstantiationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
			try {
				polaczenie = DriverManager.getConnection("jdbc:firebirdsql://localhost:3050/F:/TEST.fdb", "sysdba", "masterkey");
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			
			
			try {
				Statement statement = polaczenie.createStatement();
				ResultSet result=statement.executeQuery("SELECT *FROM PROBA");
				System.out.println(result.next());
				 while(result.next()){
                     String id = result.getString("ID");
                     String imie = result.getString("IMIE");
                     String nazwisko = result.getString("NAZWISKO");
                     System.out.println(id+" "+imie+" "+nazwisko);
             }
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			  
	}
}
 
0

Spróbuj może tym programem wstawić jakieś dane do bazy. Potem spróbuj je odczytać.

0

SELECT *FROM PROBA
To zapytanie jest niepoprawne, nie wiem czy tak samo masz w swoim programie czy tylko na tym listingu
SELECT * FROM PROBA - zabrakło spacji

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