[SQL] 어떻게 TSQL을 사용하여 업데이트의 Blob에서 SQL 서버에
SQL어떻게 TSQL을 사용하여 업데이트의 Blob에서 SQL 서버에
어떻게 전용 (SSMS에서 예를 들어 및 ADO.Net 또는 Linq에 같은 코드를 사용하지 않는) TSQL을 사용하여 BLOB 필드를 업데이트하는 방법은 무엇입니까?
해결법
-
==============================
1.TSQL와 BLOB를 선택하는 방법은 두 가지가 있습니다 :
TSQL와 BLOB를 선택하는 방법은 두 가지가 있습니다 :
SELECT * FROM OPENROWSET (BULK 'C:\Test\Test1.pdf', SINGLE_BLOB) a
만큼 잘:
SELECT BulkColumn FROM OPENROWSET (BULK 'C:\Test\Test1.pdf', SINGLE_BLOB) a
필수 FROM 절 이후의 상관 관계 이름을합니다.
두 번째 버전은 다음의 예와 같이 UPDATE 사용할 수있다 :
UPDATE MyTable SET blobField = (SELECT BulkColumn FROM OPENROWSET (BULK 'C:\Test\Test1.pdf', SINGLE_BLOB) a) WHERE (CriteriaField = @criteria)
부분 업데이트의 일이 MSDN 문서에 설명 된대로 SET에 .write 뮤 테이터를 사용할 수 있습니다, 여기에 구문은 다음과 같습니다
UPDATE MyTable SET BlobField .WRITE (expression, @offset, @length) WHERE (CriteriaField = @criteria)
쓰기 뮤 테이터가 비 NULL 필드에서만 사용할 수 있습니다.
사실 이것은 또한 다음 예제와 같이 (또는 실제 길이) NULL을 0으로 @offset 및 @length을 설정하여, (열이 NULL을 포함하지 않는 경우) 전체 업데이트를 수행 할 수 있습니다 :
DECLARE @tmp VARBINARY(MAX) --Change to the correct datatype here SELECT @tmp = BulkColumn FROM OPENROWSET (BULK 'C:\Test\Test1.pdf', SINGLE_BLOB) a UPDATE MyTable SET BlobField .WRITE (@tmp, 0, NULL) WHERE (CriteriaField = @criteria)
from https://stackoverflow.com/questions/11820971/how-to-update-a-blob-in-sql-server-using-tsql by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 어떤 ANY의 부재에서 가장 저렴한 집계 함수입니다 () (0) | 2020.07.14 |
---|---|
[SQL] SELECT에서 숫자가 아닌 문자를 빼내야 (0) | 2020.07.14 |
[SQL] 기둥 이름을 통해) (DataReader.GetString (0) | 2020.07.14 |
[SQL] SQL 제약 조건 : 날짜 A는 날짜 B 전입니다 - 어떻게? (0) | 2020.07.14 |
[SQL] 어떻게 오라클 MD5 해시 함수를 호출하는 방법? (0) | 2020.07.13 |