Announcement

Collapse
No announcement yet.

Werte aus SQL Datenbank holen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    So jetzt ist folgender Code in der Gui-Klasse interessant:
    Code:
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
        {
               String ergebnis=ButtonDBTablezweite.getInstance().fillTextfeld();
               void zusammenfassung=ButtonDBTablezweite.getInstance().fillTable(defaultTableModel);
            if(ergebnis!=null)
                {
                jTextField1.setText(ergebnis);
                jTextArea1.setText(zusammenfassung);
                }
            else
                {
                jTextField1.setText("Kein Ergebnis");
                jTextArea1.setText("Hier ist auch kein Ergebnis!");
                }
        }



    Für die Zeile "void zusammenfassung=ButtonDBTablezweite.getInstance(). fillTable(defaultTableModel);"
    bekomm ich folgende Fehlermeldung:
    Multiple markers at this line
    - Line breakpoint:ButtonDBTable [line: 96] - jButton1ActionPerformed(ActionEvent)
    - The method fillTable(DefaultTableModel) in the type ButtonDBTablezweite is not applicable for the
    arguments ()
    - void is an invalid type for the variable zusammenfassung

    Natürlich passt dann auch nicht folgende Zeile:
    "jTextArea1.setText(zusammenfassung);"
    Was schreibe ich hier für void - wenn void noch bestehen bleibt...?



    Hier die komplette Klasse:
    Code:
    public class ButtonDBTable extends javax.swing.JFrame
    {
    	private JButton jButton1;
    	private JButton jButton2;
    	private JTextField jTextField1;
    	private JTextArea jTextArea1;
    	private JScrollPane jScrollPane1;
    	private JTable jTable1;
    	private DefaultTableModel defaultTableModel=null;
    	
     
    public ButtonDBTable()
        {
        initComponents();
        ButtonDBTablezweite.getInstance().createConnection();
        defaultTableModel=(DefaultTableModel) jTable1.getModel();
        }
     
    @SuppressWarnings("unchecked")
        private void initComponents() {
        
    	jButton1 = new JButton();
        jButton2 = new JButton();
        jTextField1 = new JTextField();
        jTextArea1 = new JTextArea();
        jScrollPane1 = new JScrollPane(jTable1);
        jScrollPane1 = new JScrollPane();
        jTable1 = new JTable();
        
     
            setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
            getContentPane().setLayout(null);
     
            jButton1.setText("jButton1");
            jButton1.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    jButton1ActionPerformed(evt);
                }
            });
            getContentPane().add(jButton1);
            jButton1.setBounds(10, 10, 79, 25);
            
            jButton2.setText("jButton2");
            jButton2.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    jButton1ActionPerformed(evt);
                }
            });
            getContentPane().add(jButton2);
            jButton2.setBounds(10, 40, 79, 25);
            
     
            jTextField1.setText("jTextField1");
            getContentPane().add(jTextField1);
            jTextField1.setBounds(100, 10, 280, 22);
            
            getContentPane().add(jTextArea1);
            jTextArea1.setText("TextArea1");
            jTextArea1.setBounds(100, 40, 400, 50);
            
            jTable1.setPreferredScrollableViewportSize(new Dimension(400, 100));
            jTable1.setBounds(100, 150, 400, 100);
            jTable1.setFillsViewportHeight(true);
            
            jTable1.setModel(new DefaultTableModel (
            		new Object [][] {
                            {"null", "Text", null, null},
                            {null, "Text", null, null},
                            {null, null, "Text", null},
                            {null, null, null, "Text"}
                        },
                        new String [] {
                            "Title 1", "Title 2", "Title 3", "Title 4"
                        }
            ));
            
           jScrollPane1.setViewportView(jTable1);
           getContentPane().add(jScrollPane1);
           jScrollPane1.setBounds(100, 100, 290, 280);
           
           pack();
            
     
            java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
            setBounds((screenSize.width-618)/2, (screenSize.height-441)/2, 618, 441);
        }
     
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
        {
               String ergebnis=ButtonDBTablezweite.getInstance().fillTextfeld();
               void zusammenfassung=ButtonDBTablezweite.getInstance().fillTable(defaultTableModel);
            if(ergebnis!=null)
                {
                jTextField1.setText(ergebnis);
                jTextArea1.setText(zusammenfassung);
                }
            else
                {
                jTextField1.setText("Kein Ergebnis");
                jTextArea1.setText("Hier ist auch kein Ergebnis!");
                }
        }
     
    @Override
    public void dispose()
        {
    	ButtonDBTablezweite.getInstance().closeConnection();
    	super.dispose();
        }
     
    public static void main(String args[])
        {
        java.awt.EventQueue.invokeLater(new Runnable()
        {
        @Override
        public void run()
            {
            new ButtonDBTable().setVisible(true);
            }
     
        });
        }
     
      }

    Comment


    • #32
      Ok ich hab das mal so geändert:
      Code:
      private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
          {
                 String ergebnis=ButtonDBTablezweite.getInstance().fillTextfeld();
                 ButtonDBTablezweite.getInstance().fillTable(defaultTableModel);
              if(ergebnis!=null)
                  {
                  jTextField1.setText(ergebnis);
                  }
              else
                  {
                  jTextField1.setText("Kein Ergebnis");
                  jTextArea1.setText("Hier ist auch kein Ergebnis!");
                  }
          }
      Und jetzt kommen wirklich nach Klick auf einen der zwei Buttons die Daten aus der SQL-Tabelle in die JTable hinein! Es ist also vollbracht! :-D

      Ich werde den Code noch etwas näher ansehen und nochmal nachvollziehen, wie was miteinander funktioniert!

      Nochmals besten Dank für die viele Hilfe über viele Fragen hinweg!!! War wirklcih beispielhaft!! Danke
      Zuletzt editiert von Einklang.; 10.06.2012, 17:07.

      Comment


      • #33
        oh tempora oh mores

        und auch selbstständig was probiert....


        Bei dem bekannten Kenntnisstand und vor allem da klar ist dass du in NetBeans und ich in Eclipse arbeite wäre solch ein Wort einfach klar als missverständlich zu beurteilen gewesen...! ;-)
        Des Weiteren macht das überhaupt keinen Unterschied welche IDE du benutzt. Das ist in allen das gleiche und ich arbeite übrigens mit beiden.....

        "Unterhalb der fillTextfield() Methode neu einfügen" hätte alles gesagt..... unmissverständlich!!
        Wozu, jeder kann das als Methode erkennen und wo die hinkommt war wohl klar, nachdem ich das etliche Male erläutert habe

        Nicht das ist das Problem, denn ich habe durchaus das Grundlagenwissen über Methoden und Klassen....!
        Nein, die letzen Beiträge von dir zeigen genau das Gegenteil.

        void zusammenfassung
        void innerhalb einer Methode????

        Aber da du ja nicht zufrieden warst mit den Antworten, spare ich mir die zukünftig....
        Zuletzt editiert von Christian Marquardt; 07.06.2012, 16:36.
        Christian

        Comment


        • #34
          Offenbar hast du woanders auch Verständnisprobleme

          http://www.java-forum.org/datenbankp...exception.html

          http://www.java-forum.org/hausaufgab...liessen-2.html
          Christian

          Comment


          • #35
            Was soll das werden wenn es fertig ist?

            Wer die Links ansieht merkt ja auch, dass ich mich immer für die Erklärungen bedanke!! Dafür sag ich aber auch, wenn sie nicht hilfreich waren und warum - damit man sich auch verbessern kann beim Lehren - denn nicht jeder der was kann, kann das auch unterrichten und man geht hier immer eine Symbiose ein...!

            Naja wenn dich das frustriert hat dann jetzt nicht anfangen mich hier zu diskreditieren... find ich jetzt nicht ganz die feine Art hier - ich hab mich noch im letzten Beitrag für die Hilfe bedankt..........! (Nachträglich dick gekennzeichnet)
            Zuletzt editiert von Einklang.; 10.06.2012, 17:20.

            Comment


            • #36
              Tja, ich schreibe dir den ganzen Code über mehrere Threads, dann
              - hast du die gleichen Fragen schon woanders gestellt
              - teilst mit, dass ich das hätte ja ausfürlicher erläutern müssen
              - und bist der Meinung über ausreichende Grundkenntnisse zu verfügen (was so leider noch nicht der Fall ist)

              das fand ich nicht so die "feine Art"
              Christian

              Comment


              • #37
                Das ist unterstes Niveau!
                - Die gleichen Fragen sind das nicht und zweitens waren die woanders schon abgeschlossen - ich habe hier NACH den Beiträgen in anderen Foren nochmal neu gefragt!! Wenn ich woanders keine Antworten erhalte und alle so tun als müsste man als Profi geboren werden dann frage ich woanders und ich war hier sehr begeistert - eigentlich - aber was du hier jetzt bietest ist auch nicht viel besser...!
                - Ich teile mit dass ich einen winzigen Teil der ganzen Erklärungen die du gegeben hast - also an einer bestimmten Stelle von dem ganzen Prozess - nicht sehr verständlich fand. Da ist wohl dem König ein Zacken aus der Krone gefallen...! Dabei kann ich nur wiederholen: Auch Lehren will gelernt sein und solche Hinweise dienen dem Lehrenden seine Hilfe noch besser zu formulieren - aber wenn der Lehrer eitel ist und sich nur bestätigt sehen will ist das natürlich schwierig - dann ist man beleidigt und die Beleidigungen fangen an...! ;-)
                - Definiere "Grundkenntnisse" und definiere "ausreichend" - bis da keine festen Werte an denen man isch orientieren kann lässt sich vortrefflich drüber diskutieren...! ;-)

                Bisher war ich echt dankbar für die viele gute Hilfe aber was du hier jetzt bietest weil ich darauf hingewiesen habe dass ein paar Hilfestellungen nicht hilfreihc waren, aus gekränktem Stolz sozusagen, hier einen versuchen zu diskreditieren ist unterste Schublade! Damit hat sich das für mich jetzt - schade der Thread ist so gut gestartet und wird von dir jetzt so saublöd beendet.... wäre ein Beispiel für viele geworden wie man SQL Datenbanken abfragt und in Tabellen bringt!

                So und damit hat sich das hier jetzt für mich weil es ist jetzt echt niveaulos - schade, hat so schön begonnen und jetzt so ein Ende!! Echt schade...

                Comment


                • #38
                  Ich kann dir gerne Grundkenntnisse und ausreichend definieren, auch die Fragen können wir vergleichen Hmm, woanders war das schon so, hier jetzt auch: "Es ist ein Geisterfahrer auf der A7 unterweges.....Einer? Hunderte"
                  Christian

                  Comment


                  • #39
                    Salve,

                    noch ein Statment von mir.
                    Hole dir erst alle tabellen deines servers, dann die eigenschaften jeder Tabelle
                    Guckst DU:

                    ADODS1->CommandText = "SELECT * FROM INFORMATION_SCHEMA.TABLES";
                    ADODS1->Active = true;

                    for( int i = 1; i <= ADODS1->RecordCount ; i++ )
                    {
                    ADODS1->RecNo = i;
                    s = ADODS1->FieldByName( "TABLE_NAME" )->AsString;
                    LB1->Items->Add(s);
                    } // for

                    s.printf( "SELECT * from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = '%s'", s1.c_str() );
                    ADODS1->Active = false;
                    ADODS1->CommandText = s;
                    ADODS1->Active = true;

                    for( int i = 1; i <= ADODS1->RecordCount ; i++ )
                    {
                    ADODS1->RecNo = i;
                    s = ADODS1->FieldByName( "COLUMN_NAME" )->AsString;
                    s1 = ADODS1->FieldByName( "DATA_TYPE" )->AsString;
                    s2.printf("%-15s - %s", s.c_str(), s1.c_str() );
                    LB2->Items->Add(s2);
                    } // for

                    gruß
                    Fred

                    Comment


                    • #40
                      Es geht um Java, da ist C/C++ des C++Builders nicht möglich
                      Christian

                      Comment

                      Working...
                      X