sliterMedJava Skrevet 3. april 2005 Del Skrevet 3. april 2005 Noen som har jobbet mye med vectorer??? Jeg har et problem som håper noen kan hjelpe meg med: Jeg skal løse en oppgave hvor man skal hente ut data fra 2 eller flere tabeller, men de ligger også i hver sin database. (dvs jeg har 4 ulike databaser med en tabell hver - oppgaven er formulert sånn). Så skal jeg gjøre en natural join på de tabellene som ønskes joinet. Bruker taster inn i dos vinduet hvilke tabeller seom ønskes joinet. Jeg legger resultsettet inn i en vector i og har en metode som returnerer denne vectoren (med resultsetet). Men siden man kan joine flere tabeller, har jeg også en vector hvor jeg legger inn de vectorene som representerer resultsettet. Å skrive ut vectoren med resultsettet går bra, men da jeg skal skrive ut vectoren som inneholder vectorer med resultset får jeg problemer. Fordi vectoren med resultsettet blir lagt inn som et element i den nye vectoren, så da jeg skriver ut: System.out.println(join_tabs.elementAt(j)); skriver jeg ut hele vectoren (med rsultsettet), men jeg vil bare ha ut en og en rad, for jeg må også joine denne tabellen med en eller flere andre tabeller. Er det noen som skjønner hva jeg mener å spørre om? Noen som vet hvordan man løser dette? Eller noen som har andre forslag på å løse dette på? Jeg må putte resultsettet inn i en vector og liste det ut fra denne, og ikke bare rett fra resultsettet. En annen ting er at vi skal ikke bruke noe GUI-stasj kun jobbe i dos vinduet... Tom Lenke til kommentar
msolberg Skrevet 3. april 2005 Del Skrevet 3. april 2005 Hei, Ser ut som om du må ha en dobbel løkke. Grunnen til dette er fordi det er en vektor i hver rad i den ytre vektoren. Eks: for(int i=0; i<vector.size(); i++){ for(int j=0; j<vector.elementAt(i).size(); j++){ System.out.println("element inner vector: " + vector.elementAt(i).elementAt(j)); } } Har ikke testet dette, men håper det hjelper. Du kan også bruke .get(i) som i ArrayList. Lenke til kommentar
sliterMedJava Skrevet 3. april 2005 Forfatter Del Skrevet 3. april 2005 Takk for den!!! Da får jeg skrevet ut det som ligger i vektorene. Men da har jeg et lite spm til. Siden det dreier seg om 2 eller flere tabeller jeg skal gjøre en natural join på, vet noen hvordan man gjør det? For det koden min nå gjør er å select*from tabelnavn som bruker oppgir. Men det skjer ingen join, men jeg skriver ut tabellene i den rekkefølgen de er skrevet inn. Hadde vært utrolig flott om noen kunne hjelpe meg med å få til denne joinen også! På forhånd takk Tom Lenke til kommentar
msolberg Skrevet 4. april 2005 Del Skrevet 4. april 2005 Hei igjen. Hvis du skal bruke natural join kommer det jo litt ann på hvilken database du bruker. De har forskjellig syntax og forskjellige måter å gjøre det på. I Oracle kan man gjøre slik: SELECT <column_name>, <column_name> FROM <table_name alias> NATURAL JOIN <table_name alias> For MySQL kan du sjekke denne linken: http://dev.mysql.com/doc/mysql/en/join.html Håper det hjalp. Lenke til kommentar
sliterMedJava Skrevet 5. april 2005 Forfatter Del Skrevet 5. april 2005 Vi bruker access... Og jeg sliter litt med å få logikken til å stemme. Kan jeg bruke de rseultsetene jeg har fått av databasen eller må jeg lage et nytt resultset? Og hvordan kan jeg i tilfelle gjøre det da jeg må åpne ulike databse koblinger... Mulig jeg gjør det veldig klønete og komplisert for meg selv, men... (Har lagt ut kode i tråden: Gjorere join på 2 eller flere vectorer) Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå