Thursday, May 9, 2013

PostgreSql dynamic function

PostgreSql da funksiyaga istalga select zaprosni berib javobni tablitsa shaklida olish.


create table test as
select 1 id, 'safd' data1,'sagd' data2
union
select 2 id, 'hdfg' data1,'sdsf' data2;

create or replace function test2(a varchar) returns SETOF record as
$BODY$
declare x record;
begin
for x in execute a loop
RETURN NEXT x;
end loop;
return;
end;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;



select * from test2('select * from test') s(a int, b text, c text);
 a |  b   |  c   
---+------+------
 1 | safd | sagd
 2 | hdfg | sdsf

Wednesday, May 8, 2013

Kasperskyni aktivatsiya qilish



1-qadam



2-qadam



3-qadam



Kompyuterni keraksiz fayllardan tozalash

Bu qo`llanmaning afzal tomoni shundaki: 
Ko`rsatmalar orqali oddiy foydalanuvchi 
ham o`z kompyuterini keraksiz 
fayllardan tozalashi mumkin

            Kompyuter ishlashida sekinlashish yoki shunga o`xshash muammolar kelib chiqish muammolari deyarli har birimizda uchraydi. Bunga sabablar nimada? - Shu kompyuterda ishlaymizmi demak unga doim xizmat ko`rsatib turishimiz lozim, chunki qarovsiz qoldirsa hatto temir ham zanglaydi! Xizmat ko`rsatish nima bo`lishi mumkin? - Viruslardan himoya dasturlarini o`rnatish, Kerakli nastroykalarni amalga oshirish, Keraksiz fayllarni o`chirib tashlash va Foydalanilmaydigan Service(служба)larni to`xtatib qo`yish!
Antiviruslar haqida to`xtaladigan bo`lsak- har qaysi antivirusni o`z joyi bor. Kompyuterga virus tushirmaslik hozirda ko`proq antivirusdan foydalana olmaganligimizdan vujudga kelmoqda. Vaqtida ba`zasini yangilab turmaymiz. Umuman olganda antivirus har doim ishlab turishi kerak emas! Agarda kompyuter tarmoqqa, internetga ulanmagan bo`lsa antivirusni o`chirib qo`yish mumkin, chunki tezroq ishlaydi. Qachonki fleshka ulashdan oldin antivirusni qo`shib fleshkani tekshirib olib yana o`chirib qo`ysa bo`ladi. Tarmoqqa ulangan kompyuterlarni antivirus bilan birgalikda ishlating!
            Keraksiz fayllar nima va u qayerdan yig`ilib qoladi? - Windows OS(Operatsion Sistema) sida Temporary Files(vaqtinchalik fayllar) dan ko`p foydalaniladi. Kerakli dastur ochilganda maxsus Temp papkalarda shu fayllar saqlanib turadi. Bu fayllarni shu papkalarga kirib o`chirib yurardik ilgari. Mana bir necha yilki bu noqulayliklarni avtomatik amalga oshiriladigan dasturlar ishlab chiqarilmoqda. Bular Utilit lar deyiladi. Bu utilitlar sistemaga foyda bilan birga ma`lum miqdorda zarar ham keltirishi mumkin. Bularning ichida eng zararsiz bo`lgan dasturlarni keltirib o`tmoqchimiz.
1-Ccleaner(http://www.ccleaner.com/). Bu dasturga qo`llanma quyida keltirillgan.
2-Auslogics Disk Defrag 1.3 (free version)
Dasturning ko`rinishi quyidagi 1-rasmda keltirilgan


1-rasm


Zapustit Cleaner tugmasi 2-3 marta bosiladi, shunda kompyuterni keraksiz fayllardan tozalaydi.
Vaqti-vaqti bilan registrlarni ham tozalab turish foydali. Chunki Windows OS registrlarga tayanib ishlaydi. Registrni oddiy so`z bilan eng tez ishlaydigan ma`lumotlar ba`zasi deyish mumkin. Bu yerda faqat nastroykalar saqlanadi. Bu yerda ham keraksiz ma`lumotlar yoki ma`lumoti yo`q manzillar ancha sekinlashtirib qo`yishi mumkin. Aslida Registrlarni ham defragmentatsiya qilgan yaxshi. Ammo har qanday dasturni ishlataverish yaramaydi! Ccleanerdagi registr muammolarini ta`mirlash bo`limi zararlimi yoki yo`qmi tekshirib ko`rmaganman!
Foydalanish uchun Poisk problema va so`ng Ispravit tugmalari bosiladi (2-rasm)


2-rasm
Shu o`rinda Kompyuter ishga tushganida sekin yuklanish muammosi ham ko`pchiligimizda uchraydi.
Сервис => Автозагрузка bu sizning mashinangiz ishga tushganda birinchi yuklanadigan dasturlar ro`yxati. Keraklisini qoldirib qolganini shu yerdan o`chirib qo`yish yaxshiroq. Kerakli ekanini qanday bilamiz? - Qizil to`rtburchak bilan belgilangan joyga e`tibor bering. C:/Windows/ bilan boshlangan shu ro`yxatdagi har qanday file kerakli! Undan tashqari Программа  bo`limida ko`rib turganingizdek dastur nomi ko`rsatilgan. E`tibor bering Antivirus qoldirishi kerak, Google Update qolishi kerak . va sizga kerakli bo`lganlari qolaveradi.(3-rasm)

