Sql Server의 FILESTREAM 기능을 사용하여 데이터베이스에 문서를 저장할 때 파일 크기를 처리하는 적절한 방법은 무엇입니까?SQL FILESTREAM 데이터의 파일 크기 처리
나는 당신이 FILESTREAM 열에서 TSQL 명령 DATALENGTH()
를 사용할 수 있다는 것을 알고 있지만, this Microsoft article에 관한 것은이 항상 좋은 생각되지 않을 수도 있습니다 :
피가에서 BLOB 파일의 많은의 데이터 길이를 검색 신청. 이 크기는 SQL Server 데이터베이스 엔진에 저장되지 않으므로 시간이 오래 걸리는 작업입니다. BLOB 파일의 길이를 결정해야하는 경우 BLOB가 닫혀있는 경우 Transact-SQL DATALENGTH() 함수를 사용하여 BLOB의 크기를 결정하십시오. DATALENGTH()는 크기를 판별하기 위해 BLOB 파일을 열지 않습니다.
가능한 경우 DATALENGTH()를 피하거나 파일 크기를 검색하는 것이 권장되는 경우 위의 예에서 말한 것인지 확실하지 않습니다.
사용자에게 메타 데이터로 표시하기 위해 문서 크기에 자주 액세스해야하는 경우이를 검색하기 위해 권장되는 방법은 무엇입니까? 별도의 필드에 보관 하시겠습니까? 또는 datalength() 충분히 빠릅니까?
DATALENGTH()가 응용 프로그램에 충분히 빠르지를 결정해야합니다. 뿐만 아니라 당신은 무엇을 의미합니까. – Paparazzi
의견이 없습니다. 죄송합니다. 나는 아직도 인용 된 텍스트에 대해 약간 혼란 스럽다. :) 그것은 단지 datalength()에 대해서 이야기 할 것인가 아니면 크기 검색의 두 가지 분리 된 유형에 대해 이야기하고 있는가? – magnattic
또한 별도의 열을 사용하여 크기를 직접 저장하는 방법의 결과는 무엇입니까? 왜 그것이 좋은/나쁜 생각일까요? – magnattic