vind 'n resultaat van 'n .doc-tipe wat in 'n varbinary(max) kolom stoor
-
21-09-2019 - |
Vra
ek wil 'n navraag met Full-Text-Search skryf op 'n kolom met varbinary(max) tipe wat 'n .doc/.docx(MS-Word) lêer gestoor het.my navraag moet rekords terugstuur wat 'n woord in gestoorde lêer bevat.
is dit moontlik?
so ja, hoe? (skryf asseblief 'n voorbeeld)
indien ja, kan ons dit vir ander taal skryf (bv. Arabies, Persies of 'n UniCode-karakters)?
by voorbaat dankie.
Oplossing
Wat jy soek, is volteksindeksering, wat aansienlik verbeter is in SQL Server 2008.
Vir 'n inleiding, sal ek aanbeveel om hierdie artikels hier na te gaan:
- SQL Server 2008 - Skep volledige tekskatalogus en soektog
- Verstaan volteksindeksering in SQL Server
- Volteks-indeksering werkbank
Sodra jy dit verstaan en jou eie voltekskatalogus geskep het, behoort jy so iets te kan soek:
SELECT ID, (other fields), DocumentColumn
FROM dbo.YourTable
WHERE CONTAINS(*, 'Microsoft Word')
En ja, Volteks-indeksering en soektog ondersteun baie tale - kyk na die skakels wat ek vir jou gestuur het en die SQL Server 2008 Books Online vir besonderhede!
Marc
Ander wenke
As jy SQL Server 2005 of later, ja, jy hoef net die filters:
As jy SQL Server 2000, doc-lêers kan word geïndekseer, maar nie die nuwer Office 2007-formaat sover ek weet (Ek het gehoor jy kan in staat wees om die iFilter leen deur die installering van Word 2007 op die bediener).