Ricerca di Windows non indicizzazione dei contenuti dei file di testo con estensione .SQL


10

Sto riscontrando problemi a ottenere la ricerca di Windows per indicizzare il contenuto di un file di testo con .sqlestensione. C'è qualcosa che sto facendo di sbagliato?

Sfondo:

Uso un programma al lavoro chiamato Navicat che mi aiuta a lavorare con il nostro database MySQL. Quando uso Navicat per modificare e salvare le query, le memorizza in .sqlfile che si trovano nella directory di Navicat in Programmi.

Poiché la Ricerca di Windows non indicizza i file all'interno dei Programmi per impostazione predefinita, l'ho aggiunto all'elenco delle posizioni indicizzate, come mostrato nell'immagine seguente:

inserisci qui la descrizione dell'immagine

Sono anche andato nella sezione avanzata e ho aggiunto l' .sqlestensione del file e selezionato l' Index Properties and File Contentsopzione. Questo imposta la descrizione del filtro su Plain Text Filter:

inserisci qui la descrizione dell'immagine

Tuttavia, ogni volta che eseguo una ricerca di testo che mi aspetterei di trovare all'interno di un .sqlfile, ad esempio saw_order.Wo type:sql, non restituisce alcun file. La ricerca è successo se sto cercando per una parte del nome di un file, ma non il suo contenuto con .sqli file.

I .sqlfile sono file di testo semplice che possono essere facilmente aperti e modificati con il blocco note. Navicat aggiunge semplicemente alcune funzionalità di intellisense e di un'organizzazione, ma a parte questo, è un testo semplice.

Perché Windows Search non può vedere il contenuto di questi file?

Devo aggiungere un plug-in speciale alla ricerca di Windows per riconoscere questi file?

NOTA: sto utilizzando Windows Search 4.0 e Windows XP SP3.


Risposte:


7

Sembra che ci sia un problema con Windows Search che legge il formato del file, anche se impostato in testo normale. Si tratta di un problema noto ed è stato persino menzionato qui su Superuser !

La mia migliore raccomandazione per ora è quella di utilizzare un programma in grado di cercare il contenuto dei file. Potrebbe non essere veloce come averli indicizzati, ma spero che possa fare il lavoro per te.

Quattro grandi strumenti che raccomando:

Agent Ransack (freeware):

testo alternativo

NirSoft SearchMyFiles (freeware e portatile):

testo alternativo

Windows Grep :

testo alternativo

Portable File Seeker (software gratuito):

testo alternativo


Grazie per i suggerimenti Preferirei davvero una soluzione integrata che risolva Windows Desktop Search, ma forse vedrò alcuni dei software che mi hai consigliato.
Ben McCormack,

Anche se avrei preferito correggere la ricerca di Windows Desktop, apprezzo molto il tempo che hai dedicato a fornire una risposta dettagliata. Dovrò controllare alcuni di quegli strumenti. Molte grazie!
Ben McCormack,

Sei piu 'che benvenuto!
John T,

4

Assicurarsi di disporre delle seguenti chiavi nel registro, in questa posizione:

Computer\HKEY_CLASSES_ROOT\.sql

[HKEY_CLASSES_ROOT\.sql]
"Content Type"="text/plain"
"PerceivedType"="text"

[HKEY_CLASSES_ROOT\.sql\PersistentHandler]
@="{5E941D80-BF96-11CD-B579-08002B30BFEB}"

Quindi reindicizzare.


2

Nel caso ci fosse un problema con l'indicizzazione stessa, proverei a dire alla ricerca di guardare il contenuto di file non indicizzati.

Vai a qualsiasi finestra di Explorer e premi, Altquindi vai su Strumenti> Opzioni cartella e fai clic sulla scheda Cerca, seleziona l'opzione cerchiata:

inserisci qui la descrizione dell'immagine


Non credo che queste opzioni siano visualizzabili in questo modo in Windows XP (a meno che non sia stato disabilitato sul mio PC da Criteri di gruppo, ma ne dubito).
Ben McCormack,

1

Molti motori di ricerca necessitano di un qualche tipo di modulo, spesso chiamato "connettore" per capire come interpretare un file.

