Pentru cazurile in care avem nevoie sa vedem ce fel de setari sunt pe un server de sql am facut o procedura care, rulata pe server, ne arata urmatoarele lucruri:
– daca instalarea e Case Sensitive sau nu
– calea unde sunt fisierele mdf si ldf aferente bazei Master
– calea unde este fisierul care inregistreaza erorile
Pentru ca uneori avem nevoie sa verificam daca o data calendaristica este sau nu ultima zi din luna, am creat o functie care verifica acest lucru. (In ea se apeleaza o alta functie care transforma data intr-un format fara minute si secunde)
In cazul in care avem nevoie ca dintr-un string (adica o insiruire de caractere pe orizontala) delimitat (de un caracter sau un string repetitiv) sa facem o lista (adica sa punem pe verticala parti din stringul anterior, similar functiei TRANSPOSE din excel), am facut o functie care are doi parametri:
– primul parametru este un string (care poate sa fie o coloana dintr-o tabela)
– al doilea un string delimitator
Functia parseaza primul parametru si il imparte sub forma de lista in functie de parametrul numarul doi.
Pentru exemplificare, daca intr-o coloana am ceva de genul:
Dumitru Bogdan;Costache Cristian;Vasilescu Ionel;Mihaescu Georgel
atunci functia, apelata cu primul parametru ca fiind coloana respectiva si cu al doilea parametru ca fiind ‘;’ va returna lista de mai jos:
Id Data
1 Dumitru Bogdan
2 Costache Cristian
3 Vasilescu Ionel
4 Mihaescu Georgel
Avem nevoie uneori, in special cand vrem sa restauram o baza de date, sa deconectam rapid (fara sa luam fiecare sesiune pe rand) toate sesiunile active pe acea baza de date.
Pentru aceasta am facut o procedura stocata ce ia ca parametru numele unei baze de pe server si deconecteaza toate sesiunile de pe acea baza.
Am creat o functie care parseaza un string de caractere si il formateaza impartindu-l in grupuri de x caractere, iar aceste grupuri sunt delimitate de un string la alegere.
Este foarte folositoare la formatarea de IBAN-uri, pt ca diferite rapoarte cer formatarea IBAN-urilor in diferite feluri, si pentru a nu sta de fiecare data sa facem update in tabele fizice sau temporare, putem sa folosim functia de mai jos.
Intalnim deseori ca intr-o tabela sa gasim text, in special in campurile in care este permisa scrierea la liber, care este scris neuniform, in sensul ca ori incepe cu prima litera mica si continua cu restul mari (a fost apasat Caps-ul gresit), ori are litere mari pe la mijloc, tot din apasarea gresit a caps-ului, etc
Pentru a formata un astfel de text, am creat functia de mai jos:
Se intampla uneori sa avem nevoie sa aflam cate zile lucratoare se afla pe un interval de timp.
Pt aceast lucru am creat o functie ce primeste ca parametri doua date calendaristice si, pt acel interval de timp, intoarce numarul de zile lucratoare.
Ne lovim deseori de situatia de a avea un raport cu data de nastere a clientilor dar sa nu avem o coloana cu aceasta data, ci doar o coloana cu cnp. Ca atare suntem nevoiti sa extragem data de nastere din cnp.
Pt a usura rezolvarea problemei am scris o functie care face acest lucru.
Deseori avem nevoie sa comparam doua coloane de tip text, unele avand datele scrise in ele cu litere mici, altele cu litere mari, altele au spatii la inceput sau la sfarsit, iar unele, in cazul cel mai dificil, avand diacritice.