SQL dotaz v Javě – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

SQL dotaz v Javě – Java – Fórum – Programujte.comSQL dotaz v Javě – Java – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Nicolas0
Návštěvník
4. 4. 2012   #1
-
0
-

Ahoj, chtěl bych poradit s SQL dotazem v Javě. Na řádku 79 mně to vypisuje hlášku "unreported exception java.sql.SQLException; must be caught or declared to be thrown".

Když využiju možnost NetBeans "Surround Block with try-catch" tak se dolů pod kód připíše část:

=====================

catch (SQLException ex) {
                    Logger.getLogger(Data5.class.getName()).log(Level.SEVERE, null, ex);

=====================

Tomu ale já plně nerozumím a rád bych si vyjímku napsal sám a v nějakém jednoduchém, začátečníkovi pochopitelném formátu jako ty ostatní vyjímky. Je to možné nebo zkrátka musím použít nabídku NetBeans?

Můj kód je níže.

Díky, N.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

public class Main {
    public static void main(String[] args) {
        Data5 apl = new Data5();
    }
}

class Data5 extends JFrame {

JTabbedPane tabbedPane = new JTabbedPane();
JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
JPanel panel4 = new JPanel();
JPanel panel5 = new JPanel();
JPanel panel6 = new JPanel();

JButton button1 = new JButton("Start");

TextField textfield1 = new TextField("1",20);


public Data5 () {
super ("WH Space Calculator");
setSize (700,800);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible (true);
getContentPane().setLayout (new BorderLayout());
getContentPane().add(tabbedPane,BorderLayout.CENTER);
setSize (701,800);

tabbedPane.addTab("Action tracker",panel1);
tabbedPane.setSelectedIndex(0);
tabbedPane.addTab("Report2",panel2);
tabbedPane.addTab("Report3",panel3);
tabbedPane.addTab("..",panel4);
tabbedPane.addTab("..",panel5);

panel1.add(textfield1);
panel1.add(button1);

button1.addActionListener (new ActionButton1());
}

    class ActionButton1 implements ActionListener {
            public void actionPerformed(ActionEvent e) {

                String url = "jdbc:odbc:databaze1";
                String jmeno;
                String tisk;
                Statement pozadavek = null;
                ResultSet vysledek = null;
                Connection dB = null;
                try {
                Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
                dB = DriverManager.getConnection(url);
                }
                catch (ClassNotFoundException v) {
                  System.err.println("Nepodařilo se zavést most JDBC/ODBC." + v.getMessage());
                    System.exit(1);
                }
                catch (SQLException v) {
                  System.err.println("Nepodařilo se připojit k databázi." + v.getMessage());
                    System.exit(2);
                }
                    try {
                    String dotaz = "Select * FROM Users WHERE Heslo = 'password'";
                    pozadavek = dB.createStatement();
                    vysledek = pozadavek.executeQuery(dotaz);
                }
                catch (SQLException v) {
                  System.err.println("Chyba SQL." + v.getMessage());
                    System.exit(3);
                }
                boolean zaznamy = vysledek.next();
                if (!zaznamy) {
                    System.out.println("Nebyla vrácena žádná data");
                    System.exit(4);
                }
                try {
                do {
                    jmeno = vysledek.getString(1);
                    tisk = jmeno;
                    textfield1.setText(tisk);
                }
                while(vysledek.next());
                pozadavek.close();
                }
                catch (SQLException v) {
                  System.err.println("Chyba při zobrazaní dat." + v.getMessage());
                    System.exit(5);
                }
                        finally {
                            dB.close();
                        }
            }

    }
}

Nahlásit jako SPAM
IP: 62.209.192.–
Nicolas

Quis ut Deus?
sakal910
Stálý člen
4. 4. 2012   #2
-
0
-

Zdravím,

samozřejmě že si můžeš tu vyjímku napsat sám podle sebe:) do toho bloku catch si můžeš napsat co chceš aby ti program udělal když nastane ta vyjímka :) netbeans tam jen automaticky doplnil to co má nastavené :)

Nahlásit jako SPAM
IP: 31.222.8.–
Nicolas0
Návštěvník
4. 4. 2012   #3
-
0
-

#2 sakal91
Nj, sakra. Tak jsem asi před tím někde dělal chybu když jsem si nad tím lámal hlavu, teď mně to funguje.

Díky a sory, že jsem zbytečně otravoval :-)

Nahlásit jako SPAM
IP: 62.209.192.–
Nicolas

Quis ut Deus?
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Podobná vlákna

Tvrobra rozhrania v jave (sql) — založil mirec123

SQL dotaz — založil Jirka

Sql dotaz — založil bernie

SQL dotaz — založil Zdeněk Písařovic

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý