Announcement

Collapse
No announcement yet.

Byte-Array (Bild) mit Stored Procedure in Datenbank schreiben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Byte-Array (Bild) mit Stored Procedure in Datenbank schreiben

    Hallo,

    habe diese Problematik auch schon im Datenbanken-Bereich dieses Forums veröffentlicht, wurde aber hier her verwiesen

    Ich möchte mittels einer Stored Procedure ein Byte-Array (Bild) in die Datenbank schreiben. Ich programmiere in VB.Net auf einem Mobilen Gerät (WM5, VS2008, .Net Compact Framework 3.5). Von der Tabelle habe ich mittels DataSet/TableAdapter ein Objekt erzeugt. Über dieses Objekt wird die Stored Procedure aufgerufen.

    Folgende Exception tritt beim "Übertragen" zum SQL Server auf:
    Der eingehende Tabular Data Stream (TDS) für das RPC-Protokoll (Remote Procedure Call) ist nicht richtig. Parameter 1 ("@inData"): Der 0xA5-Datentyp hat eine ungültige Datenlänge oder Metadatenlänge.

    @inData ist dabei das Byte-Array. Die Spalte in der Tabelle ist vom Typ varbinary(MAX). Die Stored Procedure funktioniert, das habe ich getestet.

    Der Fehler tritt im automatisch generiertem Code auf, bei der ExecuteNonQuery()-Funktion

    Ich kann mit diesem Fehler leider überhaupt nichts anfangen. Verbinde ich mich direkt zur Datenbank (Ohne TableAdapter und Stored Procedure) ist das Schreiben und Lesen problemlos möglich.

    Kann mir jemand bei diesem Problem helfen. Vielen Dank

    Viele Grüße
    Tim

  • #2
    Hallo,
    bin mir nicht so ganz sicher was du machen möchtest...

    ...aber wenn ich das richtig verstehe, möchtest du z.B. Bilder in einem Datenbankfeld speichern, oder..?

    Dann würde ich als Datentyp image benutzen. Mit diesem Datentyp speicherst du ebenfalls binär...

    Comment


    • #3
      Ja genau, ich möchte Bilder in die Datenbank schreiben.

      Den Datentyp "Image" wird es in Zukunft nicht mehr geben. Für sowas ist nun der Datantyp "varbinary" gedacht.

      Zumal das direkte Schreiben ja funktioniert. Nur sobald ich eine Stored Procedure nutze, kommt dieser komische Fehler. Und das noch im automatisch generierten Code.

      Comment


      • #4
        Nach einigen Tests konnte ich das Problem nun eingrenzen. Der Fehler tritt nur unter Windows Mobile mit dem Compact Framework auf, unter XP funktioniert es problemlos. Der Code ist ja der gleiche.

        Comment

        Working...
        X