Möjligheten att spara filer i rader databastabell som Binary Large Objects ( BLOB s ) är en kraftfull funktion i Microsoft SQL Server , men mekanismen för att göra detta är något annorlunda än den som för att infoga andra data typer . I SQL Server 2005 och senare , gör " OPENROWSET " funktionen processen mycket enklare än i tidigare versioner . Hämta filerna från databasen kräver en annan strategi - att använda sig av Bulk Copy Program ( BCP Utility ) för att spara binära data till en fil på disk . Instruktioner
infoga en fil
1
kolumn som kommer att hålla de binära filerna måste vara av datatypen VARBINARY ( MAX ) . Om en tillräcklig tabellen inte redan finns i databasen , lägg till en " VARBINARY ( MAX ) " kolumnen till antingen en ny eller befintlig tabell .
2
Använd " OPENROWSET " -funktionen för att infoga filen genom med följande syntax . Ersätt " " och " namn> " med namnen på din tabell och kolumn , resp . Ersätt " " med den fullständiga sökvägen till filen du vill infoga.
INSERT INTO
( namn>
)
VÄLJ BulkColumn
FRÅN OPENROWSET ( bulk " " , SINGLE_BLOB ) AS BLOB
3 Utför en " SELECT " fråga på bordet för att säkerställa att filen framgångsrikt insattes . Den " VARBINARY ( MAX ) " kolumnen kommer att innehålla en binär sträng av filens innehåll .
Hämta en fil
4
Öppna ett " Command Prompt " fönster från " Start " -menyn .
5
Skriv BCP kommandot som visas , ersätter " namn> " med namnet på BLOB kolumnen " . " med respektive databas och tabell namn , " " med namnet på den primära nyckeln kolumnen " " med primärnyckelvärdet i raden som ska returneras och " " med . namnet på filen som ska sparas
C : . \\ > BCP " SELECT namn> fRÅN VAR = , " queryout " " - T
6 Tryck på " Enter " för att köra kommandot . Filen sparas till den aktuella katalogen .