Ich bin neu in SQL, aber ich versuche, seine Logik zu lernen, nehme ich an, Bulk einfügen wird in allen Zeilen in diesem Fall ein Blob einfügen. (pdf-Datei) unten ist mein Code, aber was ich zu erreichen versuche, ist, eine pdf-Datei einzufügen, die ich auf SQL-Server in einer Reihe gesetzt habe, die einen passenden Primärschlüssel hat, den ich spezifiziere. Bisher fehlt mir die where-Klausel die PK angebenOpenrowset Bulk einfügen in einer bestimmten Zeile
Declare @sql varchar(max)
Declare @filePath varchar(max)
Set @filePath = 'C:\iphone.pdf'
Set @sql='INSERT INTO HDData.dbo.PurchasedCellPhoneInfo(Receipt) SELECT * FROM OPENROWSET(BULK '''+ @filePath+''', SINGLE_BLOB) AS BLOB'
exec(@sql)
Kann ich ein Update t-SQL-Abfrage anstelle des Einsatzes verwenden? und wie würde ich die wo, um eine bestimmte Zeile angeben, die ich in diesen Blob einfügen möchten fallen lassen? Jede Hilfe wäre willkommen.
Ich habe auch schon versucht, diese nach @ misterPositive Vorschlag für Update-Abfrage:
Declare @criteria varchar(50)
SET @criteria ='352014075399147'
UPDATE HDData.dbo.PurchasedCellPhoneInfo SET Receipt =
(SELECT Receipt FROM OPENROWSET (BULK 'C:\352014075399147.pdf, SINGLE_BLOB') a)
WHERE(IMEI = @criteria)
i Diese Nachricht tun empfangen: Entweder eine Formatdatei oder eine der drei Optionen SINGLE_BLOB, SINGLE_CLOB oder SINGLE_NCLOB muss sein angegeben. Ich mag diese Update-Abfrage, wie es scheint, was ich versuche zu tun.
Verwendet dies SQL Server? –