Sortarea adreselor IP

Important : Acest articol este tradus automat, consultați exonerarea de răspundere. Versiunea în limba engleză a acestui articol se poate găsi aici pentru referință.

Acest subiect descrie procedeul de sortare a adreselor protocoalelor de Internet (IP) stocate într-o bază de date Microsoft Office Access 2007.

În acest articol

Introducere

Crearea interogării

Mai multe moduri de utilizare pentru sortată adrese IP

Introducere

Dacă lucrați cu adrese IP, probabil că știți deja că această activitate nu este la fel de ușoară ca lucrul cu texte sau cu numere. Aceasta deoarece o adresă IP reprezintă de fapt o colecție de patru valori numerice separate prin punct (.), în care fiecare valoare este un număr între 0 și 255. Tabelul următor afișează aspectul datelor înainte de aplicarea vreunei ordini de sortare.

IDComputer

Angajat

Locație

AdresăIP

Ľ

...

...

123.4.245.23

˛

...

...

104.244.253.29

3

...

...

1.198.3.93

4

...

...

32.183.93.40

1,6

...

...

104.30.244.2

2

...

...

104.244.4.1


Sortarea adreselor IP în Access reprezintă o provocare, deoarece Access nu furnizează niciun tip special de date pentru stocarea adreselor IP. Cu toate că o adresă IP reprezintă doar o colecție de numere, nu aveți posibilitatea să stocați adrese IP în câmpuri numerice. Aceasta deoarece un câmp numeric acceptă un singur simbol zecimal (.), în timp ce o adresă IP conține trei puncte (.). Aceasta înseamnă că trebuie să stocați adresele într-un câmp text.

Deoarece adresele IP se stochează într-un câmp text, nu aveți posibilitatea să utilizați butoanele de sortare predefinite din Access pentru a sorta adresele într-un mod semnificativ. Butoanele de sortare sortează întotdeauna în ordine alfabetică valorile dintr-un câmp text, chiar și atunci când caracterele sunt numere. Cu alte cuvinte, adresele se sortează după prima cifră, apoi după a doua cifră și așa mai departe, nu după valorile numerice din care sunt formate. Tabelul următor afișează adresele din tabelul anterior, sortate în ordine alfabetică în câmpul AdresăIP.

IDComputer

AdresăIP

3

1.198.3.93

˛

104.244.253.29

2

104.244.4.1

1,6

104.30.244.2

Ľ

123.4.245.23

4

32.183.93.40


Adresele care încep cu 1 sunt afișate înaintea adreselor care încep cu 2 și așa mai departe. Tabelul următor afișează adresele în ordinea ascendentă corectă.

IDComputer

AdresăIP

3

1.198.3.93

4

32.183.93.40

1,6

104.30.244.2

2

104.244.4.1

˛

104.244.253.29

Ľ

123.4.245.23


Pentru a înțelege mai ușor pașii pe care îi presupune sortarea acestor adrese, scindați adresele IP în patru părți numerice. Adresele trebuie sortate după prima parte, apoi după prima valoare din prima parte, apoi după partea a doua și așa mai departe. Tabelul afișează fiecare parte într-o coloană diferită și, deoarece coloanele conțin valori numerice simple, este posibil să sortați coloanele de la stânga la dreapta, în ordine ascendentă, așa cum se arată în tabelul următor.

ParteI

ParteII

ParteIII

ParteIV

Ľ

89,81

3

93

81,30

183

93

101,60

104

30

244

˛

104

244

4

Ľ

104

244

253

29

123

4

245

23


Sortarea celor patru părți separat este trucul care explică sortarea adreselor IP. În procedeul care urmează, creați o interogare care, la fel ca în cazul câmpului adresă IP, include patru coloane calculate în care fiecare coloană stochează o parte a valorilor adresei. Prima coloană calculată va cuprinde prima parte numerică a adresei, a doua coloană calculată va cuprinde a doua parte numerică a adresei și așa mai departe. În loc să sorteze înregistrările după câmpul AdresăIP, interogarea va sorta înregistrările după cele patru coloane calculate.

Începutul paginii

Crearea interogării

