Hva er NDX-filformatet?
En .ndx-fil er en enkeltfelt B-tre-indeks knyttet til en dBASE-database (.dbf). Den ble introdusert med dBASE III i 1984 og gir sortert tilgang til poster uten å skanne hele tabellen - analogt med et register i en trykt bok.
Formatet lagrer et B-tre av faste 512-byte noder. Et 16-byte hode (header) registrerer rotblokknummer, totalt antall blokker, nøkkellengde, nøkkeltype og et flagg for unike verdier. Hver løvnode inneholder sorteringsnøkkelverdier sammen med postnummer-pekere tilbake til .dbf-filen.
Én .ndx-fil indekserer nøyaktig ett nøkkeluttrykk - et feltnavn eller en enkel formel, opptil 220 tegn, der den evaluerte nøkkelen er begrenset til 100 byte. Denne begrensningen med én indeks per fil er hovedbegrensningen til .ndx sammenlignet med det senere .MDX-formatet (dBASE IV, 1988), som lagrer opptil 47 indekstagger i én fil og oppdateres automatisk.
Det er viktig å merke seg at .ndx-indekser ikke vedlikeholdes automatisk når poster legges til, slettes eller endres i .dbf-filen. Brukere må utstede en eksplisitt REINDEX- eller SET INDEX TO-kommando i dBASE for å bygge dem opp på nytt - en utdatert indeks gir feilaktige spørringsresultater. Moderne verktøy som dBASE Plus og DBF Viewer Plus godtar fortsatt .ndx-filer for bakoverkompatibilitet. FoxPro og Visual FoxPro foretrekker i stedet det sammensatte indeksformatet .cdx.
Sikkerhet og trygghet
RISIKO: LOWNDX-filer inneholder kun indeksdata (nøkler + postpekere); ingen kjørbar kode. Trygg å åpne med alle xBase-kompatible visningsprogrammer. Korrupsjon av en NDX påvirker ikke DBF-data - indeksen kan bygges opp på nytt.
Formatdetaljer
i et nøtteskall- FoxBase/FoxPro indeksfil - FoxBase og tidlig FoxPro brukte også .ndx enkeltindeksfiler (samme format som dBASE III NDX); FoxPro 2+ gikk over til .cdx sammensatt indeks.
- Indeksfil (generisk navn) - Noen spesiallagde applikasjoner bruker .ndx generisk som en tekstfil eller proprietær indeksfil som ikke er relatert til dBASE.
Programmer som åpner NDX-filer
Tekniske detaljer
dyp spesifikasjon| Format-type | Binær enkeltfelt B-tre-indeks for dBASE-databaser |
| Koding | Binær, little-endian |
| B-tre nodestørrelse | Faste 512 byte per node (rot-, gren- og løvnoder) |
| Header | 16 byte - rotblokknummer, totalt antall blokker, nøkkellengde, nøkkeltype (tegn/numerisk), unikt flagg, versjonsbyte |
| Grense for nøkkeluttrykk | Opptil 220 tegn i uttrykket; evaluert sorteringsnøkkelverdi begrenset til 100 byte |
| Indekskapasitet | Ett nøkkeluttrykk per fil (begrensning til én indeks - én `.ndx`-fil per indeksert felt eller uttrykk) |
| Tilknyttet database | Tilhørende `.dbf`-fil; løvnoder lagrer postnummer-pekere til DBF-datarader |
| Auto-oppdatering | Indeksen vedlikeholdes IKKE automatisk; krever eksplisitt `REINDEX` eller `SET INDEX TO` etter DBF-endringer |
| Opprinnelse | dBASE III av Ashton-Tate; kompatibel med dBASE IV, V og moderne xBase-implementeringer |
| Erstattet av | `.mdx` (dBASE IV - opptil 47 auto-oppdaterte indekstagger per fil); `.cdx` (FoxPro / Visual FoxPro) |
| Tilknyttet OS | DOS (original), Windows (bakoverkompatibilitet i moderne verktøy) |
| Moderne støtte | Godtas fortsatt av dBASE Plus og DBF Viewer Plus for bakoverkompatibilitet |
| Nøkkeltyper | Tegnstrenger og numeriske verdier; datofelt konverteres til tegnrepresentasjon for indeksering |
| Risiko ved utdatert indeks | En `.ndx` som ikke er bygget på nytt etter DBF-endringer, returnerer feilaktige spørringsresultater uten varsel |
| Utgitt | 1984 (dBASE III) |
| Siste versjon | dBASE III-compatible NDX (unchanged since dBASE III era) |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | pic.hallikainen.org |
NDX-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om NDX-filer.