1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

PROBLEM mit BLOB bei JAVA, JDBC, bzw MySQL

    • Suche
  • baXit
  • 16. Januar 2005 um 20:38
  • Unerledigt
  • baXit
    3
    baXit
    Mitglied
    Punkte
    50
    Beiträge
    6
    • 16. Januar 2005 um 20:38
    • #1

    [UPDATE]mit PreparedStatement und setBlob gehts problemlos [/UPDATE]

    Ich veruche seit einigen tagen Daten in ein blob-feld einer MySQL Datenbank zu schreiben.
    Das auslesen klappt Problemlos nur das reinschreiben will einfach nicht hinhaun
    Ich hab vor einiger zeit das selbe schon mal unter JAVA/JDBC/Oracle8.0 gemacht da gings so (siehe unten) problemlos

    Kennt jemand das Problem? (oder vielleicht sogar ne lösung dafür)

    verwendete versionen:
    Java: SE 1.4.2
    MySQL: 4.1.7
    JDBC-Driver(für mysql): 3.0.16

    folgender code wird/soll fürs reinschreiben verwendet werden:

    Code
    public void updateAddress(int id, String newaddress){
          try{
    	 String updateaddress = "UPDATE Vermietung SET Rechnung = Rechnung WHERE Auftragsnummer ="+id;
    	 dbcon.setAutoCommit (false);
    	 update(updateaddress);
    
    
    	 ResultSet blobresult = select("SELECT * FROM Vermietung WHERE Auftragsnummer="+id);
    	 blobresult.next();
    	 fillBlob(blobresult.getBlob(4),newaddress);
    
    	 dbcon.commit();
    	 dbcon.setAutoCommit(true);
          }catch (SQLException sqle){
    	 System.out.println("SQL-Fehler!! "+sqle.getMessage());
          }
       }
    
    
       public void fillBlob (Blob blob, String newfilling) {
    
    
          OutputStream output = null;
    
          try{
    	 output = blob.setBinaryStream(1);
          }catch (SQLException sqle){
    	 System.out.println(sqle.getMessage());
          }
          System.out.println("Output: ['+output.toString()+']");
          if (output != null){
             try{
    	    output.write(newfilling.getBytes());
    	    System.out.println(newfilling);
    	    System.out.println("Output: ['+output.toString()+']");
    	    output.close();
    	 }catch (IOException ioe){
    	    System.out.println(ioe.getMessage());
    	 }
          }
          else{
    	 System.out.println("blubb");
          }
       }
    Alles anzeigen
  • Ringding
    11
    Ringding
    Mitglied
    Reaktionen
    12
    Punkte
    1.237
    Beiträge
    244
    • 19. Januar 2005 um 18:27
    • #2

    Probier mal, das Feld ganz normal wie einen String zu befüllen. In C geht's jedenfalls so (quoted & escaped). Mit JDBC & MySQL hab ich leider keine Erfahrung.

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung