[JAVA] Ms access Database

Pagina: 1
Acties:
  • 164 views sinds 30-01-2008
  • Reageer

  • ErA
  • Registratie: Juli 2001
  • Laatst online: 25-08 20:26
Ok als eerste; JA ik heb me helemaal rotgezocht, al 2 uur lang. Ik snap van geen van die sites de bedoeling.

Mijn vraag is: Hoe voeg ik via een sql query gegevens toe aan de MS access database, in een JAVA applet.

hieronder de code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
// Proftaak
// Connectie met de database

import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import KaartDatabase.*;



public class toets extends Applet
{
    boolean verbind;
    TextField invoer, uitvoer;
    KaartDatabase Database;
    String database = "Database";
    Label verbinding;
    String query = "";
    String query2 = "";
    String query3 = "";
    String updatequery = "";
    Button submit, retrieve;
    int a;
    int update;

   


    public void init()
    {
        setLayout( null);
        setBackground( Color.gray );
        invoer = new TextField("");
        invoer.setBounds( 140, 50, 500, 100 );
        add( invoer );
        uitvoer = new TextField("");
        uitvoer.setBounds( 140, 170, 500, 100 );
        add( uitvoer );
        verbinding = new Label("");
        verbinding.setBounds ( 5, 560, 300, 20 );
        add( verbinding );
        Database = new KaartDatabase();
        Database.verbind( database );
        Database.select( query );
        Database.update( updatequery );
        submit = new Button( "Submit" );
        submit.addActionListener( new KnopHandler() );
        submit.setBounds( 340, 320, 100, 30 );
        retrieve = new Button( "retrieve" );
        retrieve.addActionListener( new GetHandler() );
        retrieve.setBounds( 200, 320, 100, 30 );
        add( submit );
        add( retrieve );
    }
    
    
    
    public void paint( Graphics g )
    {
        if( Database.verbind( database ) == true )
        {
            verbinding.setText( "Er is verbinding met de database." );
        }
        
        if( Database.verbind( database ) == false )
        {
            verbinding.setText( "Er is GEEN verbinding met de database." );
        }
    }
    
    
    
    //najah let niet op het zooitje, hieronder moet dus het toevoegen gebeuren. Let vooral niet op mijn 
    //zeer maffe gebruik van de tekstvelden.
    //
    class KnopHandler implements ActionListener
    {
        public void actionPerformed( ActionEvent e )
        {
            String updatequery = "INSERT INTO INSCHRIJVING VALUES(" + invoer.getText() + "," + uitvoer.getText()  + ")";
            uitvoer.setText( "" + updatequery );
                        
        }
    }
    
    //Dit is dus het lees gedeelte wat prima werkt.
    // Dat rare sommetje is omdat onze leraren geen klassen ofzo kunnen maken waardoor
    //er blokjes verschene voor en achter de daadwerkelijke tekst
    class GetHandler implements ActionListener
    {
        public void actionPerformed( ActionEvent e )
        {
            String query = "SELECT LEERLING.Wachtwoord FROM LEERLING WHERE Leerlingnummer=" + invoer.getText();
            String query2 = Database.select( query );
            a = query2.length();
            query3 = query2.substring ( 2,a-2 );
            uitvoer.setText( "" + query3 );
            
            
        }
    }
}

  • whoami
  • Registratie: December 2000
  • Laatst online: 14:10
Lees ff de quickstart:
Welkom in P&W -> Quickstart (update 2/10/2002)

Je post hier dat je veel gesearched hebt, vervolgens post je je vraag en dan een lap code.
Wat is het probleem precies? Wat lukt er , wat lukt er niet?
Waarom post je niet enkel de relevante code, waarom post je het specifieke probleem niet etc....

Heb je een connectie met de databank?
Voer je je queries wel uit....

https://fgheysels.github.io/


  • ErA
  • Registratie: Juli 2001
  • Laatst online: 25-08 20:26
Ok zoals ik al zei, lezen is geen probleem. Ik kan een zon query doen. Maar wat ik niej snap is hoe ik iets moet toevoegen. Stel ik heb

Insert into inschrijving values( 12345 , 1);

Hoe in hemelsnaam moet ik die uitvoeren?

Dat is dus mijn probleem waar ik echt compleet internet voor heb afgezocht.

Daar staan allemaal leuke oplossing waar ik niet veel aan heb. Want ik kan me niet voorstellen dat ik alleen voor het wegschrijven 1 kantje extra code zou moeten toevoegen.

