Avatar billede dragnor Juniormester
15. marts 2003 - 12:59 Der er 9 kommentarer og
1 løsning

Java og Access SQL sætninger

Mit spørgsmål lyder som følgende: Jeg skal i java hente en forespørgsel ind dvs. ikke resultatet af forespørgselen, men selve SQL koden. Koden skal kunne ligges ind i et TextArea.
Er der nogen som har en ide til hvordan man gør det?
Avatar billede magoo20000 Nybegynder
15. marts 2003 - 13:11 #1
Skal det forstås sådan, at du reelt henter noget fra db op i et resultset, og så vil have selv sql tekst strengen skrevet i et TextArea?
Avatar billede magoo20000 Nybegynder
15. marts 2003 - 13:16 #2
Selve sql-strengen har du jo allerede angivet i din kode, så du kan f.eks.

String sql = "Select * from XX";

ResultSet res = doQuery(sql);

public ResultSet doQuery(String sql){
        if(con!=null){
            try{
                Statement stat=con.createStatement();
                return stat.executeQuery(sql);       
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
        return null;
    }

Og derefter textarea.add(sql);
Avatar billede magoo20000 Nybegynder
15. marts 2003 - 13:17 #3
Nej, der er textarea.append(sql);
Avatar billede dragnor Juniormester
15. marts 2003 - 13:20 #4
Ja jeg skal både hente resultatet af forespørgslen og SQL koden som ligger bag den, men de skal udskrives i hver deres textArea.

Til magoo20000: Jeg har ikke tid til at afprøve det du har skrevet lige nu, men det ser meget fornuftigt ud!
Avatar billede dragnor Juniormester
15. marts 2003 - 17:33 #5
Hvordan vælger jeg min forespørgsel i min database?

f.eks.  Min database hedder "G2" og en af mine forespørgseler hedder "S6", hvordan vælger jeg hele S6's SQL-sætning (Kode)???
Avatar billede magoo20000 Nybegynder
15. marts 2003 - 17:49 #6
Det er jeg ikke helt med på. Kan du ikke uddybe det lidt :-)
Avatar billede dragnor Juniormester
15. marts 2003 - 18:20 #7
Jeg har en GUI del og min Class fil + min database, i GUI delen skal jeg udskrive hele min SQL-sætning fra min forespørgsel som hedder S6.

Eksempel på GUI (det understående er et eksempel på hvordan mit textArea skal se ud i GUI delen.
............................................................
. SELECT * FROM Chauffør WHERE et eller andet              .
.                                                          .
............................................................

DVS. At jeg fra min database ønsker at hente min SQL-sætning og vise den i mit TextArea.
.
Avatar billede magoo20000 Nybegynder
15. marts 2003 - 18:27 #8
Du har en gui klasse og en databaseklasse? Du skal lave en metode i databaseklassen, der henter den streng i databaseklassen, hvori dit sql står.

F.eks. har du i databaseklassen.

private String sql = "select * from xx";

public static getSql(){
return sql;
}
....og f.eks. det jeg skrev tidligere....

Derefter kan du i din gui kalde denne metode vha. tekstArea.append(databaseklasse.getGql());
Avatar billede dragnor Juniormester
15. marts 2003 - 18:37 #9
jeg giver op og kontakter en som laver samme opg som mig han har vist fået styr på det, men tak for hjælpen alligevel
Avatar billede kimjdoek Nybegynder
16. marts 2003 - 00:52 #10
Da jeg nu tilfældigvis laver samme opgave, kan jeg vel give et lille hint, hvis du stadig ikke har fået det løst...

det nemmeste ville absolut være at kopiere ctrl-c din acces forespørgsel ind i java som
String sql = " SELECT ..from where..";
og så lave forespørgslen

ResultSet res = doQuery(sql);
og bagefter skrive det hele ud...
textarea.append(sql);

tror ikke jeg kan give dig løsningen meget bedre :-)
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