Cautare a n-a aparitie intr-un string

M-am intalnit deseori cu problema de a cauta intr-un string sau o coloana de tip varchar a doua sau a treia recurenta a unui alt string.

Pentru aceasta situatie am facut o functie care cauta intr-un string (sau o coloana de tip varchar dintr-o tabela) a n-a apartie a unui sir de caractere.

Functia are 3 parametrii:

– un parametru de tip varchar ce reprezinta stringul cautat

– un parametru de tip varchar ce reprezinta stringul (sau coloana din tabela) in care se face cautarea

– un parametru de tip int ce reprezinta a cata apartiei a primului parametru in cel de-al doilea parametru este cautata

[mai mult...]

Cautare numere lipsa in coloana

Avem nevoie uneori sa gasim valorile lipsa (sau plaja de valori lipsa dintr-o coloana de tip integer)

Pt aceasta situatie am creat un script care parcurge o coloana de tip INTEGER si intoarce valorile lipsa din aceasta coloana , mai exact intoarce, pt fiecare serie de numere lipsa, numarul de start  al seriei lipsa, numarul de sfarsit al seriei lipsa si lungimea seriei care lipseste.

In scriptul de mai jos trebuie doar sa inlocuiti NUMELE TABELEI si NUMELE COLOANEI din tabela respectiva.

Cele doua locuri in care se fac inlocuirile sunt marcate cu comentarii pt a fi vizibile.

[mai mult...]

Generator de parole

Sunt cazuri in care avem nevoie sa punem parole pt diferite servicii (sau chiar si pt useri cu drepturi mai mari) si vrem sa fie o parola care sa fie puternica si sa nu fie usor de spart.

In cazul in care nu avem inspiratie , am creat in TSQL un generator de parole care primeste urmatorii parametri:

@useNumbers   de tip bit   – daca are valoarea 1 se vor folosi numere la generarea parolei, daca are valoarea 0 nu se vor folosi numere la generarea parolei

@useLowerCase de tip bit – daca are valoarea 1 se vor folosi litere mici la generarea parolei, daca are valoarea 0 nu se vor folosi litere mici la generarea parolei

@useUpperCase de tip bit – daca are valoarea 1 se vor folosi litere mari la generarea parolei, daca are valoarea 0 nu se vor folosi litere mari la generarea parolei

@charactersToUse de tip varchar – daca se pune null se vor folosi toate literele alfabetului, daca nu se doreste asta se poate pune un string din care se vor alege caracterele pt generarea parolei

@specialCharacters de tip bit – daca are valoarea 1 se vor folosi si caractere speciale la generarea parolei, daca are valoarea 0 nu se vor folosi caractere speciale

@passwordLength de tip int – lungimea parolei

 

Procedura are inca un parametru de tip OUT si se apeleaza astfel:

declare @a varchar(10)    — unde @a este lungimea parolei
EXEC BD_GeneratorParola 1,1,1,null, 1, 10,@a OUT
PRINT @a

[mai mult...]

Disable sql logins

Avem nevoie uneori sa dam disable rapid la toti logins de sql , mai putin la cei care sunt sysadmin, pentru diferite operatiuni de mentenanta sau mai grav, pentru cazul in care ceva a fost alterat gresit in baza si e nevoie de un restore.

Pentru aceasta situatie am facut procedura de mai jos.

[mai mult...]

Top 10 tabele dupa dimensiune

Pentru cazurile in care avem nevoie sa aflam care sunt tabelele cu cea mai mare dimensiune dintr-o baza am facut o procedura care returneaza acest top in functie de un parametru, @rows.

Daca @rows = 1 atunci se returneaza top 10 in functie de numarul de linii din tabela.

Daca @rows = 0 atunci se returneaza top 10 in functie de dimensiunea (exprimata in kb) tabelelor.

[mai mult...]