Announcement

Collapse
No announcement yet.

XML 2 MS SQL Server 2000

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

  • #16
    Was bedeutet 'Ich schaffe es aber noch immer nicht, wirklich eine Datei von der Festplatte zu lesen...'. Hast du das von dir angegebene Beispiel schon mal ausprobiert und wenn ja, wo liegt das Problem genau? (keine/zuwenig Zeilen, kein CR/LF, falscher Inhalt, irgendeine Fehlermeldung, ...). Meine Glaskugel streikt nämlich im Moment

    bye,
    Helmut

    Comment


    • #17
      Hallo Helmut,

      echt schade, dass deine Glaskugel nicht geht

      Sorry, mein Fehler, ich sollte mich etwas präziser ausdrücken:

      Als Ergebnis bekomme ich bei der vorliegenden Prozedur eine Tabelle mit dem Ergebnis "NULL"

      Meine Hoffnung dagegen war, dass ich es letztendlich schaffe, die auf der Festplatte vorhandene Datei testfile.xml "irgendwie" einzulesen. Es würde ja schon ausreichen, wenn ich die Datei einer Variable in Form eines Textes zuweisen könnte, wie in meinem Post gestern von 18:40, nur soll die Datei eben von der Festplatte eingelesen und nicht in den Code reinkopiert werden...

      Es tut mir leid, wenn ich mich schon mal nicht richtig ausdrücke.

      Bedanke mich im Voraus für jede Hilfe!

      Grüße
      Alex

      Comment


      • #18
        Hallo!

        Ich formuliere die Frage noch einmal anders.

        Wie kann ich eine beliebige Datenmenge von der Festplatte einlesen? Ob das nun XML oder Text ist? Es müsste doch einen Befehl für sql 2000 geben. Alle Beispiele, die ich bis jetzt gefunden habe, führen leider zu nichts...

        Vielen Dank!

        Comment


        • #19
          Ok, ich habe hier ein Programm, das den umgekehrten Weg geht:
          Ein BLOB wird in eine Datei ins Filesystem gespeichert.

          Die Programmierer haben dazu extra eine DLL programmiert, und diese via sp_addextendedproc in den SQL Server eingebunden.

          Ich halte die Programmierer dieser (Fremd-)Software für sehr kompetent, und da sie diesen Weg wählten, gab/gibt es vielleicht unter MS SQL2000 noch nichts brauchbares für Datenbank <-> Filesystem.

          Vielleicht hilft aber ein DTS - Package weiter, dort sollte das gehen.

          Was natürlich die Frage aufwirft: Wenn's dort geht, müßte es doch auch direkt gehen...

          Is schon spät, sorry wenn das quatsch war, gute n8

          Tino
          Ich habs gleich!
          ... sagte der Programmierer.

          Comment


          • #20
            Hallo Tino!

            Vielen Dank für deinen Beitrag. Im Grunde bestätigt dieser meiner eigene Recherche.

            Aber ich denke, dass es etwas geben muss, womit eine beliebige Datei von der Festplatte einlesen könnte. Irre ich mich da? Egal ob es einfacher Text oder sonst etwas ist...

            Bin schon etwas verzweifelt und wäre unendlich dankbar für jede Unterstützung!

            Grüße
            Alex

            Comment


            • #21
              Werde heute abend mal einen virtuellen PC installieren und mit der MSDE 2000 das ausprobieren. Kann ja nicht sein, dass das nicht geht. Wenn du also noch ein paar Stunden warten kannst ...

              bye,
              Helmut

              Comment


              • #22
                Okay, MSDE2000 auf einem W2K-Gerät und der von dir gezeigte XML-File als test.txt direkt auf C:\ gespeichert lässt sich so problemlos einlesen:
                Code:
                DECLARE
                  @cmd VARCHAR(255),
                  @order VARCHAR(8000)
                
                CREATE TABLE #tmp(PK INT NOT NULL IDENTITY(1,1), zeile VARCHAR(255))
                SET @cmd = 'type C:\Test.txt'
                INSERT INTO #tmp EXEC master.dbo.xp_cmdshell @cmd
                
                select @order = IsNull(@order + CHAR(13) + char(10), '') + zeile
                from #tmp where zeile is not null order by pk
                
                select @order   -- nur zur Kontrollanzeige ...
                
                DROP TABLE #tmp
                Jetzt kann man noch ntext statt varchar nehmen, wenn's Probleme mit der Filegröße oder Unicode gibt, aber das überlasse ich dir selber

                bye,
                Helmut

                Comment


                • #23
                  Genial!

                  Das ist genial.
                  Ein tolles Ding!

                  exec type filename .... tststsss, wie kommt man auf sowas?

                  Und dann wieder dieses quirky update, das sieht schon im Quelltext immer aus wie ein Gemälde von van Gogh...

                  Oh Mann, was bin ich nur für ein Anfänger!

                  Danke für Erleuchtung, auch wenn das (momentan) gar nicht mein Problem war, schönes Wochenende!

                  Tino
                  Ich habs gleich!
                  ... sagte der Programmierer.

                  Comment


                  • #24
                    Hallo Genius!

                    Super! Vielen Dank dafür! Das funktioniert!

                    Ich habe aber in der Tat ein Problem mit der Größe der Datei. Meine XML Datei ist um einiges größer.

                    text und ntext sind aber keine TSQL Typen. Die darf ich nicht einsetzen Gibt es da eine Alternative?

                    Comment


                    • #25
                      text und ntext sind aber keine TSQL Typen
                      Eigentlich aber schon. Was genau ist das Problem?
                      Ich habs gleich!
                      ... sagte der Programmierer.

                      Comment


                      • #26
                        Meine Anwendung (Enterprise Manager) sagt, ich dürfte die nicht verwenden... Aber das Problem ist mittlerweile gelöst. Ich poste die Lösung gleich, sobald diese fertig und sauber ist

                        Comment

                        Working...
                        X