Veți crea o interogare selectată denumită AdreseIP sortate, care va afișa înregistrările în ordinea ascendentă a adreselor IP. Să presupunem că baza de date curentă are un tabel denumit DetaliiComputer care include un câmp text denumit AdresăIP.

  1. Pe fila Creare, în grupul Altele, faceți clic pe Proiectare interogare.

  2. În caseta de dialog Afișare tabel, pe fila Tabele, faceți clic pe DetaliiComputer, apoi faceți clic pe Adăugare. Închideți caseta de dialog.

  3. Glisați câmpurile IDComputer și AdresăIP în grila de proiect a interogării.

  4. Acum sunteți gata să adăugați coloane calculate. În prima coloană necompletată din partea dreaptă, tastați expresia PartI: Val(Left([IPAddress],(InStr(1,[IPAddress],".") -1))) în rândul câmp . Expresia returnează caractere înaintea primei perioade (.) în câmpul IPAddress.

    Acum, revizuiți expresia. Deoarece nu știți cât de multe cifre alcătuiesc prima parte a adresa, puteți utiliza funcția InStr pentru a găsi poziția primei perioade. Scăderea 1 (pentru a exclude perioadei) Returnează numărul de cifre din prima parte. Apoi utilizați acest număr cu funcția stânga pentru a extrage că multe caractere, începând de la stânga caracter din câmpul IPAddress. În cele din urmă, apelați funcția Val pentru a efectua conversia returnată de funcția stânga într-un număr de caractere. Acest ultimul pas este necesară, deoarece tipul de date subiacente este Text.

  5. Salvați interogarea, făcând clic pe Salvare pe bara de instrumente Acces rapid. Este bine să faceți acest lucru după fiecare pas intermediar.

  6. Adăugare coloană pentru a doua parte adresă. În coloana din dreapta a PartI, tastați PartII: Val(Mid([IPAddress],InStr(1,[IPAddress],".") +1,Instr(Instr(1,[Ipaddress],".") +1,[Ipaddress],".") -Instr(1,[Ipaddress],".") -1)) în rândul câmp . Expresia returnează caracterele care se află între prima și a doua perioade în câmpul IPAddress.

    Din nou, revizuiți expresia. Deoarece nu știți cât de multe cifre alcătuiesc a doua parte a adresa sau exact în cazul în care a doua parte pornește (deoarece nu cât timp prima parte este), utilizați funcția InStr pentru a găsi poziții de perioade. Puteți utiliza apoi funcția Mid pentru a extrage caracterele ce urmează prima perioadă dar puneți a doua perioadă. În cele din urmă, apelați funcția Val pentru a efectua conversia returnată de funcția Mid într-un număr de caractere. Acest ultimul pas este necesară, deoarece tipul de date subiacente este Text.

  7. Adăugare coloană pentru a treia parte adresă. În coloana din dreapta a PartII, tastați PartIII: Val(Mid([IPAddress],InStr(InStr(1,[IPAddress],".") +1,[Ipaddress],".") +1,Instr(Instr(Instr(1,[Ipaddress],".") +1,[Ipaddress],".") +1,[Ipaddress],".") -Instr(Instr(1,[Ipaddress],".") +1,[Ipaddress],".") -1)) în rândul câmp . Expresia returnează caracterele care se află între perioade al doilea și al treilea în câmpul IPAddress.

    Din nou, examinați expresia. Deoarece nu știți din câte cifre este formată partea a treia a adresei sau de unde începe exact a treia parte (pentru că nu cunoașteți lungimea primelor două părți), utilizați funcția InStr pentru a găsi poziția punctelor. Utilizați apoi funcția Mid pentru a extrage caracterele care urmează după cea de-a doua parte și care precedă al treilea punct. La sfârșit, utilizați funcția Val pentru a face conversia la număr a caracterelor returnate de funcția Mid. Acest ultim pas este necesar deoarece tipul de date de bază este Text.

  8. Adăugați coloana pentru partea al patrulea și ultimul adresă. În coloana din dreapta a PartIII, tastați PartIV: Val(Right([IPAddress],Len([IPAddress])-InStr(InStr(InStr(1,[IPAddress],".") +1,[Ipaddress],".") +1,[Ipaddress],"."))) în rândul câmp . Expresia returnează caracterele ce urmează ultima perioadă.

    Din nou, revizuiți expresia. Soluția este să găsiți locația a treia perioadă și apoi extrage toate caracterele pe care îl urmăriți. Deoarece nu știți exact în cazul în care a treia perioadă se află, apelați funcția InStr de trei ori pentru a găsi poziția a treia perioadă. Puteți utiliza apoi funcția Len pentru a calcula numărul de cifre în a patra parte. Numărul de cifre returnate apoi utilizată cu funcția dreapta pentru a extrage care numărul de caractere dintr-o porțiune dreapta câmpului IPAddress. În cele din urmă, apelați funcția Val pentru a efectua conversia returnată de funcția Mid într-un număr de caractere. Acest ultimul pas este necesară, deoarece tipul de date subiacente este Text.

  9. Setați rândul Sortare al tuturor coloanelor calculate la Ascendent.

    Important    Rândul Sortare al coloanei AdresăIP trebuie lăsat necompletat.

    Pentru a sorta după alte valori de câmp, la fel ca în cazul adreselor, plasați câmpurile în partea din stânga sau din dreapta a tuturor celor patru coloane calculate. Nu plasați restul câmpurilor sortate între coloanele calculate.

  10. Pasul următor arată cum se ascund cele patru coloane calculate din foaia de date. Înainte de a face aceasta, comutați la Vizualizare foaie de date pentru a vedea rezultatele expresiilor din coloanele calculate. Tabelul următor afișează coloanele pe care le veți vedea în Vizualizare foaie de date.

