Textfile in SQL Server 2005 DB speichern



  • Ich nutze SQL Server 2005 und habe eine Datenbank in der ich eine ID und eine zugehörige Textdatei speichern möchte.
    Bin jetzt schon länger am rumprobieren komme aber auf keinen grünen Zweig.
    (ID ist integer, file ist varbinary(MAX))

    INSERT INTO [TestDB].[dbo].[Files]
               ([ID]
               ,[file])
      SELECT 1, * FROM OPENROWSET(BULK 'C:\\temp\\test.txt', SINGLE_BLOB) AS t
    GO
    

    Diesen Code hat mir jemand gegeben und meinte so müsste es funktionieren, aber ich bekomme folgende Fehlermeldung

    Msg 4861, Level 16, State 1, Line 1
    Cannot bulk load because the file "C:\\temp\\test.txt" could not be opened. Operating system error code 3(error not found).

    Was mache ich falsch, bzw. gibt es keinen anderen Weg eine Datei in die Datenbank zu legen?



  • eventuell liegt es an den doppelten Backslash, versuchs mal mit nur einem

    außerdem hier noch ein Link zur MSDN



  • Habe es auch schon mit nur einem Backslash probiert.
    Klappt aber auch dann nicht 😞
    Und bei MSDN habe ich ja auch geschaut, werde ich aber auch nicht schlauer.



  • Fürst du das direkt am Server aus. Wenn nein dann wird es nicht gehen weil die Datei IMHO am Server in dem Verz. liegen muss. Query werden ja am Server ausgeführt.



  • Ok, also wenn ich eine Datei vom Server der DB nehme klappts anscheinend!
    Danke für die Hilfe!

    Komme ich direkt zur nächsten Frage 😉
    Wie lese ich die Daten dann aus?
    Wenn ich also diese Textfile nun auslesen möchte (die liegt ja jetzt dann in binärenDaten auf der DB), was muss ich tun, um den Inhalt der Textdatei zu lesen?


Anmelden zum Antworten