3-rasm



DASTURDAN FOYDALANISH YUQORIDA TUSHUNTIRIB O`TILDI. ENDI BU DASTURNI BIR BUYRUQ BILAN AVTOMATIK ISHLATIB YUBORISHNI NASTROYKA QILIB QO`YISH MUMKIN. E`TIBORINGIZNI SHUNGA QARATAMIZ.
Demak 4-rasmda ajratib ko`rsatilgan joylarga qizil rang bilan chizilgan. Shu joylarga galchka qo`ying.
4-rasm
5-ramda ko`rsatilgandek Korzina ga sichqonchaning o`ng tugmasini bosasiz va ushbu munyu ochiladi. Zapustit Ccleaner ni bosing va avtomatik tarzda o`zi tozalaydi.
5-rasm
Kompyuterni ishga tushirganda bir marta Zapustit qilib olishingizni maslahat beramiz.



Dasturni bu yerdan ko`chirib oling!

Windows OS da shriftlar bilan muammo bo`lganda


BA`ZI O`ZBEKCHA KRILL HARFLARI (???) BO`LIB KO`RINYAPTI, YOKI KVADRAD VA HKZ. NOTANISH SIMVOLLAR BN CHIQIB QOLYAPTI  NIMA QILSAM BO`LADI?
Windows 7 da. Quyidagicha hal qilasiz!
Windows + R klavishalari birgalikda bosiladi va  "intl.cpl" ni yozib so`ng Enter tugmasini bosasiz. Quyidagi oyna ochiladi.



Administrative bo`limiga kiramiz.





Change system locale... tugmasi ustida sichqonchaning chap tugmasi bosiladi va ushbu oynaga ega bo`lamiz


Uzbek krill ni tanlab perezagruzka qilasiz va muammo hal.

Tuesday, May 7, 2013

JSON template ning tarkibidan ko`rsatilgan blockni olib tashlash


JSON template ning tarkibidan ko`rsatilgan blockni olib tashlash uchun quyidagicha ajoyib querydan foydalanish mumkin:





create or replace function remove_text(a varchar, t text,_first text='', _last text='', _position integer=0, _qavssoni integer=0 )
 returns text as
$BODY$
begin
select position(a in t) into _position;
select substring(t,0,_position) into _first;
select substring(t,_position+length(a)+1,length(t)) into _last;
select clear_qavs_block(_last, 0) into _last;
select _first||_last into t;
if(position(a in t)>0)
then return remove_text(a,t);
else
return t;
end if;
end;
$BODY$
LANGUAGE plpgsql VOLATILE;

create or replace function clear_qavs_block(a text, _qavscount integer)
returns text as
$body$
declare x varchar(1)=(select substring(a,1,1));
begin
select (case x when '{' then 1 when '}' then -1 else 0 end)+_qavscount into _qavscount;
select substring(a,2,length(a)-1) into a;
if(_qavscount>0) then return clear_qavs_block(a,_qavscount);
else
return substring(a,2,length(a));
end if;


end;
$body$
LANGUAGE plpgsql VOLATILE;