Noto che nello screenshot, il file SQL è elencato come "Testo normale". Anche se il file è solo testo, Windows Search potrebbe aspettarsi che il file .sql sia diverso dal testo e semplicemente lo ignori.

Per verificare l'ipotesi, creare una copia del file, modificare l'estensione in ".txt", quindi forzare un reindicizzazione.

Qualcos'altro da controllare, forse con un editor di testo più potente (il mio preferito è gVim - http://www.vim.org/download.php#pc ) per vedere se il "numero magico" iniziale del file è diverso da un file di testo normale.


Credo che SharePoint usi qualcosa chiamato iFilter e WDS potrebbe usare la stessa cosa, anche se non ne sono sicuro. Ho provato gVim secondo la tua raccomandazione. Da quello che ho potuto dire, nulla sembrava diverso nei file .sql rispetto ai file .txt. Tuttavia, forse non ho visto qualcosa di corretto.
Ben McCormack,

Ben McCormack, hai provato l'esperimento che ti ho suggerito?
pcapademic,

1

L'articolo Bug ricerca di Windows XP afferma:

Windows XP non cerca tutti i file per migliorare le prestazioni della ricerca ed evitare risultati estranei. Questo comportamento si verifica indipendentemente dall'utilizzo del servizio di indicizzazione durante la ricerca. Pertanto, Windows XP presenta un problema noto per non trovare un certo numero di tipi di file quando si esegue una ricerca di file "contenente testo" o utilizzando l'opzione "Una parola o frase nel file".

Questo può essere risolto per molti tipi di file, ma non per tutti. La causa è la mancanza di un valore PersistentHandler nel registro per questo tipo di file.

Metodo n. 1

Scarica questo script VB (scritto da Doug Knox ). Salva il file che hai appena scaricato sul tuo hard disk. Individua il file che hai appena salvato e fai doppio clic su di esso. Immettere l'estensione del file che si desidera modificare. Se esiste la sottochiave PersistentHandler, non verranno apportate modifiche. Se non esiste per il tipo di file in questione, il registro verrà aggiornato di conseguenza. Riavvia quando hai finito con i tipi di file che desideri modificare.

Metodo n. 2

MS KB 309173 ha un'altra correzione per questo errore. Per configurare Windows XP per la ricerca di tutti i file indipendentemente dal tipo di file, procurarsi l'ultimo service pack per Windows XP (attualmente SP2) e quindi attivare l'opzione Tipi di file indice con estensioni sconosciute.

Se si utilizza questo metodo, Windows XP cerca tutti i tipi di file per il testo specificato.

Ciò può influire sulle prestazioni della funzionalità di ricerca. Per fare ciò, vedere le indicazioni nell'articolo sopra .


Apprezzo il tuo link all'articolo, ma nessuno dei metodi sembra funzionare. Ho eseguito lo script VB e la chiave esisteva già. Ho modificato il valore di registro in base al suggerimento nel metodo n. 2, quindi ho reindicizzato le mie cartelle e non funziona ancora. Forse a cui ti riferisci è "Ricerca di Windows" anziché "Ricerca desktop di Windows", che è stato sviluppato per Vista ma rilasciato anche per XP prima del rilascio di Vista.
Ben McCormack,

Credo che i collegamenti che ho dato siano sostanzialmente corretti, in quanto PersistentHandler per l'estensione .sql è sbagliato e deve essere sostituito. Tuttavia, sono necessarie molte più ricerche per inchiodarlo.
harrymc,


1

Posso solo pensare a due cose:

  1. I file non sono stati ancora indicizzati (quindi vengono visualizzati in un bit di ricerca di nome file non in una ricerca di contenuto)

  2. Suggerisco anche un test ... prova a mettere alcuni file SQL fuori dalla cartella Programmi e includi quella cartella nell'elenco delle posizioni indicizzate. Forse c'è un problema di autorizzazione nelle cartelle in Programmi?


Grazie per i suggerimenti Il file è in circolazione da molto tempo e anche Windows Search sul mio PC. Ho intenzione di ricostruire l'intero indice e vedere se questo aiuta.
Ben McCormack,

Non ha funzionato: /. L'indicizzazione è completa e non trova ancora corrispondenze.
Ben McCormack,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.