Avatar billede flimmerdreng Nybegynder
15. juni 2005 - 12:18 Der er 3 kommentarer og
1 løsning

søgning udfra oplysning i tekstfelt i ACCESS

Jeg har tidligere oprettet en tråd, men fandt ingen løsning. jeg ønsker at foretage en forespørgsel i min database ud fra den oplysning jeg angiver i et tekstfelt, men det er vist en svær nød at knække. Min applet klasse kommer her


import java.util.*; 
import java.io.*; 
import java.applet.Applet; 
import java.awt.*; 
import java.awt.event.*;   
import java.sql.*;

public class Brugerflade extends Applet  implements ActionListener 
{                                                               

    public String username = "";
    public String password = ""; 
    boolean userValid = false;
    Button KnapDagplan, KnapFamilie, KnapAftaler, KnapMedicin, KnapJournal, KnapAndet, KnapOK, KnapOKCPR, KnapDoktor, KnapAndet2, KnapJournal2, KnapDagplan2, KnapAftaler2;
    TextArea SkriveFlade;
    TextField CPR;
    Label Forfatter, Til;
    String var1, var2, var3, var4;

    Database data ;   
   
    Aftaler aft = new Aftaler();
    Journal ajour = new Journal();
    Dagplan dag = new Dagplan();
    Andet and = new Andet();




    public void init() 

   
    {  setLayout(new FlowLayout());
      while (!userValid) login();
      data = new Database();

       
        CPR = new TextField("");
        CPR.setColumns(12);
        CPR.setBackground(Color.green);
        KnapOKCPR = new Button("CPR OK");
        KnapOKCPR.setBackground(Color.green);
        KnapDagplan = new Button("Dagplan");
        KnapDagplan.setBackground(Color.blue);
        KnapDagplan2 = new Button("Opd. Dagplan");
        KnapDagplan2.setBackground(Color.blue);
        KnapAftaler = new Button("Aftaler");
        KnapAftaler.setBackground(Color.yellow);
        KnapAftaler2 = new Button("Opd. Aftaler");
        KnapAftaler2.setBackground(Color.yellow);
        KnapJournal = new Button("Patient-Journal");
        KnapJournal.setBackground(Color.red);
        KnapJournal2 = new Button("Opd. Journal");
        KnapJournal2.setBackground(Color.red);
        KnapAndet = new Button("andet");
        KnapAndet.setBackground(Color.ORANGE);
        KnapAndet2 = new Button("Opd. Andet");
        KnapAndet2.setBackground(Color.ORANGE);
        KnapFamilie = new Button("Pårørende");
        KnapFamilie.setBackground(Color.magenta);
        KnapDoktor = new Button("Egen læge");
        KnapDoktor.setBackground(Color.cyan);
        KnapMedicin = new Button("Medicin Cardex");
        KnapMedicin.setBackground(Color.lightGray);
         
       
        SkriveFlade = new TextArea(25,50);
       
        Forfatter = new Label("Flemming Steenstrup Jakobsen");   
       

       
       
        add(CPR);
        add(KnapOKCPR);       
        add(KnapFamilie);
        add(KnapDoktor);
        add(KnapMedicin);
        add(KnapDagplan);
        add(KnapDagplan2);     
        add(KnapAftaler);
        add(KnapAftaler2);
        add(KnapJournal);
        add(KnapJournal2);
        add(KnapAndet);
        add(KnapAndet2);               
        add(Forfatter);
        add(SkriveFlade);
       
        KnapDagplan.addActionListener(this);
        KnapDagplan2.addActionListener(this);
        KnapOKCPR.addActionListener(this);
        KnapFamilie.addActionListener(this);
        KnapAftaler.addActionListener(this);
        KnapAftaler2.addActionListener(this);
        KnapMedicin.addActionListener(this);
        KnapJournal.addActionListener(this);
        KnapAndet.addActionListener(this);
        KnapAndet2.addActionListener(this);
        KnapDoktor.addActionListener(this);
        KnapJournal2.addActionListener(this);
        KnapDagplan2.addActionListener(this);
       
    } 
 
  public void login() {
  MyLogin login = new MyLogin (new Frame(""));
  requestFocus();
  if (login.id) {
    username = login.username.getText();
    password = login.password.getText();
    userValid = validateUser(username , password);
    System.out.println(userValid?"valide":"invalide");
    }
  login.dispose();
  }
 
  private boolean validateUser(String usr, String pwd) {
    // here you will code some logic to validate the username
    // password... for testing purpose :
    //                username = java  password = avaj
    return (usr.equals("java") && pwd.equals("avaj"));
    }

