Portal > Foren > Java > Allgemeine Java-Programmierung > Vector in eine Datenbank speichern?
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 14.02.2008, 03:21 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 14.02.2008
Beiträge: 4
Standard Vector in eine Datenbank speichern?

halli hallo...

Bin noch ein totaler anfänger in java und Ich hab da ein Problem und werd jetzt versuchen das so gut wie möglich zu beschreiben =)
_________

Ich hab nen Vector. In dem Vector steht folgendes(Wenn ich ihn mit Sys.out.pritnln ausgebe


Code:
DataVector :  [AHS, testDaten, 21534, 21342, Land, www.blablzb.com,1]
Meine Tabelle in der Datenbank besteht aus den folgenden Spalten:

Code:
Art, Adresse, Hausnummer, Postleitzahl, Ort, Homepage, nr
Gibt es irgendeine möglichkeit die einzelnen daten vom Vector auszulesen und diese mit
nem INSERT befehl in die Datenbank einzufügen?

Oder gibt es einen eigenen befehl in JDBC der den Vektor den betreffenden Spalten zuordnet?
_________

So ich hoffe ihr habt meine Problemstellung verstanden

Bin jedenfalls für alle Infos offen


mfg
thomasj@inode.at ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.02.2008, 08:01 Nach oben    #2
Martin Eisengardt
 
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 355
Standard

Du stellst dir beispielsweise den String manuell zusammen (StringBuffer o.ä.). Also del SQL, beispielsweise
String sql = "INSERT INTO tabelle VALUES (" + vector.get(0) + "," + vector.get(1).....
Anschliessend kannst du in JDBC auf einem Statement diesen SQL per executeUpdate zur Datenbank schicken. Beachte, dass Zeichen maskiert werden müssen.
__________________
Open Sourcing the Online Gaming Universe
PHP/SQL/Java/C++/Assembler.
Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html
mepeisen ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.02.2008, 13:27 Nach oben    #3
Neuer Benutzer
 
Registriert seit: 14.02.2008
Beiträge: 4
Standard

Hi!
Danke erstmal. Das Problem ist nur, wenn ich auf den Vektor mit
Code:
 get(1)
zugreife gibt er mir genau die Zeile aus:
Code:
DataVector :  [AHS, testDaten, 21534, 21342, Land, www.blablzb.com,1]
Es ist deshalb ein Vektor weil ich ihn in die Tabelle Lade in meinem Programm. also von der Datenbank.
So ist der index 1 von meinem Vektor Zeile 1 in der Tabelle..

Wenn ich jetzt zb Zeile 1 anwähle in der Tabelle will ich das die ganze zeile in einer Anderen Tabelle in der Datenbank gespeichert wird.
Hab ich da irgendwas falsch gemacht beim Vektor schreiben :O
Hier wird der Vektor beschrieben und in die Tabelle geladen:
Code:
 
    
    clmHeader = new Vector();
    dataVector = new Vector();

  ResultSetMetaData rsmd = rs.getMetaData();
  int clmCnt = rsmd.getColumnCount();

       for(int i = 1; i <= clmCnt;i++)
             clmHeader.addElement(rsmd.getColumnName(i));

   while(rs.next())
{
 Vector rowVector = new Vector();
 
 for(int i = 1; i <= clmCnt; i++){
 rowVector.addElement(rs.getString(i));
}
dataVector.addElement(rowVector);
}


if(tbls_jComboBox1.getSelectedItem().equals("favouriten")){
tblDataModel2.setDataVector(dataVector, clmHeader);
fav=false;
System.err.println("Favouriten Tabelle!");
Code:
}

Geändert von thomasj@inode.at (14.02.2008 um 13:29 Uhr).
thomasj@inode.at ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.02.2008, 16:16 Nach oben    #4
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Zitat:
Zitat von thomasj@inode.at Beitrag anzeigen
Das Problem ist nur, wenn ich auf den Vektor mit get(1) zugreife gibt er mir genau die Zeile aus [...]
Das heißt du hast ein Vector mit vielen Vectoren drin?
Dann gehst du halt mit einer for-Schleife durch diesen Vector, in dem die DB-Zeilen stehen und trägst die dann ein.

Irgendwie so:

Code:
Vector vector; //Vector mit DB-Rows
int n = vector.size;

for(int i = 0; i < n; i++)
{
   Vector row = vector.get(i);
   String query = "INSERT INTO `tabelle` VALUE( " 
                        + row.get(0) + ", "
                        + row.get(1) + ", "
                        + row.get(2) + ")";
   // Query ausführen
}
Ich hoffe das bringt dich weiter.
MfG
Xean

PS:
Ich sehe gerade. dass du in deinen for-Schleifen immer bei 1 anfängst mit zählen:
for(int i = 1; i <= clmCnt;i++))

aber Java fängt mit der Null an zu zählen:
for(int i = 0; i < clmCnt; i++)
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Anmeldeseite]Firefox will Passwort speichern WarrenFaith HTML, XML und CSS 13 10.09.2007 11:54
Entwurfsproblem: Aus Widgets in Datenbank schreiben? Basti PHP-Programmierung 3 29.03.2007 13:13
Problem bei Verarbeitung von Templates (Eigene Klassen) dago PHP-Programmierung 21 31.08.2006 16:02
PDF in DB speichern oder ? julien Datenbanken 9 14.05.2006 20:26
Datenbank und Sicherheit sparrow Datenbanken 23 05.11.2005 17:45


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:46 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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