2010-08-03 4 views
4

J'ai une table qui ressemble à ci-dessous. Je ne veux pas vraiment créer une application C# pour insérer des lignes dans cette table, si je peux l'éviter, à cause de la colonne VarBinary. Mon intention est de stocker un fichier .RPT de rapport Crystal dans cette colonne. Existe-t-il une instruction T-SQL que je peux exécuter pour insérer/mettre à jour des lignes dans cette table et inclure un fichier .RPT?SQL Server - Comment insérer dans la colonne Varbinary (Max)?

CREATE TABLE [Report].[MesReport](
    [MesReportID] [int] IDENTITY(1,1) NOT NULL, 
    [ParentID] [int] NOT NULL, 
    [ReportTitle] [nvarchar](80) NOT NULL, 
    [ReportName] [nvarchar](80) NOT NULL, 
    [DatabaseServer] [nvarchar](80) NOT NULL, 
    [DatabaseName] [nvarchar](50) NOT NULL, 
    [Login] [nvarchar](80) NOT NULL, 
    [ReportFile] [varbinary](max) NULL, 

Répondre

9

Vous pouvez l'obtenir dans une variable comme

DECLARE @VB varbinary(max) 
SELECT @VB =BulkColumn FROM OPENROWSET(BULK 
    N'C:\YourReport.rpt', SINGLE_BLOB) AS Document 

que vous pouvez ensuite utiliser dans une instruction d'insertion

+0

Works grande. Merci. –

Questions connexes