  public void actionPerformed(ActionEvent e)
  {
                 
           
        if (e.getSource() == KnapOKCPR)
       
          { 
              try 
              { 
                  SkriveFlade.setText(null);
                  SkriveFlade.setText(data.HentPat());
                 
                 
                }
              catch (Exception fejl2)
              {
                fejl2.printStackTrace();
                SkriveFlade.setText("Fejl i forbindelsen... Prøv senere " + fejl2);
                 
              }
            } 
     
        if (e.getSource() == KnapDagplan)
       
          { 
              try 
              { 
                 
                  SkriveFlade.setText(dag.hentDagplan());
                 
                }
              catch (Exception fejl3)
              {  SkriveFlade.setText("Data ikke tilgængelig " + fejl3); 
                }
            }
           
            if (e.getSource() == KnapDagplan2)
       
          { 
              try 
              { 
                  var1 = (SkriveFlade.getText());
                  dag.gemDagplan(var1);
                 
                }
              catch (Exception fejl3)
              {  SkriveFlade.setText("Data kan ikke gemmes " + fejl3); 
                }
            } 
          if (e.getSource() == KnapFamilie)
          {
              try
                {
                  SkriveFlade.setText(data.HentFam());
                 
                }
             

                  catch (Exception fejl4)
                {
                  SkriveFlade.setText("Fejl i forbindelsen... Prøv senere " + fejl4);
                }
      }
      if (e.getSource() == KnapAftaler)
       
          { 
              try 
              { 
                 
                  SkriveFlade.setText(aft.hentAftaler());
                }
              catch (Exception fejl5)
              {
                  SkriveFlade.setText("Data ikke tilgængelig " + fejl5);
                }
            }
           
            if (e.getSource() == KnapAftaler2)
       
          { 
              try 
              { 
                  var2 = (SkriveFlade.getText());
                  aft.gemAftaler(var2);   
                 
                }
              catch (Exception fejl6)
              {
                  SkriveFlade.setText("Data kan ikke gemmes " + fejl6);
                }
            } 
      if (e.getSource() == KnapMedicin)
       
          { 
              try 
              { 
                  SkriveFlade.setText(data.HentMed());   
                }
              catch (Exception fejl7)
              {
                  SkriveFlade.setText("Fejl i forbindelsen... Prøv senere " + fejl7);
                }
            }
      if (e.getSource() == KnapJournal)
       
          { 
              try 
              { 
                  SkriveFlade.setText(ajour.hentJournal());
                }
              catch (Exception fejl8)
              {
                  SkriveFlade.setText("Data ikke tilgængelig " + fejl8);
                }
        } 
           
            if (e.getSource() == KnapJournal2)
       
          { 
              try 
              { 
                    var3 = (SkriveFlade.getText());
                    ajour.gemJournal(var3);     
                 
                }
              catch (Exception fejl9)
              {
                  SkriveFlade.setText("Data kan ikke gemmes " + fejl9);
                }
        } 
           
      if (e.getSource() == KnapAndet)
       
          { 
              try 
              { 

                  SkriveFlade.setText(and.hentAndet());
                 
                }
              catch (Exception fejl10)
              {  SkriveFlade.setText("Data ikke tilgængelig " + fejl10); 
                }
            }
           
            if (e.getSource() == KnapAndet2)
       
          { 
              try 
              { 
                    var4 = (SkriveFlade.getText());
                    and.gemAndet(var4);   
                   
                 
                }
              catch (Exception fejl11)
              {  SkriveFlade.setText("Data kan ikke gemmes " + fejl11); 
                }
            }
      if (e.getSource() == KnapDoktor)
       
          { 
              try 
              { 
                  SkriveFlade.setText(data.HentDok());
                 
                 
                }
              catch (Exception fejl12)
              {  SkriveFlade.setText("Fejl i forbindelsen... Prøv senere " + fejl12); 
                }
            } 
           

   
}
}

og her kommer min database klasse så, hvor forespørgsler og forbindelse ligger i.

import java.util.*;
import java.sql.*;
import java.io.*;

public class Database
{
  java.sql.Connection forb;
  java.sql.ResultSet rs;
  java.sql.Statement stmt;
  String a = "";
  String b = "";
  String c = "";
  String d = "";
 