IDComputer

AdresăIP

ParteI

ParteII

ParteIII

ParteIV

3

1.198.3.93

Ľ

89,81

3

93

4

32.183.93.40

81,30

183

93

101,60

1,6

104.30.244.2

104

30

244

˛

2

104.244.4.1

104

244

4

Ľ

˛

104.244.253.29

104

244

253

29

Ľ

123.4.245.23

123

4

245

23

  1. Reveniți la Vizualizare proiect și debifați caseta de selectare din rândul Afișare al tuturor celor patru coloane calculate. Aceasta împiedică afișarea coloanelor calculate în Vizualizare foaie de date.

  2. Opțional, specificați criterii pentru excluderea înregistrărilor din interogare.

  3. Comutați la Vizualizare foaie de date pentru a vedea înregistrările în ordine sortată. Veți vedea înregistrările sortate corect în ordinea ascendentă a adreselor IP.

Începutul paginii

Mai multe utilizări ale adreselor IP sortate

Validarea adreselor IP în timpul introducerii datelor

Dacă doriți să validați adrese fără a scrie cod, puteți face acest lucru într-o măsură limitată setând proprietatea mască intrare câmpului la #. ###. ###. ###; 0; " " și proprietatea Format a câmpul adresă IP la & & & & & & & & & & & &.

Ce face o mască de intrare? Când începeți să tastați în câmpul adresă, masca de intrare vă împiedică să introduceți alte caractere decât numere și spații între cele trei puncte. Dacă o parte numerică este formată dintr-un număr cu două cifre, lăsați a doua cifră necompletată sau tastați în schimb un spațiu. Rețineți că masca de intrare nu avertizează utilizatorul dacă acesta omite să tasteze una sau mai multe părți ale adresei sau dacă tastează spații în locul unei valori numerice. De exemplu, "345. .3. " se acceptă ca adresă validă.

Ce face formatul de afișare? Când terminați de tastat și părăsiți câmpul, formatul de afișare elimină spațiile din adresă și afișează numai numerele și punctele. Așadar, dacă ați tastat "354.35 .2 .12 ", adresa se afișează ca "354.35.2.12". Rețineți că dacă faceți clic în adresă sau apăsați F2 (pentru a intra în modul de editare) atunci când adresa este selectată, spațiile reapar.

Sfat : Pentru a copia o adresă, mutați la coloana sau la controlul precedent, apăsați TAB pentru a selecta adresa formatată, apoi faceți clic pe Copiere. Făcând aceasta, nu veți copia șirul de adrese care conține spații.

Sortarea înregistrărilor dintr-un formular sau raport după adresele IP

Dacă trebuie să creați un formular sau un raport în care să se sorteze înregistrările după adresele IP, bazați obiectul nou pe o interogare care sortează adresele după cum s-a descris în secțiunea precedentă, nu pe un tabel care stochează adrese.

Începutul paginii

Notă : Exonerare de răspundere pentru traducere automată: Acest articol a fost tradus de un sistem computerizat, fără intervenție umană. Microsoft oferă aceste traduceri automate pentru a ajuta utilizatorii vorbitori de alte limbi decât engleza să beneficieze de conținutul despre produsele, serviciile și tehnologiile Microsoft. Pentru că articolul a fost tradus de un computer, poate conține erori de vocabular, sintaxă sau gramatică.

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×