select remove_text('"status"','{"facetFilter":{"facetContentList":{"caseorign":{},"relatedContact":{},"status":{"0":{"id":"527","name":"New"}},"assignees":{"1":{"id":"41","name":"Allison Cayse"},"0":{"id":"7","name":"Doni Abdulxafizov"}},"priority":{},"department":{},"resolver":{},"reportby":{},"type":{},"relatedCrmAccount":{}},"facetCustomList":{},"facetSettingList":{"caseorign":{"trow":"2","tcell":"1"},"relatedContact":{"trow":"3","tcell":"1"},"status":{"trow":"1","tcell":"4"},"assignees":{"trow":"2","tcell":"2"},"priority":{"trow":"1","tcell":"3"},"department":{"trow":"2","tcell":"3"},"resolver":{"trow":"2","tcell":"4"},"reportby":{"trow":"1","tcell":"1"},"type":{"trow":"1","tcell":"2"},"facetDatePeriod":{"trow":"3","tcell":"3"},"relatedCrmAccount":{"trow":"3","tcell":"2"}}}}')


ORIGINAL--{"facetFilter":{"facetContentList":{"caseorign":{},"relatedContact":{},"status":{"0":{"id":"527","name":"New"}},"assignees":{"1":{"id":"41","name":"Allison Cayse"},"0":{"id":"7","name":"Doni Abdulxafizov"}},"priority":{},"department":{},"resolver":{},"reportby":{},"type":{},"relatedCrmAccount":{}},"facetCustomList":{},"facetSettingList":{"caseorign":{"trow":"2","tcell":"1"},"relatedContact":{"trow":"3","tcell":"1"},"status":{"trow":"1","tcell":"4"},"assignees":{"trow":"2","tcell":"2"},"priority":{"trow":"1","tcell":"3"},"department":{"trow":"2","tcell":"3"},"resolver":{"trow":"2","tcell":"4"},"reportby":{"trow":"1","tcell":"1"},"type":{"trow":"1","tcell":"2"},"facetDatePeriod":{"trow":"3","tcell":"3"},"relatedCrmAccount":{"trow":"3","tcell":"2"}}}}
STATUS BLOCKi O`CHIRILGAN--{"facetFilter":{"facetContentList":{"caseorign":{},"relatedContact":{},"assignees":{"1":{"id":"41","name":"Allison Cayse"},"0":{"id":"7","name":"Doni Abdulxafizov"}},"priority":{},"department":{},"resolver":{},"reportby":{},"type":{},"relatedCrmAccount":{}},"facetCustomList":{},"facetSettingList":{"caseorign":{"trow":"2","tcell":"1"},"relatedContact":{"trow":"3","tcell":"1"},"assignees":{"trow":"2","tcell":"2"},"priority":{"trow":"1","tcell":"3"},"department":{"trow":"2","tcell":"3"},"resolver":{"trow":"2","tcell":"4"},"reportby":{"trow":"1","tcell":"1"},"type":{"trow":"1","tcell":"2"},"facetDatePeriod":{"trow":"3","tcell":"3"},"relatedCrmAccount":{"trow":"3","tcell":"2"}}}}
DEPARTMENT BLOCKi O`CHIRILGAN--{"facetFilter":{"facetContentList":{"caseorign":{},"relatedContact":{},"status":{"0":{"id":"527","name":"New"}},"assignees":{"1":{"id":"41","name":"Allison Cayse"},"0":{"id":"7","name":"Doni Abdulxafizov"}},"priority":{},"resolver":{},"reportby":{},"type":{},"relatedCrmAccount":{}},"facetCustomList":{},"facetSettingList":{"caseorign":{"trow":"2","tcell":"1"},"relatedContact":{"trow":"3","tcell":"1"},"status":{"trow":"1","tcell":"4"},"assignees":{"trow":"2","tcell":"2"},"priority":{"trow":"1","tcell":"3"},row":"2","tcell":"3"},"resolver":{"trow":"2","tcell":"4"},"reportby":{"trow":"1","tcell":"1"},"type":{"trow":"1","tcell":"2"},"facetDatePeriod":{"trow":"3","tcell":"3"},"relatedCrmAccount":{"trow":"3","tcell":"2"}}}}