sql >> Databasteknik >  >> Database Tools >> SSMS

Kopiera ett stort fält (varbinary(max)) till fil/urklipp

För att på ett tillförlitligt sätt kopiera stora strängar från rutan för SSMS-frågeresultat, vill du vara mycket uppmärksam på följande inställningar (jag tittar på SSMS 10.50.2500.0 just nu):

Tools > Options > Query Results > SQL Server > Results to Grid
    Max chars retreived:
        Non-XML: 65535
        XML: Unlimited

Tools > Options > Query Results > SQL Server > Results to Text
    Max chars displayed:    
        8192

Du kan behöva åtminstone öppna ett nytt frågefönster för att inställningarna ska gälla. Observera att eftersom XML är obegränsat kan du potentiellt casta till XML för att få fullständiga resultat. I det här fallet kan du göra följande:

select cast(convert(varchar(max), MyColumn, 1) as xml) -- Use style 1 to get "0x..."

Allt som sagt, det kan finnas bättre (och automatiserbara/reproducerbara) metoder för att flytta data runt dina system som andra har nämnt:

  • Konfigurera en länkad server för att helt enkelt köra en insert-sats
  • Använd openrowset för att fråga en fjärrserver
  • SSMS:Exportera data, generera skript, resultat till fil
  • SSIS
  • tredje parts verktyg (Redgate Data Compare, etc.)


  1. se aktuell tabellordning

  2. Hur lång tid bör en 75mb sql-fil ta att importera i PHPMyAdmin?

  3. SQL LocalDB - Kan inte ta bort en DB när dess filer är raderade

  4. Oönskad utvärdering i uppgifter i Mathematica:varför det händer och hur man felsöker det under paketladdningen?