Dus om uiteindelijk mijn vraag her te formuleren. Wat moet ik toevoegen aan de bestaande code om iets in mijn database weg te schrijven.

  • pasz
  • Registratie: Februari 2000
  • Laatst online: 16-08 23:04

woei!


  • ErA
  • Registratie: Juli 2001
  • Laatst online: 25-08 20:26
Mjah ik heb dus al ongeveer 30 van die tutorials gelezen en met geen van alle kom ik er uit.
En deze stond dus bijna hetzelfde (ja bijna kan je hier beschouwen als volledig) op een andere site.

Maar mijn grootste vraag is dus. ALs ik nu gewoon al kan lezen. Waarom moet ik dan 50 regels code erbij doen om weg te schrijven. Is het niet mogelijk voor zover jullie kunnen zien om met mijn huidige code en een kleine aanpassing weg te schrijven?

Verwijderd

Je moet de goede jdbc driver zoeken.(moet dus beschikbaar zijn voor de applett)

Dan kan je die laden

Class.forName("jdbcdriver");

Verbinding maken:

Connection connect = Drivermanager.getConnection(url, user, password);

Statment stmt = connect.createStatement();

bij een insert: stmt.executeUpdate(query);

bij een select: Resultset rs = stmt.executeQuery(query);

Zo globaal ongeveer.

Als je de goede jdbc kan vinden staat daar wel ergens hoe de url eruit moet zien. En voor de rest kan je nu met de apidocs aan de slag. Ik weet dus niet welke driver je moet hebben.

[ Voor 1% gewijzigd door Verwijderd op 13-01-2003 16:06 . Reden: driver = string ]


  • momania
  • Registratie: Mei 2000
  • Laatst online: 12:39

momania

iPhone 30! Bam!

Als je nou na de tabel in de INSERT INTO ook even de kolommen specificeerd die je wilt vullen zal het waarschijnlijk wel gaan...
code:
1
INSERT INTO "table_name" ("column1", "column2", ...) VALUES ("value1", "value2", ...)


nu doe je dit:
code:
1
INSERT INTO "table_name" VALUES ("value1", "value2", ...)

[ Voor 16% gewijzigd door momania op 13-01-2003 17:15 ]

Neem je whisky mee, is het te weinig... *zucht*


  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
We kunnen _echt_ niets zonder de code van je KaartDatabase class. Als er in die class geen methode/voorzieningen bied voor updaten van een Database dan zul je die class moeten herschrijven. En ja, dat moet dmv de code die in al die 30 tutorials staat en hier ook al staat :)

BTW momania: de INSERT syntax mag ook zonder opsomming van de cols, maar die hoeven allemaal niet tussen dubbele quotes hoor. Mag zelfs niet :)

  • momania
  • Registratie: Mei 2000
  • Laatst online: 12:39

momania

iPhone 30! Bam!

Glimi schreef op 13 January 2003 @ 22:01:
BTW momania: de INSERT syntax mag ook zonder opsomming van de cols, maar die hoeven allemaal niet tussen dubbele quotes hoor. Mag zelfs niet :)
Weet ik wel, maar ik heb altijd geleerd dat als je compleet blijft je ook nooit meer wat vergeet :)
En dat van die quotes.... 't gaat natuurlijk om de syntax en wat met quotes aangegeven staat zijn de inputs (maar dat weet jij ook wel ;) :P ) ...
Had het ook met < & > kunnen doen...

Neem je whisky mee, is het te weinig... *zucht*


  • Nexopheus
  • Registratie: Juni 2001
  • Laatst online: 28-01 13:50
Als je goed zoekt kun je veel vinden en niet alles wat je vindt is dat wat je zoekt.,

http://developer.java.sun...ing/Database/JDBC20Intro/

Als je het hier niet uit kunt halen. Het wegschrijven van data kost dus echt geen 50 regels code extra. Het is gewoon een kwestie van het maken van de juiste query en het aanroepen van de juiste methode.
Steek wat extra tijd in het doorlezen van die tutorials daar leer je toch het meeste van.

Suc6 ermee,

http://developer.java.sun...tro/JDBC20.html#JDBC202_4

[ Voor 10% gewijzigd door Nexopheus op 14-01-2003 00:22 ]

Wat niet kan is nog nooit gebeurd

Pagina: 1