  Brugerflade tekst = new Brugerflade();
public void forbind() 
{
try {

   
String url = "jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ=C:\\Documents and Settings\\Flemming\\Dokumenter\\PATIENTER.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
forb = DriverManager.getConnection(url);
stmt = forb.createStatement();

}

catch (Exception err) {
err.printStackTrace();
}
}

public String HentPat() throws SQLException
{       
        forbind();
        rs = stmt.executeQuery("SELECT * FROM patienten WHERE CPRnr = '1602160234'");
        a = "";
          while (rs.next())
          {  String cpr = rs.getString("CPRnr"); 
              String pnavn = rs.getString("PatNavn");
              String padresse = rs.getString("PatAdresse");
              int ppostnr = rs.getInt("PatPostnr");
              String pby = rs.getString("PatCity");
              int ptlf = rs.getInt("PatTlfnr");
              a = a+"\n"+cpr+"\n"+pnavn+"\n"+padresse+"\n"+ppostnr+"\n"+ptlf
              +"\n"+pby+"\n"+ptlf;
             
          }
         
         
            rs.close();
           
            return a;
           
             
 
}
    public String HentFam() throws SQLException
{       
      try { 
       
        forbind();
        rs = stmt.executeQuery("SELECT * FROM familie WHERE CPRnr = '1602160234'");
        b = "";
             
          while (rs.next())
          {  String cpr = rs.getString("CPRnr"); 
              String fnavn = rs.getString("Famnavn1");
              String fadresse = rs.getString("Famdresse1");
              int fpostnr = rs.getInt("Fampostnr1");
              String fby = rs.getString("Famcity1");
              int ftlf = rs.getInt("Famfasttlf1");
              int fmob = rs.getInt("Fammobil1"); 
              String fnavn2 = rs.getString("Famnavn2");
              String fadresse2 = rs.getString("Famadresse2");
              int fpostnr2 = rs.getInt("Fampostnr2");
              String fby2 = rs.getString("Famcity2");
              int ftlf2 = rs.getInt("Famfasttlf2");
              int fmob2 = rs.getInt("Fammobil2");
              b = b+"\n"+cpr+"\n"+fnavn+"\n"+fadresse+"\n"+fpostnr+"\n"+fby+"\n"+ftlf+"\n"+fmob+"\n"+fnavn2+"\n"+fadresse2+"\n"+fpostnr2+"\n"+fby2+"\n"+ftlf2+"\n"+fmob2;
//         
          }
      }

      catch (Exception fejl2)
              {
                fejl2.printStackTrace();
                System.out.println("Fejl i forbindelsen... Prøv senere " + fejl2);
                 
              }
        rs.close();
             
        return b; 
}         
    public String HentDok() throws SQLException

       
        rs = stmt.executeQuery("SELECT * FROM doktor WHERE CPRnr = '1602160234'");
        c = "";     
          while (rs.next())
          {  String cpr = rs.getString("CPRnr"); 
              String dnavn = rs.getString("Patdok");
              String dadresse = rs.getString("Patdokadresse");
              int dpostnr = rs.getInt("Patdokpostnr");
              String dby = rs.getString("Patdokcity");
              int dtlf = rs.getInt("Patdoktlf");
              c = c+cpr+"\n"+dnavn+"\n"+dadresse+"\n"+dpostnr+"\n"+dby+"\n"+dtlf;
             
          }
rs.close();

return c;         
}

    public String HentMed() throws SQLException

       
        ResultSet rs = stmt.executeQuery("SELECT * FROM medicin WHERE CPRnr = '1602160234'");
        d = "";     
          while (rs.next())
          {  String med1 = rs.getString("Medicin1"); 
              String dgl1 = rs.getString("Meddgl1");
              String med2 = rs.getString("Medicin2");
              String dgl2 = rs.getString("Meddgl2");
              String med3 = rs.getString("Medicin3");
              String dgl3 = rs.getString("Meddgl3");
              String med4 = rs.getString("Medicin4");
              String dgl4 = rs.getString("Meddgl4");
              String med5 = rs.getString("Medicin5");
              String dgl5 = rs.getString("Meddgl5");
              String med6 = rs.getString("Medicin6");
              String dgl6 = rs.getString("Meddgl6");
              int dosis = rs.getInt("Meddato");
              d = d+med1+"\n"+dgl1+"\n"+med2+"\n"+dgl2+"\n"+med3+"\n"+dgl3+"\n"+med4+"\n"+dgl4+"\n"+med5+"\n"+dgl5+"\n"+med6+"\n"+dgl6+"\n"+dosis;
             
          }
rs.close();
         
return d;         
}
         
}       




Jeg ved ikke helt om jeg skal oprette en metode alene som afgører det eller hvordan. jeg blev noget lost efter den sidste tråd og kom aldrig videre
Avatar billede arne_v Ekspert
15. juni 2005 - 12:21 #1
jeg postede jo et eksempel i http://www.eksperten.dk/spm/625311
Avatar billede kalp Novice
15. juni 2005 - 12:34 #2
jeg har også svaret i det andet nu.. og du kan bare lukke dette spørgsmål igen..
Avatar billede flimmerdreng Nybegynder
15. juni 2005 - 12:41 #3
OK ja det gjorde du arne v, men det var lige en takt for kompliceret. Jeg er ikke helt erfaren i det her, må jeg indrømme og er da ked af hvis du føler det du sente ikke er godt nok.
Avatar billede flimmerdreng Nybegynder
15. juni 2005 - 17:01 #4
Klarede den selv
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester