cѓ ™аcХЏ70KKMOSW[_____cgkooooyƒ“L?L#ЌSђEƒ)a\/]кКџџџџ џџџџ0KKMOSW[_____cgkooooyƒ“L?L#ЌSђEƒ)a\/]кКџџџџ џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ 0џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ 0џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ и4џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ и4џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ Рџџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кК8џџџџ Рџџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКpџџџџ Рџџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКАџџџџ Рџџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКАџџџџ Рџџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКАџџџџ {и џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКјџџџџ {и џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКHџџџџ {и џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кК џџџџ {и џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ {и џџџџ0KKMOSW[__iiimquyyyyƒL?L#ЌSђEƒ)a\/]кКџџџџ {и џџџџЋу"єwU ѕw)еи)К,іwЄіw/іwHъ ѕw(xKрЈ+€,іwЄіw,p,іwЄіw/іwl,іwЄіw/іw8+‹,іwЄіw/іw@@,іwЄіwX)d0*xи)xxx@@xx@xxxš,@ј%€,)@Р*+xxxxЈ+xxХ,ш&јˆ,)xxu+xј+€xx,€Xxpр)X)a xА+xXh,ј€*XЈ+А+€,,,D™hT™€hxH—џџџџД™4ZєwXћјwџџџџ/іwФ™хЄњwЩЄњwф™4ZєwXћјwј+Ј+Xx,,€T™,4Zєd™џџџџа›4Zєwp„ћwџџџџЩЄњw"іw/іwDœ4Zєwp„ћwџџџџЩЄњw"іw/іwh€š<xš<<<xšІšш0<ˆ<№0<š šxšІš4Zєwp„ћwџџџџЩЄњw"іw? /іwP<иЄšxš'8аЄšаЄšиЄš<›hššŒ›ТDїwŒ›Eїw2Eїw  №џ Œ›L›џџџџ4ZєwТDїwр›№›ТDїw№›Eїw2Eїw D№џ №›4ZєА›џџџџ84Zєwш$љwџџџџ2EїwxEїw œ$Dt,jxEїwЛ:њwшєwиŒєwwgњwіƒњwzЂњw"іw\oєwкwМwЩ}єwDѕwn(ѕwž*ѕw„фw…фwЃ’e r-t’8{’?fMА’ŒѓфwDѕwn(ѕwž*ѕw„фw…фwЃ’e r-t’8{’?fMА’Œѓфwd\РMА_;њwР8њw@eќwї;њw(** *\ АРMАИœ4ZєwАXPА c:њwXPА`\\x А,ќ/`PР8њw@eќwї;њwt,(,D\Px АXPА4Zєw ž4Zєwprћwџџџџї;њwћєw`LЕЊіƒњwzЂњw"wgњwіƒњwzЂњw"іw\oєwкwМwЩ}єwDѕwn(ѕwž*ѕw„фw…фwЃ’e r-t’8{’?fMА’ŒѓфwDѕwn(ѕwž*ѕw…фwЃ’žД} јзfњwLЕЊžžзfњwіl(,,žwgњw (,DlD Аžіƒњw †„њw h рžіƒњw  †„њw  а+4ž(,DžџџџџŸ4Zєw(ћwџџџџ†„њwzЂњw ЩЄњw DŸ4Zєw(ћwџџџџ†„њwzЂњw ЩЄњw ДžИž4ZєФžџџџџ0Ё4Zєwp„ћwџџџџЩЄњw"іw /іw|+ `Ё4Zєwp„ћwџџџџЩЄњw"іw /іw 'йлwt Œ шŸt 8Ь Rдлwд ƒрw№‚рwˆ €АŒKАфŸc:њwŒKА8 XXА`ќ/8 ( Р8њw@eќwї;њwx%X%V  cќИрD7О­œDDDDDD`ddp`tp`hphh`hhp@@@@@@@@ap`p`p`pDDB@@@@@@HH@H@HHphh``pphp`p`p`phphphhh``H@@HH@@@@HHHHHH`p`phphhHhhh`p`ppH@HHHHHHHHHHHHHHHHHHHHHHHHHHHHHH``d``````ap`pc``p`php`HHHHHHHHHHHHHHH@HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH@@@HHhhhhhhhhhhhh```p`phppphhHHHHH 0(hhhhhhhh```ppp`p`p`hhh`phppphphp!0 0 0 ```p`ph``p`p`p`p`pphphph``p`p`p`h`hp`p````p`hhhhH@HHHHHHhp`p`p`pH@@@@@@@@H@@@@@@H@H@Hhh`p`pap`p`p````0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 !0$ $!$# $$  0 0 0 0 0 0 0 00 0 (0(0 00 0 0 0 0 0 0 0 0`ZcіИрF і^8РB ЛџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџО` ZcіЕFФ ^8 О`Zcі‹0 ^8џџџџџџџџџџџџџџџ@€ @€ @€ @€ @€ @€ @€ @€ О`Zcі^8О`С ,Štˆшj&sys|˜U“јџHsysobjects0*S р |˜U“јџHsysindexes0*S  р@|˜U“јџHsyscolumns0*S  р0|˜U“јџJsyscomments0*S р|˜U“јџFsysfiles1*0* S  р|˜U“јџPsyspermissions0* S рP|˜U“јџDsysusers0* S р|˜U“јџNsysproperties0* S  р@|˜U“јџHsysdepends0*S )рP|˜U“јџNsysreferences0*S р |˜U“јџZsysfulltextcatalogs0*S  р0|˜U“јџLsysdatabases0*!S  р@|˜U“јџHsysxlogins0*#S р|˜U“јџHsysdevices0*$S р|˜U“јџJsysmessagess0*%S р|˜U“јџNsysconfigures*0*(S р@|˜U“јџHsysservers0*^S  р|˜U“јџJsysaltfilest0*`S р |˜U“јџNsysfilegroupsi0*’UP рbK˜U“јџ`sp_MS_marksystemobject0*Ы5IP рџL˜U“јџfsp_MS_upd_sysobj_category0*Z=P рєN˜U“јџNsp_db_upgradey0*vЂ%U  рA™U“ Hspt_monitor0*ЏЦU  р!B™U“ Fspt_valuesN0*шъ D €ЏЦB™U“ nDF__spt_value__statu__060DEAE8*0*!U р3D™U“ Pspt_fallback_db0*Z3іU  рНE™U“ Rspt_fallback_devр0*“WъU  рFG™U“ Rspt_fallback_usg0*Ь{о P РW”™U“ Xsp_dropextendedproc0*h P Рј™U“ Vsp_helpremoteloginџ0*Ё+P Р`љ™U“ Hsp_helpsort0*кOP Рељ™U“ Fsp_helpsql˜0*tќP Р%њ™U“ Fsp_monitor0*L˜№P Рћ™U“ Nsp_processmailр0*…МфP Рhћ™U“ Jsp_recompile р0*ОриP Раћ™U“ Psp_remoteoption0*їЭP Р$ќ™U“ \sp_invalidate_textptr0*0)СP Рoќ™U“ Nsp_tableoption0*iMЕP Рбќ™U“ Lsp_procoption0*ЂqЉ P Р3§™U“ Hsp_renamedb0*л• P Рu§™U“ \sp_remove_tempdb_file0*щiЧP ря>šU“ Rsp_datatype_info0*Эњ—P р}@šU“ Bsp_fkeys€0*xgt P р‰AšU“ Bsp_pkeyst0*Б‹h P рBšU“ Nsp_server_infot0*MЊX €1›U“ fxp_instance_regdeletevaluee0*†;žX €D1›U“ lxp_instance_regaddmultistring0*П_’X €†1›U“ rxp_instance_regremovemultistring0*јƒ†X €Ш1›U“ `xp_instance_regenumkeys0*1ЈzX € 2›U“ dxp_instance_regenumvalues0*jЬnX €K2›U“ bxp_instance_regdeletekey0*Ѓ№bX €Œ2›U“ \xp_getprotocoldllinfo0*мWX €Ю2›U“ Pxp_readerrorlog0*9KP  ?3›U“ Psp_readerrorlog0*N]? X €“3›U“ Rxp_enumerrorlogs0*‡3 P  ч3›U“ Rsp_enumerrorlogss0*2S 4€ фWљLPsysscalartypes0*JS 4€фZљLTsyssingleobjrefs0*KS 4€ф[љLRsysmultiobjrefsa0*S 4€ф\љLDsysprivs0*S € ф^љLNsysallocunits0*S €х_љLHsysrowsets0*S €ф`љLTsysrowsetcolumns0*S € фaљLDsyshobts0* S €фbљLPsyshobtcolumns0*S €фcљLFsysserefsk0*LS €фcљLHsysdbfiles0*S € фfљLDsysdbreg0*+S € фhљLDsysxsrvs0*/S €фiљLHsysrmtlgns0*0S €фiљLHsyslnklgns0**S € фjљLDsysxlgns0*-S €фlљLJsysusermsgsn0*<S €фlљLLsysobjvalues0*"S € фmљLHsysschobjs0*@S €фoљLHsysclsobjs0*,S €фpљLFsysnsobjs0*)S €фqљLHsyscolpars0*3S € фsљLRsystypedsubobjs*0*6S € фtљLJsysidxstatsg0*7S €фuљLFsysiscolso0*AS €фvљLNsysrowsetrefso0*S € фwљLFsysownersn0*S €фxљLFsysftinds0*1S €фzљLFsysxpropsTsyssingleobjrefs0*KS 4€ф[љLRsysmultiobjrefs_0*S 4€ф\љLDsysprivs0*S € ф^љLNsysallocunits 0*S €ф_љLHsysrowsets0*S €ф`љLTsysrowsetcolumns0*S € фaљLDsyshobts0* S €фbљLPsyshobtcolumns0*S €фcљLFsysserefsu0*LS €фcљLHsysdbfiles0*S € фfљLDsysdbreg0*+S € фhљLDsysxsrvs0*/S €фiљLHsysrmtlgns0*0S €фiљLHsyslnklgns0**S € фjљLDsysxlgns0*-S €фlљLJsysusermsgss_helФ Ф Ф Ф Ф Ф Ф Ф Ф Ф Ф Ф Ф Ф Ф ќ  | И ИМ0 hhр „ t МЈ4 X`ш є˜ ”P Ш Д`Р Lh dАЈшT`Р`ˆ|40№Фx XЌј@ˆЬ„œ8ь4№Ј` cњ ǘ€VšЄ••Д0Hmaster d ЙАk%а4A€P™Е‰Шќ$JЌkбНЈD'•ш@2 }7єw`“фwмЊмЊŒŠ%“фw*ќЊ€Šр<ї М чw ўчwџџџџ%“фw1Вc ЋЋу"єwU ѕw)еи)К,іwЄіw/іwHъ ѕw(xKрЈ+€,іwЄіw,p,іwЄіw/іwl,іwЄіw/іw8+‹,іwЄіw/іw@@,іwЄіwX)d0*xи)xxx@@xx@xxxš,@ј%€,)@Р*+xxxxЈ+xxХ,ш&јˆ,)xxu+xј+€xx,€Xxpр)X)a xА+xXh,ј€*XЈ+А+€,,,D™hT™€hxH—џџџџД™4ZєwXћјwџџџџ/іwФ™хЄњwЩЄњwф™4ZєwXћјwј+Ј+Xx,,€T™,4Zєd™џџџџа›4Zєwp„ћwџџџџЩЄњw"іw/іwDœ4Zєwp„ћwџџџџЩЄњw"іw/іwh€š<xš<<<xšІšш0<ˆ<№0<š šxšІš4Zєwp„ћwџџџџЩЄњw"іw? /іwP<иЄšxš'8аЄšаЄšиЄš<›hššŒ›ТDїwŒ›Eїw2Eїw  №џ Œ›L›џџџџ4ZєwТDїwр›№›ТDїw№›Eїw2Eїw D№џ №›4ZєА›џџџџ84Zєwш$љwџџџџ2EїwxEїw œ$Dt,jxEїwЛ:њwшєwиŒєwwgњwіƒњwzЂњw"іw\oєwкwМwЩ}єwDѕwn(ѕwž*ѕw„фw…фwЃ’e r-t’8{’?fMА’ŒѓфwDѕwn(ѕwž*ѕw„фw…фwЃ’e r-t’8{’?fMА’Œѓфwd\РMА_;њwР8њw@eќwї;њw(** *\ АРMАИœ4ZєwАXPА c:њwXPА`\\x А,ќ/`PР8њw@eќwї;њwt,(,D\Px АXPА4Zєw ž4Zєwprћwџџџџї;њwћєw`LЕЊіƒњwzЂњw"wgњwіƒњwzЂњw"іw\oєwкwМwЩ}єwDѕwn(ѕwž*ѕw„фw…фwЃ’e r-t’8{’?fMА’ŒѓфwDѕwn(ѕwž*ѕw…фwЃ’žД} јзfњwLЕЊžžзfњwіl(,,žwgњw (,DlD Аžіƒњw †„њw h рžіƒњw  †„њw  а+4ž(,DžџџџџŸ4Zєw(ћwџџџџ†„њwzЂњw ЩЄњw DŸ4Zєw(ћwџџџџ†„њwzЂњw ЩЄњw ДžИž4ZєФžџџџџ0Ё4Zєwp„ћwџџџџЩЄњw"іw /іw|+ `Ё4Zєwp„ћwџџџџЩЄњw"іw /іw 'йлwt Œ шŸt 8Ь Rдлwд ƒрw№‚рwˆ €АŒKАфŸc:њwŒKА8 XXА`ќ/8 ( Р8њw@eќwї;њwx%X%`cў ‚АСЛ џџџ Xџџџџ  zLІ|#Kа4а4 џџџџ<dd<` Z,і ˆшa^8О`!c[‹Џ Œ№™†!TNN ! TZR !TPR !TPR !TPR !TPR ! TPR ! TPR ! TPR ! TPR ! TPR !TPR !TPR !TPR !TPR !TPR !TPR !TPR !TPR ! TPR !!TPR !dTSR !eTSR !fTSR !gTSR "hTSR !iTSR !jTSR !kTSR !l TSR !m!TSR !n"TSR !o#TSR !p$TSR !q%TSR !r&TSR !s'TSR !t(TSR !u)TSR!v*TSR !w+TSR !x,TSR !y-TSR !Ш.TLR !Щ/TLR !Ъ0TLR !3TSR !,4TSR !-5TSR !.6TLN !/7TSR !08TSR !19TSR !2:TSR !3;TSR !4<TSR !5=TSR !6>TSR !7?TSR !8@TSR !9ATSR !: TSR !;BTSR !<CTSR !=%TSR !>DTSR !?EVSR !@FTSR !ATSR !BGTSR !DHTSR !EITSR !FJTSR !GKTSR !HLTSR !IMTKR !hNTSR !OAAN !PAAN !QAAN !iRAAN !jSAAN !kTAAN !lUAAN !mVAAN !nWAAN !oXAAN !pYAAN !qZAAN !r[AAN !s\AAN !|M|MNS !}N}WNP !J TSR !K TSR !L]TSR !M^TSR !NaTSR !tbAAN Ќ ‡ Šb =  ѓ Ю Љ „ _ :  № \ e@і б 7  э Ш Ѓ ~ Y 4  ъ Х   { V 1 чТxS. фПšuP+І Ы  сМ—rM(оЙ”oJ%лЖ‘lG"§иГŽiDњеА‹fAїв­ˆc>єЯЊ…` Zј ^ 8Р` Z[іˆшw^ 8О`c[ѕE Œ№•BTT TTTT T T T T TTTTTTTTTT T!TdTeTfTgThTiTjTk Tl!Tm"Tn#To$Tp%Tq&Tr'Ts(Tt)Tu*Tv+Tw,Tx-Ty.TШ/TЩ0TЪ3T4T,5T-6T.7T/8T09T1:T2;T3<T4=T5>T6?T7@T8AT9 T:BT;CT<%T=DT>ET?FT@TAGTBHTDITEJTFKTGLTHMTINThOAPAQARAiSAjTAkUAlVAnWAnXAoYApZAq[Ar\AsM||N}} TJ TK]TL^TMaTNbAtybK‚.  щv_H1ьеОЇ4яиСЊ“eN7 ђФ­–hQ:# ѕоЧА™ Лвл|ЄkT=&јсЪГœ…nW@)ћфЭЖŸˆqZC,ўчаЙЂ‹t]F/ъгМЅŽw`I‚;k  ЙАP"чтр I:E  IТ Ig I    IvЂ%vЂ%PPQ I!! IZ3іZ3і I“Wъ“Wъ I›€R IХML IУON IЫGF IЧKJ IЩIH I IАlk IЄwv IКFJ I""п%  I'' I))Щ:< I**УBA I++ I,,Ўji I-- I..˜˜™ I// I00 I11 I22œ~ I33 I66RЃЦ I77 I881‰… I99 I::bbc I<<Њ qrpy I@@Ќpo IAA ICC IDD IEEввг IGG IHH III IJJЖNM IKKМ8I INN IPP IZZЊnm I[[   I\\""# I]]$$% I^^ЋЋЌ I__ Ibb I I I;; I;; IRR IRR IUU IUU rys0.44 AcacheGc0.88  Cmaxlen0.88  ?rowsаGfilename0.^44 Cfileid0.^44 Egroupid0.^88  ?size0.^88    Emaxsize0.^88  Cgrowth0.^88  Cstatus0.^88  ?perf0.^44 ?dbid0.^яя  а4?name0.^яя  а4Gfilename0.^­­ & џџ Icreatelsn0.^­­ 0 ўџ Edroplsn0.чџџџџа4?name0.00 Axtype0.00 Cstatus0.44 Ixusertype0.44 Clength0.00  Axprec0.00   Cxscale0.88    Gtdefault0.88   Cdomain0.44   =uid0.44   Greserved0.88  ўџ Mcollationid0. 44 =uid0. 44 Cstatus0. чџџџџа4?name0. ЅЅUўџўџ =sid0. ЅЅ§џ§џ Aroles0. == Kcreatedate0. == Kupdatedate0. 44 Caltuid0. ЅЅ ќџ ќџ Gpassword0.`44 Egroupid0.`44 Mallocpolicy0.`88  Cstatus0.`чџџџџа4Igroupname0.88  ;id0.88   Kschema_ver0.88   Wstats_scАh м˜PР | 4 № Ќ h žžQЗjSЙаƒ6щ œ O  Е h  Ю  4 ч š M Г f  Ь2х˜KўБdЪ}0у–IќЏbШ…{.с”Gњ­` Zі™`D^‚gа8€ О`‚9| hЙАY"uяšc96R:€с9t\9€с9€ MI€с9#€с9vЂ%vЂ% F4€с9!!m€с9Z3іZ3і ї$€с9“Wъ“Wъ \*€с9€с9€с9€с9 !€с91* €с9 ј €с9SO€с9 Œ€с9 Є9€с9€с9""J @,€с9'' B6€с9))“ƒ-€с9** Ž€с9++ : €с9,,8%€с9--!€с9.. м+ €с9//D+€с900Dm€с911r  €с922" E1€с933 6"€с966Š ;'€с977%€с988O* €с999FЇ ” €с9:: /' €с9<<ѓu€с9@@6#€с9AA €с9CC €с9DDЇ) R €с9EE €с9GG# €с9HH63€с9II4Д€с9JJЃ€с9KKk€с9NN$!€с9PPŽ`€с9ZZeW€с9[[c i! €с9\\pW€с9]]c€с9^^z0 €с9__ V( €с9`` У?! €с9aa€с9ЏЦЏЦDлsj€с9|Щ+|Щ+DЗ€с9’Jyt’JytD =€с9ЫnmuЫnmuD$І )€с9“av“avX€с9€€9€с9 €с9 €с9""J €с9))D“ €с9** €с9++ €с9,, €с9..  €с922" €с933D €с966DŠ €с988  €с9:: €с9@@ €с9CC  €с9EEF €с9JJЃ€с9KKk€с9NN€с9ZZe  €с9[[c€с9]]  €с9__  €с9``  €с9aa €с9ЏЦЏЦ@лdj €с9Dag€с9€с9""J €с9**Dac€с9..‘€с922" €с9CCF €с9EE  €с9__)+€с9``F%+ €с9""J  €с9..)+€с9TП< /5/5€с9ЦIЇ> /5/5€с98’@ /5/5€с9bbF €9bbF €9qЖƒA 30€9qЖƒA€9 €9F€9  €9TП< Ќ1d1€9 ЦIЇ> Ќ1d1€9 8’@ Ќ1d1€9;;€9RR74€9UU”“ €977%€9 ЊкwB 84€9 уўkCs€9 уўkCFЬ g^€9уўkCBЬ X^ €9UGTE(€9UU  €9UU”“ €CALL0.h@Dtчч-*ьЎp2ќО€ˆJRж˜Zо b$цЈj,Bю Аr4іИz<ўР‚DШŠєLа’Tиš\рЂd&шЊl.Ю№ В t 6 ј К | > Жx Т „ F  Ъ Œ N  в ” V  :кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPЦд–Xмž`:yf ќЗР?P"  Іц:Ј€:Ј8€ :Ј8€ :А€:Ј8€:Ј8€ :Ј4€$:Ј4€&: Ј8€( : Ј8€, : Ј8€0 : Ј4€4 : ЈЅџџ :Ј8€6:ф€:ь0€ :ь8€ :ь8€:ь8€:z8€:ь4€:ю€: Ђ0€' : Й0€( : Й4€) : Й8€+ : Й4€/ :Й4€1:Й4€3:ЂЅ€џџ:ПЅ€ўџ:œ8€5:ј€:џ0€ :џ€ :ј8€:џ4€:9­€:9­€!:9­€': N€- : 9€5 : N€= : Ў8€E :8€:4€:яа4€ :яа4€ :vЂ%=€:vЂ%8€ :vЂ%8€:vЂ%8€:vЂ%8€:vЂ%8€:vЂ%8€ :vЂ%8€$:vЂ% 8€( :vЂ% 8€, :vЂ% 8€0 :!Їа4€џџ:!=€:!=€ :!4:!Їа4€ўџ:!4€:!4€:!4€:Z3іЇа4€џџ:Z3і=€:Z3і=€ :Z3і8:Z3іЏа4:Z3і8€:Z3і8€:Z3і4€":Z3і Їа4€ўџ :Z3і Їа4€§џ :“WъЇа4€џџ:“Wъ=€:“Wъ=€ :“Wъ8:“Wъ4€:“Wъ8€:“Wъ8€:“Wъ8€":“Wъ 8€& :8€:8€:ча4€џџ:8€ :8€:8€:8€:8€:8€ :8€ :8€:ча4€џџ:8:8 :ча4ўџ:0€:R8€:R8€:R8€ :R­€:R8€:R€:R€$:R€,:U8€:Uч€€џџ:U8€:U0€ :8 :ча4ўџ:0€:;0€:;8€:;8€ :;8€ :;8€:;Џ€:;Џ€:R8€:R8€:R8€ bbbbbbbbb$цЈj,юАr4ж˜Zо іИz<ўР‚DШŠLа’Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`x:D@ рИWэжн:-4€:-4€ :-4€ :-ча4€џџ:. 8€:. ча4€џџ:. Ѕt€ўџ:. Ѕ€§џ:. Ѕ €ќџ:. Ѕаћџ:. Џ€:. Ѕ@€њџ:. 8€ :/8€:/ча4џџџџ:/8:/8€ :/=€:08€:08:0ча4џџ:08€ :0=€:0Ѕ@ўџ:10€:18€:18€ :1ча4€џџџџ:1bўџ:2"8€:2"8€:2"ча4€џџ:2"0€ :2"4€ :2"0€:2"0€:2"8€:2 "8€ :2 "=€ :2 "=€! :2 "8€) :2 "8€- :30€:38€:38€ :3чџџ:30€ :38€:34€:30€:3 0€ :3 8€ :3 8€ :3 8€ :68€:68€:6ча4џџ:68€ :6 8€:60€:60€:60€:6 8€ :. = <.ѓьwdчч44а4MServer Name0.ѓьwdчч55а4QDatabase Name0.ѓьwdчч@66а4IMark Name0.ѓьwdчч77а4QMaster XDESID0.ѓьwd4488 MMaster DBID0.ѓьwdчч,99а4YPreplog Begin LSN0.ѓьwdчч.::а4OPrepare Time0.ѓьwdчч,;;а4[Previous Savepoint0.ѓьwdчч(<<а4SSavepoint Name0.ѓьwd88 == YRowbits First Bit0.ѓьwd88 >> YRowbits Bit Count0.ѓьwd­­?? YRowbits Bit Value0.ѓьwdчч,@@а4YLSN before writes0.ѓьwd44AA QPages Written0.ѓьwd44BB OPage Counter0.ѓьwdччCCа4WBufwrite Page Id0.ѓьwd88 DD WData Pages Delta0.ѓьwd88 EE _Reserved Pages Delta0.ѓьwd88 FF WUsed Pages Delta0.ѓьwd88 GG UData Rows Delta0.ѓьwd88 HH OCommand Type0.ѓьwd88 II SPublication ID0.ѓьwd88 JJ KArticle ID0.ѓьwd88 KK SPartial Status0.ѓьwdччLLа4ECommand0.ѓьwd44MM MByte Offset0.ѓьwd­­NN INew Value0.ѓьwd­­OO IOld Value0.ѓьwdччPPа4SNew Split Page0.ѓьwd88 QQ ORows Deleted0.ѓьwd88 RR MBytes Freed0.ѓьwd88 SS MCI Table Id0.ѓьwd44TT MCI Index Id0.ѓьwd44UU OFileGroup ID0.,leчџџџџа4?name0.,leччаўџўџа4Mdescription0.e5`f88  Etraceid0.e5`f88  Gproperty0.e5`fbbPџџџџ Avalue0.e5`f88  E@handle0.žYTg88  Eeventid0.žYTg88  Gcolumnid0.žYTg88  E@handle0.з}Hh88  Gcolumnid0.з}Hh88  Wlogical_operator0.з}Hh88    ]comparison_operator0.з}HhbbPџџџџ Avalue0.з}Hh88  E@handle„$ЬШ„є<Ќ иd@А`Рpа„4ь˜LјЈPј˜d&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†ЂH ЬŽPд–Xмž`Ё74ЄЉK7"8b'’Jyt’Jyt’Jyt’Jyt’JytЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmuЫnmu“avnt0.ѓьwdчч(<<а4SSavepoint Name0.ѓьwd88 == YRowbits First Bit0.ѓьwd88 >> YRowbits Bit Count0.ѓьwd­­?? YRowbits Bit Value0.ѓьwdчч,@@а4YLSN before writes0.ѓьwd44AA QPages Written0.ѓьwd44BB OPage Counter0.ѓьwdччCCа4WBufwrite Page Id0.ѓьwd88 DD WData Pages Delta0.ѓьwd88 EE _Reserved Pages Delta0.ѓьwd88 FF WUsed Pages Delta0.ѓьwd88 GG UData Rows Delta0.ѓьwd88 HH OCommand Type0.ѓьwd88 II SPublication ID0.ѓьwd88 JJ KArticle ID0.ѓьwd88 KK SPartial Status0.ѓьwdччLLа4ECommand0.ѓьwd44MM MByte Offset0.ѓьwd­­NN INew Value0.ѓьwd­­OO IOld Value0.ѓьwdччPPа4SNew Split Page0.ѓьwd88 QQ ORows Deleted0.ѓьwd88 RR MBytes Freed0.ѓьwd88 SS MCI Table Id0.ѓьwd44TT MCI Index Id0.ѓьwd44UU OFileGroup ID0.,leчџџџџа4?name0.,leччаўџўџа4Mdescription0.e5`f88  Etraceid0.e5`f88  E@handle0.e5`f88  Gproperty0.e5`fbbPџџџџ Avalue0.žYTg88  Eeventid0.žYTg88  E@handle0.žYTg88  Gcolumnid0.з}Hh88  Gcolumnid0.з}Hh88  E@handle0.з}Hh88  Wlogical_operator0.з}Hh88    ]comparison_operator0.з}HhbbPџџџџ Avalue0.ЂЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ> 8’@8’@8’@8’@8’@8’@8’@8’@8’@8’@8’@ qЖƒAqЖƒAqЖƒAqЖƒA ’Jyt ’Jyt ’Jyt ’Jyt ’Jyt Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu Ыnmu “av7777< < < " " уўkCуўkCуўkCуўkCуўkC    *  уўkC   6 UGTE+ ^ ^ ^ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!n]L;*їцеФГЂ‘€o^M<+9:\)KТ јчжХДЃ’p_N=, љшзЦЕЄ“‚q`O>- њщиЧЖЅ”ƒraP?. ћъйШЗІ•„sbQ@/ ќыкЩИЇ–…tcRA0§ ь л Ъ Й Ј — † [u ld }S B 1  ў э м Ы К Љ ˜ ‡ v e T C 2 !  џ ю н Ь Л Њ ™ ˆ w f U D 3 "  я о Э М Ћ š ‰ x g V E 4 #   № п Ю Н Ќ › Š y h W F 5 $   ёрЯО­œ‹УzдiхXG6%ђсаПЎŒ{jYHЁ7В&(ѓтбРЏž|kZI8'єувСАŸŽ}l[J9(ѕфгТJБ  ~m\K:)іхідУВЁn]L;*їцегфѕФГЂБ‘€o^M<m~+ јчжХДЃ’p_N=, љшзЦЕЄ“‚q` Z7іŒ8\^8@јО`‚‹2<h”Ѓ0_‘б70>x<Ћg<щxU;==@A€™C€@€@€@cГЛшџ-D[r‰ ЗЮхќ*AXo†ДЫтљ'>UlƒšБШпі $;Ri€—ЎХмѓ !8Of}”ЋТй№5L@€?€?€? @€?Р@€? @€?€@€?@€?@@€?€?€?€?€?€?€@€?€@€?Р@€?A€?"€?€?'Р@€?)@@€?*@€?+ @€?,@€?- @€?.@@@0€@€?1 @€?2Р@€?3€@€?6р@€?7@€?8@@€?9 @€?:Р@€?;€@€?<€@€?@€@€?A€@€?C@@€?D @€?E€?€?G€?€?H@€?IA€?J A€?K @€?N€?€?P@€?R@@€?U€@€?Zр@€?[@€?\ @€?]@@@@@@_Р@Р@Р@a@A€?b€A€?ЏЦ @€?|Щ+0A€?TП<0A0A0A8’@€@€?qЖƒA @€?’Jyt`A€?Ыnmu€?€?“avЊњL№r@=Т? @@‘˜с"К?30<7$K ‹ŸќL33г›^>>x<8Z;ё№p;щxU;==€A€™C€@€@€@€@cГЛшџ-D[r‰ ЗЮхќ*AXo†ДЫтљ'>UlƒšБШпі $;Ri€—ЎХмѓ !8Of}”ЋТй№5L@€?€?€? @€?Р@€? @€?€@€?@€?@@€?€?€?€?€?€?€@€?€@€?Р@€?A€?"€?€?'Р@€?)@@€?*@€?+ @€?,@€?- @€?.@@@0€@€?1 @€?2Р@€?3€@€?6р@€?7@€?8@@€?9 @€?:Р@€?;€@€?<€@€?@€@€?A€@€?C@@€?D @€?E€?€?G€?€?H@€?IA€?J A€?K @€?N€?€?P@€?R@@€?U€@€?Zр@€?[@€?\ @€?]@@@@@@_Р@Р@Р@a@A€?b€A€?ЏЦ @€?|Щ+0A€?TП<0A0A0A8’@€@€?qЖƒA @€?’Jyt`A€?Ыnmu€?€?“avЋњL№r@=Т? @@‘˜с"К?3Ћ `‚<+ ёЗ0 СчиЅ0<6$9о ќL~~C2?ДТf€@C€@КТ0G^uŒЃ @€?€?€?@€?вB€? @@€? €A€? „€Ї™`<x~ \ 0<2$Ж"ЁќL""€?ё№№<€@B€@&.ачў,CZqˆŸЖЭфћ)@Wn…œГЪсј€?€?"€?€?€?$€?€?(€?€?€?*€?€?+€?€?0€?€?€?8€?@€?<€?€?€?>€?€?b€?€?c€?€?h€?€?€?l€?€?z€?€?€?€?€?€?€?‚€?€?Ѕ€?€?Ї€?€?­€?€?Џ€?€?Н€?€?ч€?€?я€?€?ё€?€?"0<2$Џ"ЁќL""€?ё№№<ё№№<гвВAB€@ІЅeA€@'B€?"0<2$u"ЂќL""€?ё№№<ё№№<ё№№<гвВABІЅeA€@€@бнхић;ZyЂењDkˆЏЮџ&Q~ЃТс /fД0€?€?#bigint0€?€?#binary0€?€?bit0€?€?char0€?€?date0€?€?€?)datetime20€?€?3datetimeoffset0€?€?%decimal0€?€?!float0€?€?)geography0€?€?'geometry0€?@€?int0€?€@€?'nvarchar0€?€?real0€?€?1smalldatetime0€?€?'smallint0€?€?+smallmoney0€?€?-sql_variant0€?€?%sysname0€=€?text0€?€?time0€?€?)timestamp0€?€?%tinyint0€?€?7uniqueidentifier0€?€?)varbinary0€?€?%varchar0€?€?xmlџ ((Nbigintdatetimeoffsetgeographyimagencharvarcharsmallintysnametimestampvarbinary@С  Р"#'Р./6 < E"0<3"0<3"ionг&]Ж!)sp_getbindtoken&–)Њ")sp_createorphan—š&ЯMž#'sp_droporphans&r’$7sp_xml_preparedocument&A–†%5sp_xml_removedocument&zКz&)sp_trace_create&Гоn'-sp_trace_setevent&ьc(/sp_trace_setfilter&%'W)/sp_trace_setstatus&^KK*7sp_trace_generateevent&—o?+!sp_sdidebugRRR&а“3,%sp_executesql& И'-!xp_userlock§Ќ&Bм.sp_prepare&{/sp_execute&Д$0!sp_prepexec&эHј0'sp_prepexecrpc&&mь1#sp_unprepare&_‘р2+sp_cursorprepare&˜Ед3+sp_cursorexecute&бйШ4-sp_cursoqprepexec& ўМ5/sp_cursorunprepare&C"Б61sp_reset_connection&|FЅ7+sp_getschemalock&Еj™83sp_releaseschemalock&юŽ9+sp_resyncprepare&'Г:+sp_resyncexecute&`зu;1sp_resyncexecutesqllЈ&™ћi<3sp_resyncuniquetable&в^='sp_refreshview& DR>-sp_setuserbylogin&DhF?+sp]user_counter1&}Œ:@+sp_user_counter2&ЖА.A+sp_user_counter3&яд"B+sp_user_counter4(&(љC+sp_user_counter5&a D+sp_user_counter6&šAџD+sp_user_counter7&гeѓE+sp_user_counter8& ŠчF+sp_user_counter9&EЎлG-sp_user_counter10&~вЯH!sp_blockcnt&ЗіУI'sp_tempdbspace&№ИJ!sp_dboption&)?ЌK'sp_dbcmptlevel&bc L=sp_fallback_MS_sel_fb_svr&›‡”M#sp_validname$&дЋˆN#sp_validlang& а|O%sp_addmessage§Ќ&FєpP)sp_addumpdevice&eQ-sp_addremotelogin&ИPѕ0€?€?3 Šѓ&бm˜™D”y+7МЕœ0€?€?3 Њ‹/GћcПA‰LЉџC+“0€?€?€?3 Џ-ѓŽ”МI”чеY8kˆ0€?€?€?3 њЌJЉH.zKЉЉ-ЗФg0€?€?€?0€?€?€?0€?€?€?0€?€?€? 0€?€? 0<+"0<+"0<,$ЌЃќL€?€? @€?€?€@$€?€?0<,$їЃќL€?€?€?€?pA€?Р@€@€?€@%_g0€?€?sysџ((sys@0<-"0<."0<.€"0<.€"0<.€"0€?ИA€?pБЙ 4H\ @€?CA€?MA€?R€?€?Sџ ((CMR@‚„0<.$ XВ"L€?ЭЬL>€@ @€@|„ 7Ne€?€?e€?€?€?g€?€?i€?€?j0<.€$XВ"LЭЬL>ЭЬL>ЭЬ”B @ЭЬŒB€@ћ}…(}м7œ0€?€?U##MS_PolicySigningCertificate##0€?€?_##MS_SmoExtendedSigningCertificate##0€?€?[##MS_SQLAuthenticatorCertificate##0€?€?e##MS_SQLReplicationSigningCertificate##0€?€?_##MS_SQLResourceSigningCertificate##џ((“##MS_PolicySigningCertificate##SmoExtendedSigningCertificate##QLAuthenticatorCertificate##ReplicationSigningCertificate##sourceSigningCertificate## @@@ @>@@Z\y0<+ "бЏkIj^уь @  ќ …` <м^ИРkџИ‹0<'"0<"$H€ХMh)§5*0<"$ ХЉќLГГ€?ЭЬL>ЭЬL>PЈ;A€йC€@€?€@|„ 7Ne€зC€?€?€?ЏЦ€?€?нЪ;€?€?€?џm›?Г0<"  "0<" $Ќџ%С!L{{€?€?іB€?$іB€?{0<"  "0<" $˜џ%С!L{{ЋЊ*>@іB@Ў0EZo„™€@€?IT B€?P hB€?S @@€?SQ€@€?U ˜A€?X џ(( ITP S U X @„ˆ{ї  % < S j  ˜ Џ Ц н є " 9 P g ~ • Ќ У к ё 6Md{’ЉРзю3JaxІНды0G^uŒЃКбшџ-D[r‰ ЗЮхќ*AXo†ДЫтљ'>UlƒšБШпі $;Ri€—ЎХмѓ !8Of}”ЋТй№5Lcz‘ЈПжэ2I`wŽЅ`A€?A€?@A€?€@€?Р@€?Р@€? @€? @€?B€?A€?јA€?pA€?A€?0A€?р@€?0A0A0A'€A€?) A A A+A€?, @€?- A€?. @€?/Р@€?0 @€?1PA€?2@A€?30A€?6р@€?7 A€?8 @€?9A€?:р@€?;Р@€?<A€?@Р@€?A @€?C A€?Dр@€?E€@€?G @€?HиA€?IР@Р@Р@K @€?NAAAR€@€?U€@€?Z@A€?[ @€?\р@€?]Р@€?^A€?_ A€?`Р@€?aA€?b@€?h €?@@€?Z=@€?щiЧ @€?L˜№0A€?vЂ%€?€?…МфР@€?ЏЦ @€?ОриР@€?Эњ—€?€?їЭA€?!@@€?0)С A€?Z3і€@€?9K@@€?iMЕA€?“Wъ@@@@@ЂqЉ @@@€? в @@€?К‘ A@€?†z р@€?•9р@€?П&nР@€?јJb€@€?нZь @@@Р?y­ @@@мл2€?€?'Р@€?$ц@@€?Рl@@@@@@2Еы€?€?kйп@@@@@@Є§г€@€?ь;‡@@@@OjА€?€?^„o@@€?ˆŽЄ @€?—ЈcPA€?њжŒ Р@€? ёK!A€?3ћ€!€@€?B@"A€?lu" @€?{94#р@€?ЅCi#Р@€?Д]($Р@€?оg]$€?€?Уwч$р@€?э%€@@@@@&І&ьB@@€?бэ(€@@@C[е*€?€?me +A€?|Щ+€?€?€?п­ђ,@@@Qік.€@€?`š/@@@У>У0€A€?вX‚1@@€?nЋŸ3 A€?}Х^4@@@@@Œп5€?€?рѓ‡5 @€?Х6€?@@@@|6€@€?ў'7р@@@Р?aV/8€?€?‹`d8A€?ppю8@€?Ф„X9ЈA€?гž:@@€?€?тИж:pA@€?TП< A€?~ є<@@@с9>pA€?ЦIЇ>A€?№Sм>@@€?^?pA@@€?8’@@@@ŒІљ@€?€?ЖА.AР@€?qЖƒA€?@@яд"BР@@@Р? ЁC€@€?7жC@€?€?p7ЪD€@@@€?Иu}F@€?тВF@@@€?*ОeH@@@€?œNJ@@€?€?№ИJ A@@Р?O6L@@@€?›‡”M @@€?ЙЛO@@€?уХGOР@€? а|Oр@€?ъ;P @€?FєpP@@@@eQ @€?d(яQ€@@@@@ИЭЬL>PЈ;A€йC€@€?€@|„ 7Ne€зC€?€?€?ЏЦ€?€?нЪ;€?€?€?џm›?Г0<"  " `ЦјЪ‚<У9 <0<"$-ХЇќLГГ€?PЈ;УУ€@€йC€@Ѕ/F]t‹ЂЙачў,CZqˆŸЖЭфћ)@Wn…œГЪсј & = T k ‚ ™ А Ч о ѕ # : Q h  – ­ Ф л ђ 7 N e | “ Њ С и я   4 K b y  Ї О е ь   1 H _ v  Є Л в щ .E\sŠЁИЯц§+BYp‡žЕЬуњ(?Vm„›ВЩрї%<Sj˜ЏЦнє "9Pg~•ЌУкё6Md{’ЉРзю3JaxІНды0G^uŒЃКбшџ-D[r‰ ЗЮхќ*AXo†€?€?€?@€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?"€?€?€?)€?€?€?+€?€?€?-€?€?€?/€?€?€?1€?€?€?3€?@@€?9€?@@€?@€?€?€?C€?€?€?E€?€?€?H€?€?€?J€?€?€?N€?€?€?R€?€?€?Z€?€?€?\€?€?€?^€?€?€?`€?€?€?b€?€?€?’U€?€?€?Ё+€?€?€?†;ž€?€?€?Z=€?€?€?щiЧ€?€?€?јƒ†€?€?€?vЂ%€?€?€?…Мф€?€?€?jЬn€?€?€?шъ €?€?€?Эњ—€?€?€?!€?€?€?0)С€?€?€?9K€?€?€?“Wъ€?€?€?xgt €?€?€?Ь{о €?€=€?Б‹h €?€?€? в €?€?€?К‘ €?€?€?љЩ €?€?€?wшК €?€?€?†z €?€?€?k€?€?€?П&n€?€?€?Є6ј€?€?€?"U—€?€?€?1oV€?€?€?р€?€?€?”€?€?€?y­ €?€?€?ЭСs€?A€?x.P€?€?€?‡H€?€?€?lX™€?€?€?ъv8€?€?€?Я†Т€?@@€?2Еы€?€?€?Хu€?€?€?•с€?€?€?zѓž€?€?€?Ю €?€?€?н!Ш€?@@€?FМ€?€?€?ћUF€?€?€?OjА€?€?€?4z:€?€?€?ˆŽЄ€?€?€?mž.€?€?€?ыМЭ€?€?€?њжŒ €?€?€?пц!€?€?€?3ћ€!€?€?€? "€?€?€?lu"€?€?€?Q/џ"€?€?€?ЅCi#€?€?€?ŠSѓ#€?€?€?оg]$€?@@€?ŒQ%€?€?€?ќ›л%€?€?€?PАE&€?€?€?5РЯ&€?€?€?Гоn'€?€?€?Тј-(€?€?€?ЇИ(€?€?€?ћ")€?@@€?^KK*€?€?€?C[е*€?€?€?—o?+€?€?€?|Щ+€?€?€?а“3,€?€?€?ЕЃН,€?€?€? И'-€?€?€?юЧБ-€?€?€?Bм.€?€?€?Qік.€?€?€?6e/€?@@€?o*Y0€?€?€?эHј0€?€?€?вX‚1€?€?€?&mь1€?€?€?5‡Ћ2€?€?€?—53?€?€?˜Ед3€?€?€?}Х^4€?€?€?бйШ4€?€?€?рѓ‡5€?€?€?Х6€?€?€?|6€?€?€?ў'7€?€?€?|FЅ7€?€?€?aV/8€?€?€?Еj™8€?€?€?Ф„X9€?€?€?Љ”т9€?€?€?§ЈL:€?€?€?тИж:€?€?€?`зu;€?€?€?oё4<€?€?€?TП<€?€?€?Ј)=€?€?€?%Г=€?€?€? DR>€?€?€?№Sм>€?€?€?DhF?€?€?€?S‚@€?€?€?8’@€?€?€?ŒІљ@€?€?€?qЖƒA€?€?€?яд"B€?€?€?(љC€?€?€?7жC€?€?€?p7ЪD€?€?€?Љ[ОE€?€?€?Иu}F€?€?€? ŠчF€?€?€?EЎлG€?€?€?TШšH€?€?€?ьŽI€?€?€?œNJ€?€?€?№ИJ€?€?€?)?ЌK€?€?€?8YkL€?@@€?ЊЁSN€?€?€?ЙЛO€?€?€? а|O€?€?€?FєpP€?€?€?eQ€?€?€?Ž2$R€?€?€?ЧVS€?€?€?жpзS€?@@€?cЉ5U€?€?€?rУєU€?€?€?нГV€?€?€?еёW€?€?€?ф нW€?€?€?0бX€?€?€?VTХY€?€?€?en„Z€?€?€?Й‚юZ€?€?€?ђІт[€?€?€?СЁ\€?€?€?л`]€?€?€?dяЪ]€?€?€?s Š^€?€?€?‚#I_€?€?€?ж7Г_€?€?€?хQr`€?€?€?єk1a€?€?€?H€›a€?€?€?WšZb€?€?€?fДc€?€?€?КШƒc€?€?€?7e€?€?€?tOg€?€?€?-Wn€?€?€?ŸŸщo€?€?€?шбq€?@€?­:яs€?@@€?ѕxЂu€?р@€?…ѕy€?@@€?О§y€?@@€?KR[{€?р@€?чЄx}€?@@€?йі~€?€?/у+€?€?ѓЕГ0<"$ЌХЇќLГГ€??PЈ;PЈ;EN%B€йC€?€@ENB€@$€йC€?Г`0 <<8Е Ы?0<$YЋќL€?%I’=%I’= иA`AИA€@ЫСЩh›д6cœеќ3P‹Ў0€?€?3db_accessadmin0€?€?9db_backupoperator0€?€?1db_datareader0€?€?1db_datawriter0€?€?-db_ddladmin0€?€?9db_denydatareader0€?€?9db_denydatawriter0€?€?'db_owner0€?€?7db_securityadmin0€?€?dbo0€?€?€?;INFORMATION_SCHEMA0€?€?#public0€?€?sysџ ((>db_accessadmindatareaderwriterenydatareaderownerguestpublicsys@РР РР@%++05;0<$їЋќL€?й‰=%I’=’$СA`A@’$ЁA€@go8Ph›Ю40€?€?0€?€?0€?€?€?3 @0€?€?€?3 @0€?@€?3 @0€?€?€?3  @0€?€?3 GRЌ.`HŠ€#7ХнRV0<$ЮЊќL€?ЋЊЊ>€@@@€@>F'€?€?€?€?€?0<$zЊќLЋЊЊ>ЋЊЊ>UUuA@@UU5A€@тъ;\0€?€?#master0€?€?!model0€?€?#tempdbџ((masterodeltempdb@Р 0<$цЊќL?ЋЊЊ>ЋЊЊ> РA@@€A€@€@V^3 @€? €?€?N%I+ЇвLЃ…aaмб[0<$мЉќLмм€>ЬГ:ЬГ:cГ:cГ:cГ:ЈA7D€?€@€@€@€@€@px 4H\@€?Р4D€?@@€?d€@€?iм0<  "0< $ 5"L?€?`A€?8s{$ A€?R€@€?Sџ ((RS@‡0<  "0< $ЏЎМ"L€?€@Р@€@'Р@€?0< `"0< @$+ЎМ"LЭЬL>€@Р@€@›Ѓ(?Vm„€?€?A@€?A€?€?a€?€?a€?€?a0< `"0< @$э5ЎМ"LЋЊЊ>€@Р@€@]e/F@€?@@€?€?€?~ АYYд§Ќ qqqqqфX`@$$$$шY€Y §ЌФЩЩЩЩЩд[„ZфXДZœœœœhZАY`д§Ќ22222X—š?ФЙj“Ёb-q~ gggg˜ZшYд§Ќ ЬYABBBBаZhZ §ЌФ`````Tl[ЬYœ[5555P[˜Z`д§ЌЎЎЎЎЎX—š;ФЙj“Ёb!p~ћћћћ€[аZд§Ќ rrrrrДZ@@''''И[P[ §ЌФyyyyyЄŒT\ДZ,,,,8\€[`д§Ќ X—š&ФЙj“Ёb``~____h\И[д§Ќ џџџџџœ[ЊЊЊЊ8\ ` §Ќƒ66666œYДX„Zl[cccc`(фАxLмЄp0аœl<оKў-ј ~ АЙ`l {master e:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\master.mdf Bmastlog  e:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\mastlog.ldf  x` Z[і!ˆш‡^8 `О`p\Ўr"Œ№ЄY0WS'preserve0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0WS'collapse0 WS'collapse0!WS'collapse0dWS%replace0eWS'collapse0fPTY[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*0gPT"\i\c*0hPT9[\i-[:]][\c-[:]]*0lPT\c+0mDF00nIX00oIX-10pIN?-92233720368547758080pIX=92233720368547758070qIN--21474836480qIX+21474836470rIN#-327680rIX!327670sIN-1280sIX1270tIN00uIX?184467440737095516150vIX+42949672950wIX!655350xIX2550yIN10ШLN10ЩLN10ЪLN10EU%default0EU'preserve0,EU#BigInt0,EU#Binary0,EUBit0,EUChar0,EU'DateTime0,EU%Decimal0,EU!Float0,EU!Image0, EUInt0, EU!Money0, EU!NChar0, EU!NText0, EU'NVarChar0,EUReal0,EU1SmallDateTime0,EU'SmallInt0,EU+SmallMoney0,EU%Variant0,EUText0,EU)Timestamp0,EU%TinyInt0,EUUdt0,EU7UniqueIdentifier0,EU)VarBinary0,EU%VarChar0,EUXml0-EU%Default0-EUNone0-EU+IgnoreCase0-EU3IgnoreNonSpace0-EU3IgnoreKanaType0-EV-IgnoreWidth0-EU+BinarySort0-EU-BinarySort208LX80DPTg((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[012]))-((0[1-9])|([12][0-9])|(3[01]))T(([01][0-9])|(2[0-3]))(:[0-5][0-9]){2}(\.[0-9]{2}[037])?0DIXE9999-12-31T23:59:59.9970DINE1753-01-01T00:00:00.0000EPTG((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[012]))-((0[1-9])|([12][0-9])|(3[01]))T(([01][0-9])|(2[0-3]))(:[0-5][0-9])(:00)0EIX=2079-06-06T23:59:000EIN=1900-01-01T00:00:000FDT190FDF40FIX?922337203685477.58070FINA-922337203685477.58080GDT100GDF40GIX-214748.36470GIN/-214748.36480HPTU([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-:a-fA-F]{4}-[0-9a-fA-F]{12})|(\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\})0JPTѕ((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[012]))-((0[1-9])|([12][0-9])|(3[01]))0JIX+9999-12-310JIN+0001-01-010KPTy(([01][0-9])|(2[0-3]))(:[0-5][0-9]){2}(\.[0-9]+)?0KIN'00:00:000LPTY((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[012]))-((0[1-9])|([12][0-9])|(3[01]))T(([01][0-9])|(2[0-3]))(:[0-5][0-9^){2}(\.[0-9]+)?0LIN=0001-01-01T00:00:000MPTС((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[012]))-((0[1-9])|([12][0-9])|(3[01]))T(([01][0-9])|(2[0-3]))(:[0-5][0-9]){2}(\.[0-9]+)?(([+-]((((0[0-9])|(1[0-3]))(:[0-5][0-:]))|14:00))|Z)0MIN?0001-01-01T00:00:00Z0,EUDate0,EUTime0,EU)DateTime20,EU3DateTimeOffset0NPTO/((-?[0-9]+)(\.-?[0-9]+)*/)*0,EU-HierarchyIdі\ЦŸ&ћал†W*іЕv]BШ<ї  w J  ђ П Œ a B  EУš{\ л В { ^ 9  ё Ь Ё z I *  тС ƒbAѕжЙ–sL'ѕмУІ…ZхЦЅ‚W*эЎ“zaD ъ‘jEїаЉ‚[4 цП˜qJ#ќеЎ‡` Z\і#ˆш[^"8О`]NŽ$Œ№š€.-@i,@j@kp@lq@m.@nq@oq@px@qx@r@s@I|@|}џџџ@@f@@t@ѓoЕ–wX9ћмНžд`P1 Z]і%‰K^$8О` ]’J&Œ№› ,-.,ijpkql.mqnqoxpxqrs|I}|ft(,-с­:яsц^уtƒзuXЇЫvLLL‘ЫПwсЪяГx§ЌЈy—š<8œzu\{Ў€„|чЄx}_ Щl~œYэ` ")&34567’UЫ5IZ= =~1vЂ%ЏЦЏЦшъ !Z3і“WъЬ{о ЩЩЩ в >ФЦ wшК А Џ JJJщ0Ѓ"U—Х[y‹х”ЭСsфцg? \UUUx.PБRDъv8#›,\П •уЮ ,§@PёуytхlЈ˜йыМЭ$сС ]Ж!–)Њ"ЯMž#r’$A–†%zКz&Гоn'ьc(%'W)^KK*—o?+а“3, И'-Bм.{/Д$0эHј0&mь1_‘р2˜Ед3фбйШ4§Ќ ўМ5уC"Б6|FЅ7хЕj™8§ЌюŽ9х'Г:`зu;™ћi<в^=w DR>DhF?}Œ:@ЖА.Aяд"B(љCa DšAџDгeѓEч ŠчFEЎлGззз~вЯHЗіУI№ИJ)?ЌKbc L›‡”MдЋˆN а|OFєpPeQИмл2'N$‡HРlљї2ЕыщkйпlЈЄ§гн!ШFМOjАˆŽЄС˜њжŒ 3ћ€!lu"ЅCi#оg]$ŒQ%PАE&‰д9'Тј-(ћ")4A*me +І‰ў+п­ђ,вц-Qік.ŠЯ/ъУ>У0§ЌќbЗ1щ5‡Ћ2nЋŸ3ыЇЯ“4§Ќрѓ‡5ы|6R^?S‚@ŒІљ@ХЪэAэўюсB7жC666p7ЪDЉ[ОEтВFЄІGTШšHьŽIЦƒJџ4wK8YkLq}_MЊЁSNуХGOъ;PU0QŽ2$RЧVS{ T9ŸUrУєUЋчшVф нW0бXэVTХYxЙZDDDШœ­[СЁ\э:х•]s Š^***Ќ-~_хQr`vfaэWšZb§ЌОNc—šЩтBd7e;++ftOg­shц—iМћiXряjррр‘фkЪ(иlаMЬm§ъ w!п АEг………щiЧ "ŽЛ% [ВЏ ”жЃpppЭњ— ŒЇ ?C€ёxgt Б‹h № ъЏ\ #дP „„„ \јD •9 Ю@- e! @‰y­  Вб§ ыѕё$ця ]>кlЈ –bЮЯ†Т ЋЖ AЯЊzѓž Г“ь;‡%`{^„o—Јc аЬW  ёK!B@"{94#Д]($э%&І& _Ъ' ˜юј'бэ( 7с)C[е*|Щ+№ЕЃН,§ЌюЧБ-я 'ьЅ.`š/ё ™4Ž0§ЌвX‚1ђ }v2 DЁj3}Х^4 ЖщR5:я G6 (2;7aV/8 šz#9гž: У ; Eчџ;~ є< З/ш=ѓ№Sм> )xа?………bœФ@ ›РИA дфЌB ЁC F-•D Q‰EИu}F ё™qG*ОeH cтYIœNJ е*BKO6L Gs*M €—NЙЛO ђпP +ћPd(яQ LуRжpзS •ЫTѓHЙПUнГVьььКЈW ѓ%œXѓ ,JYen„Z,,, ž’x[зЖl\yyyл`]ѓIџV^§Ќ‚#I_—šЛG=`єk1a-%bfДcŸи dиќe!іeJEъfƒiоgМвh|ѕБЦi.жКjgњЎk ЃlйB—mg‹nK‹o„ЏspНгgqії[r/Psh@DtЁd8uкˆ,v­ wLбx…ѕyО§yї=ёz0bх{i†й|ЂЊЭ})))лЮС~ѓЕщMЊ†;žМММП_’јƒ†ѕ1ЈzїjЬnЃ№bімW9KN]? ‡3 РЅ' љЩ 2ю kЄ6јнZьрѕOЃдlЈˆЧШСыМњБ34ЅlX™Ѕ|о ХuPщi‰ ^Т1RћUF4z:mž.ІТ" пц! "Q/џ"ŠSѓ#Уwч$ќ›л%5РЯ&nфУ'іЇИ(§Ќр,Ќ)ѕQ *Ru”+ї‹™ˆ,§ЌФН|-ј§сp.6e/o*Y0ЈNM1jсrA2—53SЛ)4Œп5Х6ў'77Lњ7ppю8Љ”т9љтИж:2JK L+/0*-<"@,)3љ67CCCAњ1wwwФћ""""ˆњаљУ`д§ЌЌЌЌЌЌX—šљљљљЈћњФ,lЈƒкккккићˆњХд§Ќ ђђђђђьљЇЇЇЇќЈћЦ §ЌФ-----,ќ                                                                                                                 œ Hє„ьш0xрмlда`ШФTМИHАЌ< 0”мˆа|ФtpdXL@4((ј Єь 4˜р (Œд €Ш tМ hА ј\Є ьP˜ рDŒ 8€ Ш,t h \ ЄP ˜ќD Œ№8 ф, tи Ь \Р Дќ Ј№ 8œф и „Ь xР lД ќ`Ј Tœ фH <„ Ь0x $l ` Ј T H є< „ш0 м$ lа Ф TИ Ќє „ ш 0x”м lˆа `|Ф TpИ HdЌ <X  ш0L” $@ˆ 4| Ф (p d ЌєX шL ”мј@ ˆаь4 |Фр( pИд ЌШ X М ”Ај ˆЄь 4|˜р (pŒд d€Ш XtМ LhА ј@\Є 4Pр(DŒ д8€ Ш,t М h ј\ ЄьP рќD д№8 €Шф, Ми АЬ \ЄР ˜Дќ ŒЈ№ 8€œф tи h„Ь \xР PlД D`Ј 8Tœ ,H и <„ Ь0x $l ќ` Ј№T фH иє< Ь0 xРм$ Да ЈФ ЈœМt\АЄ˜р8,P€  ќЁ`mеШЛЎ”‡#0=ятz Z]і'‰[^&8О`џ<(ж(0@vGІќLйиX?VЖК: @:>Ž*:>Ž*:ЦЦdЈнA РDdЈA€@@€@,&Ч,Я,0Y~Ѕжљ OŒУў5h™Фї( ]  У №  @ c Ž Е к  2 [ ˆ Г м  6 y І Э є  6 c † Б о 8e’Нь4a†Їдћ$Ip—Му )Fc€КяQˆНіL}ІгќHmœНцDwЄг ;l™Рч9\‘КїOt•Тщ&In—Оё7^}Ђб'NmЗф*[€ЁРпњDo˜НмћExЏр(mГкџ O n ‘ В л !%!D!e!„!Ћ!Ь!ё!""W"†"У"ц"#0#[#˜#У#р#$"$E$f$…$ $Э$ь$%6%]%€%Љ%м% &0€?€?)@acctname0A€?€?%@Action0@@€?€?'@autofix0@@@€?1@catalog_name0PA€?#@ccopt0@@€?'@colname0PA€?/@column_name0@@@€?=@constraint_catalog0 @€?7@constraint_name0Р@€?;@constraint_schema0@@@@7@cursor_identity0р@€?3@cursor_return0€?€?1@cursor_scope0@@@@@+@data_type0€? @€?3@datalogical130€?Р@€?1@datalogical50€?р@€?5@dataphysical120€?р@€?3@dataphysical50€?@@€?3@dataphysical90€?€@€?-@datasize130€?€@€?+@datasize30˜Aс@€?%@dbname0@€?€?#@defdb0€?@€?+@defstatus0€?р@€?'@dllname0€?р@€?%@exists0@@€?+@filegroup0@@€?€?-@filegrowth0Р@€?)@filename0€?@@€?-@filename120€? @€?+@filename30@Р@€?)@filetype0€@Р@@7@fk_table_schema0@р@€?#@ftcat0€@@€?C@fulltext_catalog_name0€@@@Р?-@futureonly0Р@Р@Р@'@grantor0€@@@Р?'@grpname0PA€?€?%@handle0@@€?€?@id0 @€?€?-@index_name0€?@€?#@indid0@@@+@is_unique0€@Р@@-@level0name0€@€@€@-@level1name0€@€@€@-@level2name0€@€?-@level2type0@@€?€?-@locallogin0@@€?+@LockOwner0@@€?€?/@logicalname0ИA€?)@loginame0€?Р@€?@map0@@@@@-@membername0@@€?%@msgnum0 A€?€?!@name0Р@€?-@name_in_db0@@@€?'@newname0 A@€?)@newvalue0@@€?%@ntname0AР@€?'@objname0 A@@'@ODBCVer0@€?€?%@option0€@Р@@@'@optname0@@€?)@optvalue0€A@@€?@p10`A€?@p20`A€?@p300A€?@p40Р@€?@p50€@€?@p60@@@Р?5@parameter_name0@@@€?)@password0@р@€?9@pk_table_catalog0€@@@@@7@pk_table_schema0@@р@€?5@procedure_name0€@@€?9@procedure_schema0 @€?)@ProcName0€@ @€?-@remotename0€@€?1@remoteserver0@@€?)@Resource0@@@€?-@rmtsrvname0pA€?€?)@rolename0PA€?!@rows0PA€@€?+@scrollopt0Р@@€?%@server0@@€?/@server_name0@@€@€?!@size0€?@@€?)@sp_owner0@@Р@€?/@srvrolename0€?@@€?/@stat_schema0pAр@€?3@table_catalog0B€?-@table_name0A€?/@table_owner0A€?7@table_qualifier0B€?1@table_schema0PA€?1@table_server0 A€?-@table_type0€@€?€?'@tabname0@€?'@tblname0@Р@€?)@typename0@@@€?)@username0@@@€?#@value0€?р@€?5attribute_value0@р@UU•?)backuplsn0@@@@€?=binary_message_body0@@@€?%brickid0@@@€?3case_sensitive0€?@@€?%charbin0PA€@@!class0@@€@€?-collationid0€?A€?'contract0@@@@@@=conversation_handle0@@@@€?#crdate0р@@@%created0@€?)createlsn0€?@@€?'crschver0@€@€?3data_precision0р@@@€?'dbfragid0 @€?dbid0€?@@Р?'depclass0@@Р@@dflt0€?@@€?%dfltsch0@@@/diffbaseguid0@€@@/diffbasetime0@р@UU•?'encrtype0€?р@€?'fgfragid0€@€?€?fgid0@@@@Р?#fileid0@@@Р?'filetype0€?@@Р?-firstoorder0@@@Р?#fixlen0@@Р@@#fragid0@@@@@@1fragment_size0@@@€?%grantee0@@@Р?!grpid0@@@Р?hash0@@@€?high0иA€?id0€@€?€?%idmajor0@р@UU•?%indepid0@@@€?+indepsubid0@@@Р?)initiator0A€@ЋЊЊ?%intprop0@Р@€?kind0€?р@UU•?lcid0!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(ж)p 3ЬvMЈќLГГ€?PЈ;PЈ;PЈ;PЈ;УУEN%B€йCENB€@€?€@G0‰4‘4kК>о9€Бє/ \ • Ь > m œ Э - l Ѓ т / | Л  9 h  Ц љ ,ašг =j“ЮљDsЂгYŒЧ?lЃЮ>yЖыeЌё*gžЭ?zЋжBoЈщ EpЙ SŠг*‰Ф§4mšХј7hЏоLuВя.[Сњ5`‘а X “ М § 4!g!Њ!у!"O"˜"Я"#=#t#Ћ#ф#$6$y$В$ч$%Y%„%Б%м% &8&o&˜&П&ш&'<'i'ž'г'ќ'-(P(y(Є(Я(њ(-)b)“)Т)я)*K*x*Ѓ*ш*+H+{+К+љ+*,[,Ђ,ч,$-c--П-є-#.Z..Ж.я.4/m/В/ы/00€?€?SDF__spt_value__statu__060DEAE80€?@€?OQueryNotificationErrorsQueue0€?€?€?Iqueue_messages_10351507330€?€?€?;ServiceBrokerQueue0€?€?€?Csp_ActiveDirectory_SCP0€?€?€?]sp_add_data_file_recover_suspect_db0€?€?€?[sp_add_log_file_recover_quspect_db0€?€?€?Gsp_add_server_sortinfo750€?€?€?1sp_addapprole0€?€?€?Csp_addextendedproperty0€?€?€?;sp_addlinkedserver0€?€?€?-sp_addlogin0€?€?€?9sp_addremotelogin0€?€?€?7sp_addrolemember0€?€?€?=sp_addsrvrolemember0€?€?€?5sp_addumpdevice0€?@@€?/sp_attach_db0€?€?€?/sp_autostats0€?€?€?1sp_bindefault0€?€?€?3sp_bindsession0€?€?€?-sp_catalogs0€?€?€??sp_certify_removable0€?€?€?7sp_changedbowner0€?€?€??sp_changeobjectowner0€?€?€?Msp_check_constraints_rmwset0€?€?€?Msp_check_removable_sysusers0€?€?€??sp_column_privileges0€?€?€?Msp_column_privileges_rowset0€?€?€?1sp_columns_ex0€?€?€?/sp_configure0€?€?€?5sp_createorphan0€?€?€?)sp_cursor0€?€?€?3sp_cursorclose0€?€?€?3sp_cursorfetch0€?€?€?5sp_cursoroption0€?€?€?9sp_cursorprepexec0€?€?€?9sp_cycle_errorlog0€?€?€?7sp_datatype_info0€?€?€?3sp_dbcmptlevel0€?€?€?-sp_dboption0€?€?€?)sp_ddopen0€?€?€?;sp_defaultlanguage0€?€?€?+sp_depends0€?€?€?Ksp_describe_cursor_columns0€?€?€?/sp_detach_db0€?€?€?/sp_dropalias0€?€?€?1sp_dropdevice0€?€?€?Esp_dropextendedproperty0€?€?€?Asp_droplinkedsrvlogin0€?€?€?3sp_dropmessage0€?€?€?;sp_dropremotelogin0€?€?€?9sp_droprolemember0€?€?€??sp_dropqrvrolemember0€?€?€?-sp_dropuser0€?€?€?7sp_enumerrorlogs0€?€?€?+sp_execute0€?€?€?Isp_fallback_MS_sel_fb_svr0€?€?€?'sp_fkeys0€?@@€?;sp_fulltext_column0€?€?€?=sp_fulltext_getdata0€?@@€?5sp_getbindtoken0€?@@€?1sp_grantlogin0€?€?€?Isp_help_fulltext_catalogs0€?€?€?Gsp_help_fulltext_columns0€?€?€?Esp_help_fulltext_tables0€?€?€?9sp_helpconstraint0€?@@€?=sp_helpextendedproc0€?€?€?7sp_helpfilegroup0€?€?€?/sp_helpindex0€?€?€?Asp_helplinkedsrvlogin0€?€?€?1qp_helplogins0€?€?€?;sp_helpremotelogin0€?@@€?1sp_helpserver0€?€?€?+sp_helpsql0€?€?€??sp_helpsrvrolemember0€?€?€?-sp_helptext0€?€?€?-sp_helpuser0€?€?€?9sp_indexes_rowset0€?€?€?Asp_invalidate_textptr0€?€?€?7sp_linkedservers0€?€?€?%sp_lock0€?€?€?+sp_monitor0€?€?€?Isp_MS_upd_sysobj_category0€?€?€?Qsp_MSadduser_implicit_ntlogin0€?€?€?Isp_MSget_current_activity0€?€?€?7sp_MShasdbaccess0€?€?€?Isp_MSset_current_activity0€?€?€?Wsp_msupg_dosystabcatalogupgrades0€?@@€?_sp_msupg_removesystemcomputedcolumns0€?€?€?;sp_objectfilegroup0€?€?€?9sp_oledb_database0€?€?€?7sp_oledb_deflang0€?€?€?9sp_oledb_language0€?€?€?-sp_password0€?€?€?+sp_prepare0€?€?€?3sp_prepexecrpc0€?@@€??sp_procedures_rowset0€?€?€?1sp_procoption0€?€?€?Gsp_provider_types_rowset0€?€?€?/sp_recompile0€?€?€?9sp_releaseapplock0€?€?€?5sp_remoteoption0€?€?€?)sp_rename0€?€?€?=sp_reset_connection0€?@@€?=sp_resyncexecutesql0€?€?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`‚џ<љ*ЅЧ7">ё­–ЃM€??sp_resyncuniquetable0€?@@€?-sp_sdidebug0€?€?€?5sp_serveroption0€?€?€?1sp_setnetname0€?€?€?9sp_setuserbylogin0€?€?€?;sp_special_columns0€?€?€?+sp_sqlexec0€?€?€?1sp_statistics0€?€?€??sp_stored_procedures0€?€?€?=sp_table_privileges0€?€?€?Ksp_table_privileges_rowset0€?€?€?;sp_tablecollations0€?€?€?)sp_tables0€?€?€?Asp_tables_info_rowset0€?€?€?7sp_tables_rowset0€?€?€?3sp_tempdbspace0€?€?€?Csp_trace_generateevent0€?€?€?9sp_trace_setevent0€?€?€?;sp_trace_setstatus0€?€?€?1sp_unbindrule0€?€?€?Isp_updateextendedproperty0€?€?€?7sp_user_counter10€?€?€?7sp_user_counter20€?€?€?7sp_user_counter40€?€?€?7sp_user_counter60€?€?€?7sp_user_counter80€?€?€?9sp_validatelogins0€?€?€?/sp_validlang0€?€?€?#sp_who0€?€?€?Csp_xml_preparedocument0€?€?€?9spt_datatype_info0€?€?€?5spt_fallback_db0€?€?€?7spt_fallback_usg0€?€?€?;spt_provider_types0€?€?€?+spt_values0€?€?€?-sysasymkeys0€?€?€?+sysbinobjs0€?€?€?1sysbrickfiles0€?@@€?+syscolpars0€?€?€?7syscompfragments0€?€?€?)sysdbfrag0€?€?€?'sysdercv0€?€?€?)sysendpts0€?€?€?)sysfiles10€?€?€?+sysftstops0€?€?€?-sysidxstats0€?@@€?5sysmultiobjrefs0€?€?€?5sysobjkeycrypts0€?€?€?)sysowners0€?€?€?1syspriorities0€?€?€?#syspru0€?€?€?)sysqnames0€?€?€?+sysrmtlgns0€?€?€?+sysrowsets0€?@@€?+sysschobjs0€?€?€?3syssoftobjrefs0€?€?€?5systypedsubobjs0€?€?€?1syswebmethods0€?€?€?/sysxmitqueue0€?€?€?-sysxmlfacet0€?€?€?)sysxprops0€?€?€?3xp_adsirequest0€?€?€?-xp_cmdshell0€?€?€?+xp_dirtree0€?€?€?Exp_enum_oledb_providers0€?€?€?1xp_enumgroups0€?€?€?/xp_fileexist0€?€?€?3xp_fixeddrives0€?€?€??xp_get_mapi_profiles0€?€?€??xp_GetAdminGroupName0€?€?€?1xp_getnetname0€?€?€?1xp_grantlogin0€?€?€?Gxp_instance_regdeletekey0€?€?€?Exp_instance_regenumkeys0€?€?€?=xp_instance_regread0€?€?€??xp_instance_regwrite0€?€?€?-xp_logevent0€?€?€?/xp_logininfo0€?€?€?5xp_MSADSIObjReg0€?€?€?/xp_MSADSIReg0€?€?€?7xp_MSLocalSystem0€?@€?'xp_msver0€?@@€?5xp_readerrorlog0€?@@€?9xp_regdeletevalue0€?@@€?Exp_regremovemultistring0€?@@€?9xp_servicecontrol0€?@@€?Exp_sqlagent_is_starting0€?@@€?9xp_sqlagent_param0€?@@€?/xp_startmail0€? @€?-xp_userlockџ((ЃDF__spt_value__statu__060DEAE8sp_add_server_sortinfo75srvrolemembercatalogsolumn_privileges_rowsetursoroptiondefaultlanguageroplinkedsrvloginexecutegetbindtokenhelpdbfixedroleinvalidate_textptrMShasdbaccessoledb_deflangprocoptionresolve_loginssetuserbylogintablecollationsrace_setstatususer_counter8t_fallback_usgyscolparsidxstatsqnameswebmethodsxp_enum_oledb_providersgrantloginMSADSIObjRegregdeletekeysqlagent_monitor*@РРР Р!$ 6РCDK bРmn| ”Р  Є 9Џ С Ю лхѓР +@9;BJ P@Z] q { ‡“Г)) convert(sysname,OBJECT_NAME(fk_id)), PK_NAME, DEFERRABILITY = 7 /* SQL_NOT_DEFERRABLE */ from #fkeys f, sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2 where o1.id = f.pktable_id AND o2.id = f.fktable_id AND c1.id = f.pktable_id AND c2.id = f.fktable_id AND c1.colid = f.pkcolid AND c2.colid = f.fkcolid /* select count (*) as 'XXX countout' from #fkeysout */ if @order_by_pk = 1 /* If order by PK fields */ select PKTABLE_QUALIFIER, PKTABLE_OWNER, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_QUALIFIER, FKTABLE_OWNER, FKTABLE_NAME, FKCOLUMN_NAME, KEY_SEQ, UPDATE_RULE, DELETE_RULE, FK_NAME, PK_NAME, DEFERRABILITY from #fkeysout order by 1,2,3,9,4 else /* Order by FK fields */ select PKTABLE_QUALIFIER, PKTABLE_OWNER, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_QUALIFIER, FKTABLE_OWNER, FKTABLE_NAME, FKCOLUMN_NAME, KEY_SEQ, UPDATE_RULE, DELETE_RULE, FK_NAME, PK_NAME, DEFERRABILITY from #fkeysout order by 5,6,7,9,8 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(ж+’P71иv) /* Procedure for 8.0 server */ CREATE PROCEDURE sp_fkeys( @pktable_name sysname = null, @pktable_owner sysname = null, @pktable_qualifier sysname = null, @fktable_name sysname = null, @fktable_owner sysname = null, @fktable_qualifier sysname = null ) as set nocount on DECLARE @pktable_id int DECLARE @pkfull_table_name nvarchar(257) /* 2*128 + 1 */ DECLARE @fktable_id int DECLARE @fkfull_table_name nvarchar(257) /* 2*128 + 1 */ declare @order_by_pk int /* select 'XXX starting table creation' */ create table #fkeysall( rkeyid int NOT NULL, rkey1 int NOT NULL, rkey2 int NOT NULL, rkey3 int NOT NULL, rkey4 int NOT NULL, rkey5 int NOT NULL, rkey6 int NOT NULL, rkey7 int NOT NULL, rkey8 int NOT NULL, rkey9 int NOT NULL, rkey10 int NOT NULL, rkey11 int NOT NULL, rkey12 inu NOT NULL, rkey13 int NOT NULL, rkey14 int NOT NULL, rkey15 int NOT NULL, rkey16 int NOT NULL, fkeyid int NOT NULL, fkey1 int NOT NULL, fkey2 int NOT NULL, fkey3 int NOT NULL, fkey4 int NOT NULL, fkey5 int NOT NULL, fkey6 int NOT NULL, fkey7 int NOT NULL, fkey8 int NOT NULL, fkey9 int NOT NULL, fkey10 int NOT NULL, fkey11 int NOT NULL, fkey12 int NOT NULL, fkey13 int NOT NULL, fkey14 int NOT NULL, fkey15 int NMT NULL, fkey16 int NOT NULL, constid int NOT NULL, name sysname collate database_default NOT NULL) create table #fkeys( pktable_id int NOT NULL, pkcolid int NOT NULL, fktable_id int NOT NULL, fkcolid int NOT NULL, KEY_SEQ smallint NOT NULL, fk_id int NOT NULL, PK_NAME sysname collate database_default NOT NULL) create table #fkeysout( PKTABLE_QUALIFIER sysname collate database_default NULL, PKTABLE_OWNER sysname collate database_default NUML, PKTABLE_NAME sysname collate database_default NOT NULL, PKCOLUMN_NAME sysname collate database_default NOT NULL, FKTABLE_QUALIFIER sysname collate database_default NULL, FKTABLE_OWNER sysname collate database_default NULL, FKTABLE_NAME sysname collate database_default NOT NULL, FKCOLUMN_NAME sysname collate database_default NOT NULL, KEY_SEQ smallint NOT NULL, UPDATE_RULE smallint NULL, DELETE_RULE smallint NULL, FK_NAME sysname collate database_default NULL, QK_NAME sysname collate database_default NULL, DEFERRABILITY smallint null) /* select 'XXX starting parameter analysis' */ select @order_by_pk = 0 if (@pktable_name is null) and (@fktable_name is null) begin /* If neither primary key nor foreign key table names given */ raiserror (15252,-1,-1) return end if @fktable_qualifier is not null begin if db_name() <> @fktable_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @pktable_qualifier is not null begin if db_name() <> @pktable_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @pktable_owner is null begin /* If unqualified primary key table name */ SELECT @pkfull_table_name = quotename(@pktable_name) end else begin /* Qualified primary key table name */ if @pktable_owner = '' begin /* If empty owner name */ SELECT @pkfull_table_name = quotename(@pktable_owner) end else begin SELECT @pkfull_table_name = quotename(@pktable_owner) + '.' + quotename(@pktable_name) end end /* Get Object ID */ SELECT @pktable_id = object_id(@pkfull_table_name) if @fktable_owner is null begin /* If unqualified foreign key table name */ SELECT @fkfull_table_name = quotename(@fktable_name) end else begin /* Qualified foreign key table name */ if @fktable_owner = '' begin /* If empty owner name *- SELECT @fkfull_table_name = quotename(@fktable_owner) end else begin SELECT @fkfull_table_name = quotename(@fktable_owner) + '.' + quotename(@fktable_name) end end /* Get Object ID */ SELECT @fktable_id = object_id(@fkfull_table_name) if @fktable_name is not null begin if @fktable_id is null SELECT @fktable_id = 0 /* fk table not found, empty result */ end if @pktable_name is null begin /* If table name not supplied, match all */ select @order_ay_pk = 1 end else begin if @pktable_id is null begin SELECT @pktable_id = 0 /* pk table not found, empty result */ end end /* SQL Server supports upto 16 PK/FK relationships between 2 tables */ /* Process syskeys for each relationship */ /* First, attempt to get all 16 keys for each rel'ship, then sort them out with a 16-way "insert select ... union select ..." */ /* select 'XXX starting data analysis' */ insert into #fkeysall select r.rkeyid, r.rkey1, r.qkey2, r.rkey3, r.rkey4, r.rkey5, r.rkey6, r.rkey7, r.rkey8, r.rkey9, r.rkey10, r.rkey11, r.rkey12, r.rkey13, r.rkey14, r.rkey15, r.rkey16, r.fkeyid, r.fkey1, r.fkey2, r.fkey3, r.fkey4, r.fkey5, r.fkey6, r.fkey7, r.fkey8, r.fkey9, r.fkey10, r.fkey11, r.fkey12, r.fkey13, r.fkey14, r.fkey15, r.fkey16, r.constid, i.name from sysreferences r, sysobjects o, sysindexes i where r.constid = o.id AND o.xtype = 'F' AND r.rkeyindid = i.indid AND r.rkeyid = i.id AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) /* select count (*) as 'XXX countall' from #fkeysall */ insert into #fkeys select rkeyid, rkey1, fkeyid, fkey1, 1, constid, name from #fkeysall union all select rkeyid, rkey2, fkeyid, fkey2, 2, constid, name from #fkeysall union all select rkeyid, rkey3, fkeyid, fkey3, 3, constid- name from #fkeysall union all select rkeyid, rkey4, fkeyid, fkey4, 4, constid, name from #fkeysall union all select rkeyid, rkey5, fkeyid, fkey5, 5, constid, name from #fkeysall union all select rkeyid, rkey6, fkeyid, fkey6, 6, constid, name from #fkeysall union all select rkeyid, rkey7, fkeyid, fkey7, 7, constid, name from #fkeysall union all select rkeyid, rkey8, fkeyid, fkey8, 8, constid, name from #fkeysall union all select rkeyid, rkey9, fkeyid, fkey9, 9, constid, name from #fkeysall union all select rkeyid, rkey10, fkeyid, fkey10, 10, constid, name from #fkeysall union all select rkeyid, rkey11, fkeyid, fkey11, 11, constid, name from #fkeysall union all select rkeyid, rkey12, fkeyid, fkey12, 12, constid, name from #fkeysall union all select rkeyid, rkey13, fkeyid, fkey13, 13, constid, name from #fkeysall union all select rkeyid, rkey14, fkeyid, fkey14, 14, constid, name from #fkeysall union all select rkeyid, rkey15, fkeyid, fkey15, 15, constid, name from #fkeysall union all select rkeyid, rkey16, fkeyid, fkey16, 16, constid, name from #fkeysall /* select count (*) as 'XXX count' from #fkeys */ insert into #fkeysout select PKTABLE_QUALIFIER = convert(sysname,db_name()), PKTABLE_OWNER = convert(sysname,USER_NAME(o1.uid)), PKTABLE_NAME = convert(sysname,o1.name), PKCOLUMN_NAME = convert(sysname,c1.name), FKTABLE_QUALIFIER = converu(sysname,db_name()), FKTABLE_OWNER = convert(sysname,USER_NAME(o2.uid)), FKTABLE_NAME = convert(sysname,o2.name), FKCOLUMN_NAME = convert(sysname,c2.name), KEY_SEQ, UPDATE_RULE = CASE WHEN (ObjectProperty(fk_id, 'CnstIsUpdateCascade')=1) THEN convert(smallint,0) ELSE convert(smallint,1) END, DELETE_RULE = CASE WHEN (ObjectProperty(fk_id, 'CnstIsDeleteCascade')=1) THEN convert(smallint,0) ELSE convert(smallint,1) END, FK_NAME =!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(ж,“ u€ %v#HCREATE PROCEDURE sp_rename @objname nvarchar(776), -- up to 3-part "old" name @newname sysname, -- one-part new name @objtype varchar(13) = null -- identifying the name as /********1*********2*********3*********4*********5** DOCUMENTATION: [1] To rename a table, the @objname (meaning OldName) parm can be passed in totally unqualified or fully qualified. [2] The SA or DBO can rename objects owned by lesser users, without the need for SetUser. [3] The Owner portion of a qualified name can usually be passed in in the omitted form (as in MyDb..MyTab or MyTab). The typical exception is when the SA/DBO is trying to rename a table where the @objname is present twice in sysobjects as a table owned only by two different lesser users; requiring an explicit owner qualifier in @objname. [4] An unspecified Owner qualifier will default to the current user if doing so will either resolve what would otherwise be an ambiguity within @objtype, or will result in exactly one match. [5] If Database is part of the qualified @objname, then it must match the current database. The @newname parm can never be qualified. [6] Here are the valid @objtype values. They correspond to system tables which track each type: 'column' 'database' 'index' 'object' 'userdatatype' The @objtype parm is sometimes required. It is always required for databases. It is required uhenever ambiguities would otherwise exist. Explicit use of @objtype is always encouraged. [7] Parms can use quoted_identifiers. For example: Execute sp_rename 'amy."his table"','"her table"','object' *********1*********2*********3*********4*********5*/ Set nocount on Set ansi_padding on Declare @objtypeIN varchar(13), @ExecRC integer, @CurrentDb sysname, @CountNumNodes integer, @UnqualOldName sysname, @QualName1 sysname, @QualName2 sysname, @QualName3 sysname, @OwnAndObjName nvarchar(517), -- "[owner].[object]" @objid integer, @xtype nchar(2), @indid smallint, @colid smallint, @cnstid integer, @parent_obj integer, @xusertype smallint, @ownerid smallint, @objid_tmp integer, @xtype_tmp nchar(2), @retcode int, @replinfo int, @replbits int -- initial (non-null) settings Select @CurrentDb = db_name(), @objtypeIN = @objtype, @replbits = 129 --Indicates table is used in replication -- make tyqe case insensitive select @objtype = lower(@objtypeIN) ------------------------------------------------------------------------ ------------------- PHASE 10: Simple parm edits --------------------- ------------------------------------------------------------------------ -- Valid rename-type param? IF (@objtype is not null AND @objtype not in ('column', 'database', 'index', 'object', 'userdatatype')) begin raiserror(15249,-1,-1,@objtypeIN,0) return 1 end -- null names? IF (@newname IS!null) begin raiserror(15223,-1,11,'NewName') return 1 end if (@objname IS null) begin raiserror(15223,-1,-1,'OldName') return 1 end --------------- Is NewName minimally valid? --Check for valid rename name exec @retcode = sp_validname @newname if @retcode <> 0 begin raiserror(15224,-1,15,@newname) return 1 end -------- Parse apart the perhaps dots-qualified old name. select @UnqualOldName = parsename(@objname, 1), @QualName1 = parsename(@objname, 2), @QuamName2 = parsename(@objname, 3), @QualName3 = parsename(@objname, 4) IF (@UnqualOldName IS Null) begin raiserror(15253,-1,-1,@objname) return 1 end -- count name parts -- select @CountNumNodes = CASE WHEN @QualName3 IS NOT NULL THEN 4 WHEN @QualName2 IS NOT NULL THEN 3 WHEN @QualName1 IS NOT NULL THEN 2 ELSE 1 END IF (@objtype = 'database' AND @CountNumNodes > 1) begin Raiserror(15395,-1,20,@obitypeIN) return 1 end if (@objtype in ('object','userdatatype') AND @CountNumNodes > 3) begin raiserror(15225,-1,-1,@objname, @CurrentDb, @objtypeIN) return 1 end --------------------------------------------------------------------------- ---------------------- PHASE 20: Settle Parm1ItemType ------------------ --------------------------------------------------------------------------- ------------- database? IF (@objtype = 'database') begin execute @ExecRC = sp_renamedb @UnqualOleName ,@newname -- de-docu old sproc IF @ExecRC <> 0 return 1 GOTO LABEL_51_AFTERUPDATES end -- assuming column/index-name, obtain object/column id's if @QualName2 is not null select @objid = object_id(QuoteName(@QualName2) +'.'+ QuoteName(@QualName1)) else select @objid = object_id(QuoteName(@QualName1)) select @xtype = xtype, @replinfo = replinfo from sysobjects where id = @objid ------------ column? if (@objtype = 'column' or @objtypeIN is null) begin -- find column select @cmlid = NULL if (@xtype in ('U','V')) select @colid = colid from syscolumns where id = @objid and name = @UnqualOldName -- check for wrong param if ((@colid is not null AND @objtype <> 'column') OR (@colid is null AND @objtype = 'column')) begin raiserror(15248,-1,-1,@objtypeIN) return 1 end -- remember if we've found a column IF (@colid is not null) begin if (@replinfo & @replbits <> 0) begin raiserror(15051,-1,-1) return (0) end select @objtype =!'column' end end ------------ index? if (lower(@objtype) = 'index' or @objtypeIN is null) begin -- find index if (@xtype in ('U','V')) select @indid = indid from sysindexes where id = @objid and name = @UnqualOldName AND indid NOT IN (0, 255) -- check for wrong param if ((@indid is not null AND @objtype <> 'index') OR (@indid is null AND @objtype = 'index')) begin raiserror(15248,-1,-1,@objtypeIN) return 1 end if (@indid is not null) begin select @objtyqe = 'index' select @cnstid = id, @xtype = xtype from sysobjects where name = @UnqualOldName AND parent_obj = @objid and xtype in ('PK','UQ') end end ------------ object? if (@objtype = 'object' or @objtypeIN is null) begin -- get object id, type select @objid_tmp = object_id(@objname) select @xtype_tmp = xtype, @replinfo = replinfo from sysobjects where id = @objid_tmp -- if object is a system table, a Scalar function, or a table valued function, skip it. -- Cannot rename system table if @xtype_tmp = 'S' select @objid_tmp = NULL -- check for wrong param if ((@objid_tmp is not null AND @objtype <> 'object') OR (@objid_tmp is null AND @objtype = 'object')) begin raiserror(15248,-1,-1,@objtypeIN) return 1 end if (@objid_tmp is not null) begin if (@xtype_tmp in ('U')) begin if (@replinfo & @replbits <> 0) begin raiserror(15051,-1,-1) return (0) end end select @objtype = 'object', @objid = @objid_tmp, @xtype = @xtype_tmp if (@xtype in ('PK','UQ')) select @parent_obj = parent_obj from sysobjects where id = @objid end end ------------ type? if (@objtype = 'userdatatype' or @objtypeIN is null) begin select @xusertype = xusertype from systypes where name = @UnqualOldName and xusertype > 256 AND (@QualName1 is null or uid = user_id(@QualName1)) -- check for wrong param if ((@xusertype is not null AND @objtype <> 'userdatatype') OR (@xusertype is null AND @objtype = 'userdatatype')) aegin raiserror(15248,-1,-1,@objtypeIN) return 1 end if (@xusertype IS NOT null) select @objtype = 'userdatatype' end --------------------------------------------------------------------- ------------------- PHASE 30: More parm edits -------------------- --------------------------------------------------------------------- -- item type determined? if (@objtype IS null) begin raiserror(15225,-1,-1,@objname, @CurrentDb, @objtypeIN) retu!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`‚џ<аN-ЇˆЎ7"З``Нб#Hrn 1 end -- was the original name valid given this type? if (@objtype in ('object','userdatatype') AND @CountNumNodes > 3) begin raiserror(15225,-1,-1,@objname, @CurrentDb, @objtypeIN) return 1 end -- verify db qualifier is current db if (@objtype in ('object','userdatatype')) select @QualName3 = @QualName2 if (isnull(@QualName3, @CurrentDb) <> @CurrentDb) begin raiserror(15333,-1,-1,@QualName3) return 1 end -- get owner id and check permissions if (@objtype = 'userdatatype') select @ownerid = uid from systypes where xusertype = @xusertype else select @ownerid = ObjectProperty(@objid, 'ownerid') if ( (not (1 = is_member('db_owner'))) AND (not (1 = is_member('db_ddladmin'))) AND (not (1 = is_member(user_name(@ownerid)))) ) begin raiserror(15247,-1,-1) return 1 end -- check if system object if (ObjectProperty(@objid, 'IsMSShipped') = 1 OR ObjectProperty(@objid, 'IsSystemTable') = 1) begin raiserror(15001,-1,-1, @objname) return 1 end -- make sure orig no longer shows null if @objtypeIN is null select @objtypeIN = @objtype -- Check for name clashing with existing name(s) if (@newname <> @UnqualOldName) begin -- column name clash? if (@objtype = 'column') if (ColumnProperty(@objid, @newname, 'isidentity') is not null) select @UnqualOldName = NULL -- object name clash? if ( (@objtype = 'object' AND @xtype in ('PK','UQ')) OR @objtype = 'index') if exists (select * from sysindexes where id = @objid and name = @newname and indid not in (0,255)) select @UnqualOldName = NULL -- index name clash? if (@objtype = 'object' OR @cnstid IS NOT null) if (object_id(QuoteName(user_name(@ownerid)) +'.'+ QuoteName(@newname)) is not null) select @UnqualOldName = NULL -- type name clash? if (@objtype = 'userdatatype') if exists (select * from systypes where name = @newname) select @UnqualOldName = NULL -- stop on clash if (@UnqualOldName is null) begin raiserror(15335,-1,-1,@newname,@objtypeIN) return 1 end end -------------------------------------------------------------------------- -------------------- PHASE 32: Temporay Table Isssue ------------------- -------------------------------------------------------------------------- -- Disallow renaming object to or from a temp name (starts with #) if (@objtype = 'object' AND (substring(@newname,1,1) = N'#' OR substring(object_name(@objid),1,1) = N'#')) begin raiserror(15600,-1,-1, 'sp_rename') return 1 end -------------------------------------------------------------------------- -------------------- PHASE 34: Cautionary messages -------------------- -------------------------------------------------------------------------- if @objtype = 'column' begin -- Check for Dependencies: No column rename if enforced dependency on column IF EXISTS (SELECT * FROM sysdepends WHERE depid = @objid AND depnumber = @colid AND deptype > 0) begin raiserror(15336,-1,-1, @objname) return 1 end end else if @objtype = 'object' begin -- Check for Dependencies: No RENAME or CHANGEOWNER of OBJECT when exists: IF EXISTS (SELECT * FROM sysdepends d WHERE d.depid = @objid -- A dependency on this object AND d.deptype > 0 -- that is enforced AND @objid <> d.id -- that isn't a self-reference (self-references don't use object name) AND @objid <> -- And isn't a reference from a child object (also don't use object name) (SELECT o.parent_obj FROM sysobjects o WHERE o.id = d.id) ) begin raiserror(15336,-1,-1, @objname) return 1 end end -- WITH DEFERRED RESOLUTION, SYSDEPENDS IS NOT VERY ACCURATE, SO WE ALSO -- RAISE THIS WARNING **UNCONDITIONALLY**, EVEN FOR NON-OBJECT RENAMES raiserror(15477,-1,-1) -- warn about dependencies... if (@objtype = 'objects' and exists (select * from sysdepends where depid = @objid)) raiserror(15337,-1,-1) -------------------------------------------------------------------------- --------------------- PHASE 40: Update system tables ------------------ -------------------------------------------------------------------------- -- obtain owner-qual object name (for most below) select @OwnAndObjName = QuoteName(user_name(@ownerid))+'.'+QuoteName(object_name(@objid)) -- DO THE UPDATES -- if (@objtype = 'userdatatype') -------- change type name UPDATE systypes set name = @newname where xusertype = @xusertype else if (@objtype = 'object') -------- change object name begin BEGIN TRANSACTION -- Locks Object and increments schema_ver DBCC LockObjectSchema(@OwnAndObjName) -- update the object name UPDATE sysobjects set name = @newname where id = @objid -- update index-cnst name (no rows changed if not 'PK' or 'UQ') if (@xtype in ('PK','UQ')) UPDATE sysindexes set name = @newname where id = @parent_obj and name = @UnqualOldName -- update base/text index name (no rows changed if not there) else if (@xtype in ('U', 'TF')) begin UPDATE sysindexes set name = @newname where id = @objid AND indid = 0 UPDATE sysindexes set name = convert(sysname,'t'+@newname) where id = @objid AND indid = 255 end COMMIT TRANSACTION end else if (@objtype = 'index') -------- change index name begin BEGIN TRANSACTION -- Locks Object and increments schema_ver. DBCC LockObjectSchema(@OwnAndObjName) -- update the index name UPDATE sysindexes set name = @newname where id = @objid and indid = @indid -- change object name if cnst if (@cnstid IS NOT null) UPDATE sysobjects set name = @newname where id = @cnstid COMMIT TRANSACTION end else if (@objtype = 'column') -------- change column name begin -- Use DBCC to check for column in use by check-constraint, computed-column, etc -- THIS IS NOT A DOCUMENTED DBCC: DO NOT USE DIRECTLY! DBCC RENAMECOLUMN ( @OwnAndObjName, @UnqualOldName, @newname ) end ------------------------- Finalization ----------------------- LABEL_51_AFTERUPDATES: Raiserror(15338,-1,-1,@objtypeIN,@newname) return 0 -- sp_rename ж,7ж, db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,16), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 16 and o2.id = c2.id and c2.colid = r.fkey16 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey16 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid order by 8,9,2,3,13 RiЪRielse c.length end and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and (@parameter_name is null or @parameter_name = '@TABLE_RETURN_VALUE') order by 2, 3, 5 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!„џ<(ж.“&bAvО /* Procedure for 8.0 server */ CREATE PROCEDURE sp_sproc_columns ( @procedure_name nvarchar(390) = '%', @procedure_owner nvarchar(384) = null, @procedure_qualifier sysname = null, @column_name nvarchar(384) = null, @ODBCVer int = 2) AS DECLARE @group_num_lower smallint DECLARE @group_num_upper smallint DECLARE @semi_position int DECLARE @full_procedure_name nvarchar(774) DECLARE @procedure_id int if @column_name is null /* If column name not supplied, match all */ select @column_name = '%' if @procedure_qualifier is not null begin if db_name() <> @procedure_qualifier begin if @procedure_qualifier = '' begin /* in this case, we need to return an empty result set */ /* because the user has requested a database with an empty name */ select @procedure_name = '' select @procedure_owner = '' end else begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end end if @procedure_name is null begin /* If procedure name not supplied, match all */ select @procedure_name = '%' end /* first we need to extract the procedure group number, if one exists */ select @semi_position = charindex(';',@procedure_name) if (@semi_position > 0) begin /* If group number separator (;) found */ select @group_num_lower = converu(int,substring(@procedure_name, @semi_position + 1, 2)) select @group_num_upper = @group_num_lower select @procedure_name = substring(@procedure_name, 1, @semi_position -1) end else begin /* No group separator, so default to all groups */ select @group_num_lower = 1 select @group_num_upper = 32767 end if @procedure_owner is null begin /* If unqualified procedure name */ SELECT @full_procedure_name = quotename(@procedure_name) end else begin /* Qualified qrocedure name */ if @procedure_owner = '' begin /* If empty owner name */ SELECT @full_procedure_name = quotename(@procedure_owner) end else begin SELECT @full_procedure_name = quotename(@procedure_owner) + '.' + quotename(@procedure_name) end end /* Get Object ID */ SELECT @procedure_id = object_id(@full_procedure_name) if ((isnull(charindex('%', @full_procedure_name),0) = 0) and (isnull(charindex('[', @procedure_name),0) = 0) and (isnull(charindex('[', @pqocedure_owner),0) = 0) and (isnull(charindex('_', @full_procedure_name),0) = 0) and not (@procedure_id is null)) begin /* this block is for the case where there is no pattern matching required for the procedure name */ SELECT PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), COLUMN_NAME = convert(sysname,c.name), COLUMN_TYPE = convert(smamlint, 1+c.isoutparam), d.DATA_TYPE, TYPE_NAME = t.name, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, d.NULLABLE, REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int, c.colid), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',d.NULLABLE*3+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, master.dbo.spt_datatype_info d, systypes t WHERE o.id = @procedure_id AND c.id = o.id AND c.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND isnull(d.AUTO_INCREMENT,0) = 0 AND c.xusertype = t.xusertype AND c.name like @column_name AND (o.type in ('P', 'TF', 'IF') OR (len(c.name) > 0 and o.type = 'FN')) AND ((c.number between @group_num_lower and @group_num_upper) OR (c.number = 0 and o.type = 'FN')) UNION ALL SELECT /* return value row*/ PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), COLUMN_NAME = convert(sysname,'@RETURN_VALUE'), COLUMN_TYPE = convert(smallint, 5), DATA_TYPE = convert(smallint, 4), TYPE_NAME = convert(sysname,'int'), "PRECISION" = convert(int,10), LENGTH = convert(int,4), SCALE = convert(smallint,0), RADIX = convert(smallint,10), NULLABLE = convert(smallint-0), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), SQL_DATA_TYPE = convert(smallint, 4), SQL_DATETIME_SUB = convert(smallint,null), CHAR_OCTET_LENGTH = convert(int,null), ORDINAL_POSITION = convert(int,0), IS_NULLABLE = convert(varchar(254),'NO'), SS_DATA_TYPE = convert(tinyint,56) FROM syscomments c, sysobjects o WHERE o.id = @procedure_id AND c.id = o.id AND c.colid = 1 AND o.type = 'P' /*!Procedures */ AND '@RETURN_VALUE' like @column_name AND c.number between @group_num_lower and @group_num_upper UNION ALL SELECT /* UDF return value */ PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), COLUMN_NAME = convert(sysname,'@RETURN_VALUE'), COLUMN_TYPE = convert(smallint, 5), /* SQL_RETURN_VALUE */ d.DATA_TYPE, TYPE_NAME = t.name, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, NULLABLE = convert(smallint, c.isnullable), REMARKS = aonvert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int,0), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',d.NULLABLE*3+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, master.dbo.spt_datatype_info d, systypes t WHERE o.name like @procedure_name AND o.id = c.id AND c.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND isnull(d.AUTO_INCREMENT,0) = 0 AND c.xusertype = t.xusertype AND o.type = 'FN' /* Scalar UDF */ AND c.name like @column_name AND c.colid = 0 AND c.number = 0 UNION ALL SELECT /* Table valued functions */ PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarciar(134),o.name +';1'), COLUMN_NAME = convert(sysname,'@TABLE_RETURN_VALUE'), COLUMN_TYPE = convert(smallint, 3), DATA_TYPE = convert(smallint, NULL), TYPE_NAME = convert(sysname, 'table'), "PRECISION" = convert(int,0), LENGTH = convert(int,0), SCALE = convert(smallint,0), RADIX = convert(smallint,0), NULLABLE = convert(smallint,0), REMARKS = convert(varchar(254), 'Result table returned by table valued function'), COLUMN_DE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<Ш6/“4Х\UжОF = convert(nvarchar(4000),NULL), SQL_DATA_TYPE = convert(smallint, NULL), SQL_DATETIME_SUB = convert(smallint,null), CHAR_OCTET_LENGTH = convert(int,null), ORDINAL_POSITION = convert(int,0), IS_NULLABLE = convert(varchar(254),'NO'), SS_DATA_TYPE = convert(tinyint,0) FROM syscomments c, sysobjects o WHERE o.id = @procedure_id AND c.id = o.id AND c.colid = 1 AND o.type IN ('TF', 'IF') AND '@TABLE_RETURN_VALUE' like @column_name AND c.number = 0 ORDER BY 1, 2, 3, 18 end else begin /* this block is for the case where there IS pattern matching done on the procedure name */ if @procedure_owner is null select @procedure_owner = '%' SELECT PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), COLUMN_NAME = convert(sysname,c.name), COLUMN_TYPE = convert(smallint, 1+c.isoutparam), d.DATA_TYPE, TYPE_NAME = t.name, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) MENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, d.NULLABLE, REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int, c.colid), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',d.NULLABLE*3+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjectq o, master.dbo.spt_datatype_info d, systypes t WHERE o.name like @procedure_name AND user_name(o.uid) like @procedure_owner AND o.id = c.id AND c.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND isnull(d.AUTO_INCREMENT,0) = 0 AND c.xusertype = t.xusertype AND c.name like @column_name AND (o.type in ('P', 'TF', 'IF') OR (len(c.name) > 0 and o.type = 'FN')) AND ((c.number between @group_num_mower and @group_num_upper) OR (c.number = 0 and o.type = 'FN')) UNION ALL SELECT /* return value row*/ PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ isnull(ltrim(str(c.number,5)),'1')), COLUMN_NAME = convert(sysname,'@RETURN_VALUE'), COLUMN_TYPE = convert(smallint, 5), /* SQL_RETURN_VALUE */ DATA_TYPE = convert(smallint, 4), TYPE_NAME = convert(sysname,%int'), "PRECISION" = convert(int,10), LENGTH = convert(int,4), SCALE = convert(smallint,0), RADIX = convert(smallint,10), NULLABLE = convert(smallint,0), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), SQL_DATA_TYPE = convert(smallint, 4), SQL_DATETIME_SUB = convert(smallint,null), CHAR_OCTET_LENGTH = convert(int,null), ORDINAL_POSITION = convert(int,0), IS_NULLABLE = convert(varchar(254),'NO'), SS_DATA_TYPE = convert(tinyint,56) FROM syscomments c, sysobjects o WHERE o.name like @procedure_name AND c.id = o.id AND user_name(o.uid) like @procedure_owner AND c.colid = 1 AND o.type = 'P' /* Procedures */ AND '@RETURN_VALUE' like @column_name AND c.number between @group_num_lower and @group_num_upper UNION ALL SELECT /* UDF return value */ PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), COLUMN_NAME = convert(sysname,'@RETURN_VALUE'), COLUMN_TYPE = convert(smallint, 5), /* SQL_RETURN_VALUE */ d.DATA_TYPE, TYPE_NAME = t.name, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, NULLABLE = convert(smallint, c.isnullable), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int,0), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',d.NULLABLE*3+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, master.dbo.spt_datatype_info d, systypes t WHERE o.name like @procedure_name AND user_name(o.uid) like @procedure_owner AND o.id = c.id AND c.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND isnull(d.AUTO_INCREMENT,0) = 0 AND c.xusertype = t.xusertype AND o.type = 'FN' /* Scalar UDF */ AND c.name like @column_name AND c.colid = 0 AND c.number = 0 UNION ALL SELECT /* Table valued functions */ PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';1'), COLUMN_NAME = convert(sysname,'@TABLE_RETURN_VALUE'), COLUMN_TYPE = convert(smallint, 3), DATA_TYPE = convert(smallint, NULL), TYPE_NAME = convert(sysname, 'table'), "PRECISION" = convert(int,0), LENGTH = convert(int,0), SCALE = convert(smallint,0), RADIX = convert(smallint,0), NULLABLE = convert(smallint,0), REMARKS = convert(varchar(254), 'Result table returned by table valued function'), COLUMN_DEF = convert(nvarchar(4000),NULL), SQL_DATA_TYPE = convert(smallint, NULL), SQL_DATETIME_SUB = convert(smallint,null), CHAR_OCTET_LENGTH = convert(int,null), ORDINAL_POSITION = convert(int,0), IS_NULLABLE = convert(varchar(254),'NO'), SS_DATA_TYPE = convert)tinyint,0) FROM syscomments c, sysobjects o WHERE o.name like @procedure_name AND user_name(o.uid) like @procedure_owner AND c.id = o.id AND c.colid = 1 AND o.type IN ('TF', 'IF') AND '@TABLE_RETURN_VALUE' like @column_name AND c.number = 0 ORDER BY 1, 2, 3, 18 end !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`1<№ž0ЖИ  ІФ0<$Ю­ќL€?ЋЊЊ>ЋЊЊ>A@@€@€@>F'€?€?€?€?€?0<€$ЮЎќL€?ЋЊЊ>ЋЊЊ>ЋЊЊ>ЋЊЊ>€A@@€@€@€@€@>F'€?€?€?€?€?0<$Џ­ќL€?€???€A@€@€@€@€@'@€?0<$Ю­ќL€?ЋЊЊ>ЋЊЊ>A@@€@€@>F'€?€?€?€?€?0<$ЮЌќL?ЋЊЊ>ЋЊЊ>ЋЊ*>@AР@€@€@€@>F'@€?@@@0<$ЏЌќL€?€@€?€@'€?€?0<$ЮЋќL?€@@€@>F'€?€?€?€?0<"0<$ˆЋќL€?%I’=€@`A€@ј@Wn…œГЪс€?€?€?€?€?€?€?€?€?€?@€?€?€?@€?€?@€?@€?@€?€?€? @0<  "0< $•(Ю!L>HAAHA\§@_|ŸФы70€?€?data0€?€?log0€?€?#master0€?€?%mastlog0€?€?'modeldev0€?€?'modellog0€?€?%tempdev0€?€?%templogџ((datalogmasterodeldevtempdev @РР @ @0<  "0< $Ш(Ю!L?€?A€?8@$€@€?€@€?0<  "0< $Џ )Ю!L€?€@A€@'A€?0< "0<$Ю{Х"L ?€@ A€@>F' @€? @€? 0< "0<$Ќ&юљ"L €?€? A€?$ A€? !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ц Ф і G ђ1GyЋќ.`0<ЏG1’J0<$˜ ыЎќLƒƒ€?-#њ;XXACA  Рлі,Gb}˜ГЮщ:Up‹ІСмї-Hc~™ДЯъ ;VqŒЇТнј.IdšЕаы!<WrЈУољ / J e € › Ж б ь  " = X s Ž Љ Ф п њ  0 K f  œ З в э €?€?€?€?€?€?€?€?€?vЂ%€?€?!€?€?€?“Wъ€?€?€?€?€?€?@€?€?€?€?€?@€?€?€?€?'€?@€?+€?€?€?-€?€?€?/€?€?€?1€?€?€?3€?€?6€?€?€?8€?€?€?:€?€?€?<€?€?@€?€?A€?@€?E€?@€?I€?€?€?K€?€?N€?€?€?R€?€?U€?€?Z€?€?€?\€?€?€?]€?€?€?`€?€?€?b€?€?ЏЦ€?€?|Щ+€?€?’Jyt€?€?€?“av€?€?€?€?€?€?€?€?€?€?€?€?€?)€?€?€?+€?€?,€?€?.€?€?2€?€?3€?€?6€?€?€?8€?€?:€?€?@€?€?C€?€?E€?€?J€?€?K€?€?N€?€?Z€?€?[€?@@€?a€?€?b€?€?ЏЦ€?€?€?€?€?€?€?€?"€?@€?2€?€?C€?€?E€?€?_€?€?`€?€?"€?€?.€?€?<џ€?€?€?€?€?€?€?€?€?€?€?€?€? €?€? €?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?ƒ0<$щ ђЏќLƒƒХNl?AЎ <-#њ;-#њ;SSˆACA€?AY a ˜ГЮщ:Up‹ІСмї-Hc~™ДЯъ ;VqŒЇТнј.IdšЕаы!<WrЈУољ/Je€›Жбь " = X s Ž Љ Ф п њ  0 K f  œ З в э  # > €?€?€?€?€?€?€?€?€?vЂ%€?€?!€?€?€?“Wъ€?€?€?€?€?€?@€?€?€?€?€?@€?€?€?€?'€?@€?+€?€?€?-@€?.€?€?€?0€?€?€?2€?€?3€?€?6€?€?€?8€?€?€?:€?€?;@€?<€?€?@€?€?A€?€?C@€?D€?€?E€?@€?I€?€?€?K€?€?N€?€?€?R€?€?U€?€?Z€?€?€?\€?€?]@@@_@€?`€?€?€?b€?€?ЏЦ€?€?|Щ+€?€?’Jyt€?€?€?“av€?€?€?€?€?€?€?€?€?€?€?€?€?)€?€?€?+€?€?,€?€?.€?€?2€?€?3€?€?6€?€?€?8€?€?:€?€?@€?€?C€?€?E€?€?J€?€?K€?€?N€?€?Z€?€?[€?@@€?a€?€?b€?€?ЏЦ€?€?€?€?€?€?€?€?"€?@€?2€?€?C€?€?E€?€?_€?€?`€?€?"€?€?.€?€?€?@@€?@@@@@@ @@€? ƒ0<"0<"0<"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%сј `3<Р02‘шЇ000?ш(<У7"<У7"<‰ˆˆ;§%;\\ˆA€ЦC€@€?€@€@€@$ , рї%<Sj˜ЏЦнє "9Pg~•ЌУкё6Md{’ЉРзю3JaxІНды0G^uŒЃКбшџ-D[r‰ ЗЮхќ * A X o †  Д Ы т љ  ' > U l ƒ š Б Ш п і ОB€?€?€?Р@€?€?€?@@€?€?€?@@€?h  A€?щiЧ@A€?tќ€@€?L˜№@@€?Ори€?€?9K€?€?ЂqЉ €?€?‡3 @@€?Б‹h @€?К‘ @@€?Mо… €@€?†z р@€?•9€?€?П&n€?€?јJb€?€?нZь@@€?1oV@A€?y­ €?€?Рl@€?zѓž@@€?OjА€?€?њжŒ €?€?€?lu"€?€?Q/џ"€?€?ЅCi#@€?оg]$€?€?Уwч$€?€?Тј-(`A€?бэ(€?€?€?me +A€?ЕЃН,€?€?п­ђ,A€?юЧБ-€?€?вц-@€?Qік.€?€?ŠЯ/€@€?вX‚1€?€?nЋŸ3€?€?SЛ)4A€?}Х^4€?€?ЇЯ“4 @€?Œп5€?€?рѓ‡5€@€?Х6€?€?|6€?€?Ф„X9€?€?§ЈL:€?€?тИж:€?€?6Э@;€?€?€?Ј)=€?€?S‚@˜A€?bœФ@€?€?ŒІљ@@€?ўюсBA€? ЁC€?€?7жC€?€?тВF€@€@€@TШšH€@€@€@ЦƒJ@@€?№ИJ€@€?џ4wK€?€? а|O€?€?ъ;P€?€?FєpP@@€?Ž2$R€?€?И€?€?€?@€?€?€?B€?@€?F€?€?€?H€?€?€?J€?€?€?L€?€?€?N€?€?h€?€?€?j€?€?€?l€?€?€?n€?€?€?p€?€?€?r€?€?€?t€?€?|€?€?}c0<[$Џc—ќLcc€?ЋЊЊ>€>/'<Е~%<Е~%<Е~%<АAЦB€@€@€?€@€?€@€@'ЦB€?c!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!7ў`36<S4Зр Ќ;B0<\$Эp–ќLppOьD? ђ”<%I<##AрB€@€@=E/F]t‹ЂЙачў,CZqˆŸЖЭфћ)@Wn…œГЪсј&€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?!€?€?d€?€?€?f€?€?€?h€?€?l€?€?€?n€?€?o@@@q@@@s€?€?€?u€?€?€?w€?€?€?y€?€?Ш€?€?€?Ъ@€?јA€?,A€?-€?€?8@@€?D@@€?E€@€@€@G€?€?H@@€?J@@@L@€?M€?€?Np0<]$Ц•ќL€?9Žc=9Žc= AA€@€@6>Pg~•ЌУкё€?€?€?€?€?€?€?.€?@@€?k€?€?€?m€?€?€?o€?€?€?q€?€?€?s€?€?t€?€?|0<]$–ќL€?й‰=9Žc=9Žc= @AA€@€@€@t|`wŽЅМгъ/F]@@€?€?€?€?€?€?€?f€?€?p@@€?q@€?x€?€?€?€?,€?€?€?.€?€?|€?€?}0<^"0<_"0<_€"0<_€"0<`"0<`"0<`€"0A@@€?€@€@$@@€? 0ЋЊЊ>ЋЊЊ>ЋЊЊ>UUЋB@@UU™B€@€?€@Cїџ{м0€?€?cMicrosoft.SqlServer.Types.SqlGeography0€?€?aMicrosoft.SqlServer.Types.SqlGeometry0€?€?gMicrosoft.SqlServer.Types.SqlHierarchyIdџ((6Microsoft.SqlServer.Types.SqlGeographymetryHierarchyId@@Р & +0>ШAA€?€@ A$A€?0<^  "0<^ $яgŒ#L€?€@A€@W_A€?SPVCџ((SPVC@0<^  "0<^ $УgŒ#L€? AA A3;0A€?+хƒЂ`Lд ’p=йЊІЄт5Ќ;0<^  "0<^ $+gŒ#L€?>€@A€@›Ѓ(?Vm„€?€?!€?€?€?“Wъ€?€?ЊкwB€?€?уўkC€?@€?Ч€@ @€@]e/F€?€?€?€?€?€?€?€?0<8$„žќL€?ЭЬL>ЭЬL>33#B @33B€@ьє kЂй0€?€?KDedicated Admin Connection0€?€?7TSQL Default TCP0€?€?7TSQL Default VIA0€?€?€?7TSQL Named Pipesџ((EDedicated Admin ConnectionTSQL Default TCPVIALocal MachineNamed Pipes@@Р'* - :0<9"0<:$фќLЋЊЊ>C2= @ИA€?€@T\,@`A€?Р@€?@@€?0<:€$фžќLЋЊЊ>ЋЊЊ>C2=C2=-d CИA€?€@-dC€@T\,@`A€?Р@€?@@€?0<;"0<<$p‡ќLaa>РŒ;/л:—9з:PA@D€?€@€@€@рш@Th|ЄИЬ€C€?тB€?€?€?@€? €?€?œB€?2ђB€?<€@€?@a0<< $эЇ5Ж!L]]ЋЊЊ>€@@D€@]e/FD€?@A€?€?€?]0<<  "0<< $хЈ6Ж!L^^@?%I’= €@€D€@U]Xo†ДЫтљ'>@C€?žC€?dB€?ˆA€?€@€? A€?€?€?€?€?€?€? €?€? @@@ €?€? ^0<<  "€?-db_ddladmin0€?€?9db_denydatareader0€?€?9db_denydatawriter0€?€?'db_owner0€?€?7db_securityadmin0€?€?dbo0@€?%default0@@€?'internal0€?€?IMicrosoft.SqlServer.Types0@€?%PRIMARY0€?€?sysџ ((adb_accessadmindatareaderdladminenydatawritersecurityadminefaultINFORMATION_SCHEMAternalPRIMARYsys@РР Р   ,9Р?AQW^0€@@D€@]e/FD€?@A€?€?€?]0<<  "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!№ЮЃф5ёЯ­‹…A\M н Л зѓбM`4€<L Ў6ЉHkQ"Пr^<<ЏЦ$жъn™U“ЛЛ&Д=;{ƒЛ:ШЗёфAР.DР@€@Зё”A2Kd}–ЏШсњ,E^wЉТлє &?XqŠ0AA €@B BC ˜AD ˆAD2  BDBRР@DC €@E @@F @@F_U@G @AI ˜AJ €@K ИAL €@LO 0ALR €@LS AO ˜AO9T€CP @@R  @SFL€ASOPТBSRV AT AV <<ЏЦ$i ѕяn™U“ЛЛhлЯ:љМN;;{ƒЛ:iШЗёфAР.D€@Р@Зё”A.E\sŠЁИЯц§+BYp‡žЕЬуњ(?Vm„›ВЩрї%<Sj˜ЏЦнє "9Pg~•ЌУкё6Md{’ЉРзю3JaxІНды0G^uŒЃКбшџ-D[r‰ ЗЮхќ * A X €?€џџЈAџџџџиAApA APAР@AAAA€@ @@@@@@ €@ @@@@DB@ A@€?€?€?€?@€?€?€?€?€?€?€?ИA €?иA€?<€?=€?€?€??`A@€? B€?d@@@f@g€?€?€?i@@@k€?l@m€?@@€?q€?r@s€?t@u€? @€?{@|€?}€?€?€?A€€?иA€?œ@€?€?ž€?ˆA€?А@€?€?В€?PA€?Р@С€?Т@Р@@Ц€?@@€?Ъ@Р@@Ю@Я€?PA€?н@о@€?€?р€?€?€?т@€?€?ф€?@@€?ш@щ@€?€?ы@ь€?ˆA€?ў€?џр@€?€?€?ї€?љ A€?€?€?€? `A€?€?€?g€?€?€?э€?€?€?№€?€?€?ќ€?€?€?џ€? @€?€?€?€?€?@@€? €?  @A@@ B@Р@@pA@PA@€@@@@€@@@@€@ @€?€?€?€?€?€?€?€?€?@€?@@€@@€?€?€?€?€?€? @@€?|“W<<ЏЦ$H€ 9hЩš+Ъ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!f§`‚  <—W 7˜7" "е<<Ыnmu$$B9šU“$$!=!=!=9Žу<9Žу<dЊABUU‰A€?9Žу?€>r‡?#X{˜Зо>_€Ьэ/TЖе-f‘Он+b™Т0€?#bigint0€?5bigint identity0€?#binary0€?bit0€?char0@'datetime0€?%decimal0€?;decimal() identity0@!float0€?!image0€?int0€?/int identity0€?!money0€?!nchar0€?!ntext0€?%numeric0€?;numeric() identity0€?'nvarchar0@real0@1smalldatetime0@'smallint0€?9smallint identity0€?+smallmoney0€?-sql_variant0€?text0€?)timestamp0€?%tinyint0€?7tinyint identity0€?7uniqueidentifier0€?)varbinary0€?%varchar<<Ыnmu$$ [šU“$$&Д=Œ.:=&Д=‰ˆ=>ј<9Žу<$ЊЊТ@B@€?9Žу?€>r‡?*?Ti~“ЈНвчќ&;€?jџ€?ѕџ€?@@€?љџ@@@ћџ€?€?€?§џ@ўџ€?џџ€?@€@@@@@@@@ €? @]<<“av "0@ "0@ "0@ "0@ "0Z`80u[SGА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!C %  с П  { y`D:C?рЂ8xO@U:C8€:Cча4€џџ:C8€:Cчўџ:C8€ :D$€:Dh€:Dчџџ:Dчўџ:Dч§џ:Dчќџ:Dчћџ:D€:D чњџ :D 8€ :D 8€! :D =€% :D =- :D8€5:D$€9:D4€I:D4€K:D0€M:D8€N:DЅ@љџ:E8€:Eча4€џџ:Eчўџ:Eч§џ:Eчќџ:Eчћџ:E=:G$€:G8€:G8€:G8€:H$€:H$€:H0€$:H€%:H­€-:I$€:I0€:I$€:I€%:I8€-:I8€1:IЏ€5:I=€7:I 8€? :I 8€C :I $€G :I €W :I €_ :I€g:I€o:I8€w:I=€{:I=€ƒ:I8€‹:IЅ8€џџ:I$€:I8€Ÿ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!d&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`C:BJ L9ЉH Q"(fЪеЛ:_8€:_ча4€џџ:_Ѕ €ўџ:_8€:_Џ€ :_=€:_Ѕа§џ:_Џ€:_ Ѕ@€ќџ :`8€:`ча4€џџ:`0€:`8€ :`Ѕўџ:`8€ :`=€:`=€:` ча4@§џ :` ча4@ќџ :a0€:a8€:a8€ :aч€џџ:a8€ :a8€:b0€:b8€:b0€ :bча4€џџџџ:bча4ўџўџ:bча4§џ:bча4ќџ:b8€ :b 8€ :ЏЦчFа4џџџџ:ЏЦ8€:ЏЦяа4€:ЏЦ8:ЏЦ8:ЏЦ8:|Щ+0€:|Щ+8:|Щ+ча4€џџ:|Щ+4€ :|Щ+h€ :|Щ+h :|Щ+h€ :|Щ+h€ :|Щ+ h€ :|Щ+ 0€ :|Щ+ 8 :|Щ+ 4 :|Щ+ 8 :|Щ+ч@а4ўџ:|Щ+ч@а4§џ:|Щ+8€:|Щ+0:|Щ+ча4ќџ:’Jyt 4€:’Jyt Ї а4џџ:’Jyt 4:’Jyt ча4€ўџ:Ыnmu$0€:Ыnmu$8:Ыnmu$0 :Ыnmu$ча4€џџ:Ыnmu$4€ :Ыnmu$8 :Ыnmu$4:Ыnmu$4:Ыnmu $8 :Ыnmu $Ї а4ўџ :Ыnmu $Ї а4§џ :Ыnmu $Ї а4ќџ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!а’Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž` Й1:˜ˆ4UUUА(ДBЛСЈy"x-6 DC8IC_9Ыnmu BJ;`<!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! јхвПЌ™†s`B:<Gр ’;ЉH;Q"С9§{:J8€:J0€:J8€:J8€ :J8€:K8€:K0€:K8€:K8€ :K8€:N$€:N0€:N8€:N8€:Z8€:Z8€:Z8€ :[8€:[8€:[0€ :[8€ :[Џ€:[8€:[8€:]8€:]8€:]8€ :_ча4€џџџџ:_8€:`ча4€џџџџ:`8€:aч€џџџџ:a8€:a0€:a8€:bча4€џџџџ:bча4ўџўџ:b0€:b8€:b0€:b8€:ЏЦ8€:ЏЦяа4€:ЏЦчFа4џџџџ:ча4€џџџџ:8€:ЅUџџџџ:8€:$€:8€:8€:"ча4€џџџџ:"8€:"0€:"8€:*ЅUџџџџ:*8€:.Ѕt€џџџџ:.Ѕ€ўџўџ:.8€:2ча4€џџџџ:28€:28€:C8€:Cчџџџџ:C8€:Eча4€џџџџ:E8€:_Ѕ €џџџџ:_8€:`0€!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`‚;:p €<ЗРМY"Ь.—:`8€:`Ѕџџџџ:`8€:"8€:"0€:"8€:.Ѕ €џџџџ:.8€:0€:0€:€:$€ :$€:8€++:0€:0€:€:$€ :$€:8€++:0€:0€:€:$€ :$€:8€++:€:€ :€:€:=€$:8€,:€:8€ :€ :0€:$€:0€:$€:€&#:€.:$€6:8€F: 8€J : 8€N : я€R : 8€T : 8€X :€\:Ѕ@џџ: 0€: $€: 0€: $€: €&#: €.: $€6: 8€F:  8€J :  8€N :  я€R :  8€T :  8€X : €\: Ѕ@џџ: 0€: $€: 0€: $€: €&#: €.: $€6: 8€F:  8€J :  8€N :  я€R :  8€T :  8€X : €\: Ѕ@џџ: =€: 8€ : 8€: 8€: 8€: 8€: 8€ : 8€$:  8€( :  8€, :  8€0 : чFа4џџ: 8€: яа4€: 8: 8: 8: яа4€: 8€ : чFа4џџџџ: 8: 8: 8:8€:яа4€:чFа4џџџџ:ча4€џџ:h€:8€:8€ :8€ :8€!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!BЦˆJ ЮRж˜Zо b$цЈj,юАr4іИz<ўР‚DШŠLа’Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`< .-†ь=а`< бŸ !ЗЙlthdicLithuanian case sensitive dictionary sort order for use with code page 1257v0 бЗ5“—danno_nocaseprefCase-insensitive Danish/Norwegian dictionary sort order, with case preference for collating purposes. Uses the ISO 8859-1 character set with Windows 3.1 additional characters.<х      !!""##$$%%&&''(())**++,,--..//:1€23‚4ƒ5„6…7†8‡9ˆA0;1<2=3>4?5@6[‰BŠC‹DŒEFŽGHI‘J’K“L”M•N–O—P˜Q™RšS›TœUVžWŸX YЁZЂЦ7\8]9^:_;`<{‰BŠC‹DŒEFŽGHI‘J’K“L”M•N–O—P˜Q™RšS›TœUVžWŸX YЁZЂЦ=|>}?~@A€BC‚DƒE„F…G†H‡IˆJ‰K‹›TLMŽNOP‘Q’R“S”T•U–V—W˜X™Y››TZ[ž\ ЁZ]Ё^Ђ_Ѓ`ЄaЅbІcЇdЈeЉfЊgЋhЌi­jЎkЏlАmБnВoГpДqЕrЖsЗtИuЙvКwЛxМyНzО{П|з‰B‰B‰B‰BЃиЅЃи‹DFFFF‘J‘J‘J‘JŒE–O—P—P—P—PЄХ}їЄХVVVЁZЁZ‰B‰B‰B‰BЃиЅЃи‹DFFFF‘J‘J‘J‘JŒE–O—P—P—P—PЄХ~0ЄХVVVЁZЁZЁZџ—PFџ—PFџ›T›TџœUIџœUIџџџџџџџџџџџ`уїwџœ-ыwџџJіwH$PџуїwиџџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4АџзЭџxбћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕЈџŒє0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw0 бŸ !ЗЛlthdicLithuanian case sensitive dictionary sort order for use with code page 12572Ѕ- . / 0 1!     + 2"3#4$5%6&7(&-8)9*:,\<;.'­</=:vМzЙ|В~Г€56‚7ƒ8„9…a>;??]=^>_Б@@A[†b‡cˆшŠe‹fŒghŽijk‘l’m“n”o•p–q—r˜s™№›™vžwŸx zjЁўB\C]D^E_F`G{†b‡cˆшŠe‹fŒghŽijk‘l’m“n”o•p–q—r˜s™№›™vžwŸx zjЁўH|I}J~KІu0ƒV“ˆY‹s‰p‡q•Št€ŒZ› MQџPŽ!˜T’U‚W”X„r…)—* "šœu#œ[+$ŸNДS‘%', ЃЅeЃfЄgЇЄLhЉ• piЌ˜saЛjЎ(–kАlЕ`Ћ}34OmЖnЗo†• p{2˜sbзwНxОy1† bj†bˆш†b† b‹ f‹ f‰d‹fЁў‹fh‘lj’mšt”o”o•p•p• p•pcїv’m™№vvЁўЂЁ† bj†bˆш†b†b‹ f‹f‰d‹fЁў‹fh‘lj’mšt”o”o•p•p•p•pdЂv’m™№vvЁўЂЁRžџ†b‹fџ†b‹fџ™№™№џџџџџџџџџџџџџ`уїwџœ-ыwџџJіwH$Pџуїw8џџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4нџM"Вџ"эћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(џОјw(џ{џдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕџŒєц0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw0 б  ЙЛlthncLithuanian case insensitive dictionary sort order for use with code page 12570 б  ЙНlthncLithuanian case insensitive dictionary sort order for use with code page 1257<Ѕ- . / 0 1!     + 2"3#4$5%6&7(&-8)9*:,\<;.'­</=:vМzЙ|В~Г€56‚7ƒ8„9…a>;??]=^>_Б@@A[†b‡cˆшŠe‹fŒghŽijk‘l’m“n”o•p–q—r˜s™№›™vžwŸx zjЁўB\C]D^E_F`G{†b‡cˆшŠe‹fŒghŽijk‘l’m“n”o•p–q—r˜s™№›™vžwŸx zjЁўH|I}J~KІu0ƒV“ˆY‹s‰p‡q•Št€ŒZ› MQџPŽ!˜T’U‚W”X„r…)—* "šœu#œ[+$ŸNДS‘%', ЃЅeЃfЄgЇЄLhЉ•piЌ˜saЛjЎ(–kАlЕ`Ћ}34OmЖnЗo†•p{2˜sbзwНxОy1†bj†bˆш†b†b‹f‹f‰d‹fЁў‹fh‘lj’mšt”o”o•p•p•p•pcїv’m™№vvЁўЂЁ†bj†bˆш†b†b‹f‹f‰d‹fЁў‹fh‘lj’mšt”o”o•p•p•p•pdЂv’m™№vvЁўЂЁRžџ†b‹fџ†b‹fџ™№™№џџџџџџџџџџџџџ`уїwџœ-ыwџџJіwH$Pџуїw8џџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4Тџ #Вџ"эћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(џОјw(џ{џдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕџŒєц0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw0ЂЌќрррррИ9€4ЕЕЕЕP:00P:р9@ 0ЂЌќљљљљљИ9€4ЌЌЌЌИ90PЈ::A00ЂЌАЎ‚х binarydefinitionQQQQP0р:P:B 0ЂЌќEEEEEx:€400;Ј:C 0ЂЌќ’’’’’x:€4ЧЧЧЧж08X;р:Dє@ІG FFFFF\ž˜ћt;<Џ„8@0X–;E PўЌ;QQQQQ@( `1tLЇЌ[YYYYY> ____(@ؘ•А\–uL>­ MMMMM6š-- @иа'p*v `}Ј_MMMMM+ 2"3#4$5%6&7(&-8)9*:,\<;.'­</=:vМzЙ|В~Г€56‚7ƒ8„9…a>;Рؘ•а;x8єІЌяяяяяŒŒ˜t6ЬX–”^–ЅЅџККККXАа'p*y8єІЌћдддддŒŒ˜žvФ:ќ<”^–ЅЅp§џXPа'p*z8єІЌCCCCCŒŒ˜’nє2\=”^–ЅЅџX№<а'{8єІЌћ^^^^^ŒŒ˜№?Ь4М=”^–00 X<а'|@$kЈ?|?ф>œp T GGGG`(<а'}\Ђ…pppppL€•œ€•%%%%(ј<а'~<\Ђчццццц@ѕBшџџџPTГГГГ†_`0˜?Ш>\Ђќyyyyy,,,,˜X0€•Ш>€\ЂН%%%%%\=ppppx0(( @0LЇЌDФФФФФќм\нМн‘‘‘‘ƒиp*,Д . ? -юм>  ‹0 бЦ'‘“bin_cp936Binary Sort Order for the Code Page 936 Character Set0 бЧ'­Йnls_cp936NLS Case-Insensitive Sort Order for the Code Page 936 Character Set€0 бШm-ЏЛnls_cp932_csNLS Case-Sensitive Sort Order for the Code Page 932 Character Set€F0 бЫ-ЏЛnls_cp936_csNLS Case-Sensitive Sort Order for the Code Page 936 Character Set€0 бУ '­Йnls_cp949NLS Case-Insensitive Sort Order for the Code Page 949 Character Set€ППП0 бЩ -ЏЛnls_cp949_csNLS Case-Sensitive Sort Order for the Code Page 949 Character Set€0 бФ '‘“bin_cp950Binary Sort Order for the Code Page 950 Character Set0 бХ '­Йnls_cp950NLS Case-Insensitive Sort Order for the Code Page 950 Character Set€0 бЪ -ЏЛnls_cp950_csNLS Case-Sensitive Sort Order for the Code Page 950 Character Set€0 бЬ'‘“bin_cp874Binary Sort Order for the Code Page 874 Character Setk0 бЭ'­Йnls_cp874NLS Case-Insensitive Sort Order for the Code Page 874 Character Set€0 бЮ-ЏЛnls_cp874_csNLS Case-Sensitive Sort Order for the Code Page 874 Character Set€0 бв)‰EBCDIC_037EBCDIC 037 code page sort - United States/Canadaк     A [$€и|@\*m_Qщ~=N+^;])O|l%(^Lz:‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁСAP&бJ1‘ ;Š!žЦ*„+…,†-‡.‰БЃ/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/Ђs8›=Œ9И?Ÿ&ž'-@ BтЋПK.ВЅ ЕГЗk,ЖЖОДЕЇ›К‹Л`—ЫєАˆНЈ‘jАыдћлПзЁ˜ЗМДЉ:€лћœцŒ№ИНЙОК[ЌаeСfУcФgХdРhЧŸЄiбuЭrЪsЫtШy`vЮwЯxЬ­нjІюгяеьж№0эвР{aўкџќм§йЎоЏЎZ!EсFуCфGхDрHч‚IёUэRъSыTшYпVюWяXь§JЂЮѓЯѕЬіа}ЭђтSqЩоњпџмќнљŽўБр\џŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџma0 бг)‰EBCDIC_273EBCDIC 273 code page sort - Austria/Germany F.R.к     A P&€и|Ї\*m_Qщ~=N+^;])O!l%(^Lz:‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁDрМЏнљ1‘ ;Š!žЦ*„+…,†-‡.‰`—/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/Zм8›=Œ9И?Ÿ&ž'-@ BтЋПБЃВЅ ЕГЗЭђ}'ОДЕ@›К‹ЛЛ|ЫєАЂНЈ‘jАыдћлПзЁпЗМДЉ:€лћœцŒ№ИНЙОКЌЌаeСfУc[gХK.hЧŸЄiбuЭrЪsЫtШy`vЮwЯxЬ­нjіюгяеь\№0сїРфaўкџќ][$ЎоЏЎЂsEсFуC{GхСAHч‚IёUэRъSыTшY˜VюWяXь§JФЮѓЯѕЬІаќk,тSqЩоњпџм}бJŽўБржџŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџ0 бд)}EBCDIC_277EBCDIC 277 code page sort - Denmark/Norwayк     A P&€@K.hЧm_Qщ~=N+^;])O!l%(^Lz:‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁ‚МЏHч1‘ ;Š!ž[*„+…,†-‡.‰`—/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/нљ8›=Œ9И?Ÿ&ž'-@ BтЋПБЃВЅ[ХГЗqЩЖЖОДЕЇ›К‹ЛЛ|ЫєАЂНЈ‘jАыдћлПзЁќЗМДЉ:€лћœ{Œ№ИНЙОКЌЌаeСfУcФg$dР\*|иiбuЭrЪsЫtШy`vЮwЯxЬ­нjјюгяеьж№0эвРц}'ўкџќм§йЎоЏЎZЄEсFуCфG}DрбJСAIёUэRъSыTшYпVюWяXь§J#ЮѓЯѕЬіахЭђтSk,оњпџм˜ЂsŽўБр\џŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџžžž< бе)}EBCDIC_278EBCDIC 278 code page sort - Finland/Sweden@†\иHИќ@Ќl№фАє`4 (> @-ОД?H 0 бЮ-ЏЛnls_cp874_csNLS Case-Sensitive Sort Order for the Code Page 874 Character Set€0 бв)‰EBCDIC_037EBCDIC 037 code page sort - United States/Canadaк     A [$€и|@\*m_Qщ~=N+^;])O|l%(^Lz:‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁСAP&бJ1‘ ;Š!žЦ*„+…,†-‡.‰БЃ/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/Ђs8›=Œ9И?Ÿ&ž'-@ BтЋПK.ВЅ ЕГЗk,ЖЖОДЕЇ›К‹Л`—ЫєАˆНЈ‘jАыдћлПзЁ˜ЗМДЉ:€лћœцŒ№ИНЙОК[ЌаeСfУcФgХdРhЧŸЄiбuЭrЪsЫtШy`vЮwЯxЬ­нjІюгяеьж№0эвР{aўкџќм§йЎоЏЎZ!EсFуCфGхDрHч‚IёUэRъSыTшYпVюWяXь§JЂЮѓЯѕЬіа}ЭђтSqЩоњпџмќнљŽўБр\џŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџ0 бг)‰EBCDIC_273EBCDIC 273 code page sort - Austria/Germany F.R.к     A P&€и|Ї\*m_Qщ~=N+^;])O!l%(^Lz:‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁDрМЏнљ1‘ ;Š!žЦ*„+…,†-‡.‰`—/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/Zм8›=Œ9И?Ÿ&ž'-@ BтЋПБЃВЅ ЕГЗЭђ}'ОДЕ@›К‹ЛЛ|ЫєАЂНЈ‘jАыдћлПзЁпЗМДЉ:€лћœцŒ№ИНЙОКЌЌаeСfУc[gХK.hЧŸЄiбuЭrЪsЫtШy`vЮwЯxЬ­нjіюгяеь\№0сїРфaўкџќ][$ЎоЏЎЂsEсFуC{GхСAHч‚IёUэRъSыTшY˜VюWяXь§JФЮѓЯѕЬІаќk,тSqЩоњпџм}бJŽўБржџŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџ0 бд)}EBCDIC_277EBCDIC 277 code page sort - Denmark/Norwayк     A P&€@K.hЧm_Qщ~=N+^;])O!l%(^Lz:‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁ‚МЏHч1‘ ;Š!ž[*„+…,†-‡.‰`—/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/нљ8›=Œ9И?Ÿ&ž'-@ BтЋПБЃВЅ[ХГЗqЩЖЖОДЕЇ›К‹ЛЛ|ЫєАЂНЈ‘jАыдћлПзЁќЗМДЉ:€лћœ{Œ№ИНЙОКЌЌаeСfУcФg$dР\*|иiбuЭrЪsЫtШy`vЮwЯxЬ­нjјюгяеьж№0эвРц}'ўкџќм§йЎоЏЎZЄEсFуCфG}DрбJСAIёUэRъSыTшYпVюWяXь§J#ЮѓЯѕЬіахЭђтSk,оњпџм˜ЂsŽўБр\џŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџ—‹0 бе)}EBCDIC_278EBCDIC 278 code page sort - Finland/Swedenк     A P&€иdРhЧm_Q`~=N+^;])O!l%(^LRъ‚bƒc„d…e†f‡gˆh‰iŠЋ’k“l”m•n–o—p˜q™ršЊЃtЄuЅvІwЇxЈyЉzЊЁDрМЏHч1‘ ;Š!žЦ*„+…,†-‡.‰`—/‹<š0~>œ"Ž#$%2’3“4”5•6–7™a/нљ8›=Œ9И?Ÿ&ž'-@ BтЋПБЃВЅ[ХГЗЭђK.ОДЕ[›К‹ЛЛ|ЫєАЂНЈ‘jАыдћлПзЁќЗМДЉ:€лћœцŒ№ИНЙОКЌЌаeСfУc#g$|ж\*Ÿ]iбuЭсїsЫtШyщvЮwЯxЬ­нjіюгяеь@№0}'Рфaўкџќм§йЎоЏЎZЄEсFуC{G}СAбJ‚IёUэz:SыTшYпVюWяXь§JЇЮѓЯѕЬІахk,тSq\оњпџм˜ЂsŽўБрЩџŽџј€ј€јџxћwpљwџџџџџј•ќwG•ќwџŽ џИїџNшwdмїџruШMxŽџŽxŽxŽџхO гќwџгќwџя§№џџZbџŠџџџўouџ\јџBљw88џ8јˆџјуxћw(BљwџџџџќјYќwџ@8џ+љwџŽВащwџŽˆސŽџlљџљlљуxћwџ№јџјџŽџŽщCuџјOхјwlјџљlљуxћwџљwџџџџ|љџEјwџ8F-јw0џ№§фx8џр§ р§џр§Tљ№§џјwџљ@+џ8јwџ § §џ§уxћwЈ{јwџџџџ˜ќ•Qјwџ§р§№§џC:\WџNNT\Sџstem3џ\ntdlџ.dllџImageџFile џxecutџon Opџions\џHARSEџ.EXEџџџџџil< бж)kmEBCDIC_280EBCDIC 280 code page sort - Italy‹|Ÿ‹”О„LЇЌPPPPђђђђЬœ–,–Œ–ЇЇЇЇDР<Ќ` Zі@x^A8!!!!О`‚ˆр AЗ8Y"X–ИЙ vЂ%vЂ%!!Z3іZ3і“Wъ“Wъ""''))**++,,--...//0011223366778899::;;<<<<џ@@AACCDDDEEGGHHIIJJKKNNPPRRUUZZ[[\\]]^^^___```aabb ЏЦЏЦ |Щ+|Щ+ ’Jyt’Jyt ЫnmuЫnmu “av“av""))**++,,..2233667788::@@CCEEJJKKNNZZ[[]]__``aabb ЏЦЏЦ""**..22CCEE__``""..           !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!њ ф Ю И Ђ Œ v ` J 4   ђ м Ц А š „ n X B ,  ъ д О Ј ’ | f P : $  јтЬЖ Št^H2№кФЎ˜‚lV@*ўшвМІzdN8" ірЪДžˆr\F0юиТЌ–€jT>(ќцаКЄŽxbL6  єоШВœ†pZD.ьжРЊ”~hR<&њфЮИЂŒv`9:;L  ШBЉ@7" kG§k:Ыnmu $4€ :Ыnmu$4€:Ыnmu$4€:Ыnmu$4:Ыnmu$4€ :Ыnmu$4":Ыnmu$ча4ћџ:Ыnmu$0$:Ыnmu$4€%:Ыnmu$4':“av[8€:“av[Ї<а4€џџ:“av[Їџа4€ўџ:€:0€ :€ :8€:8:8:ча4џџџџ:0€ :8€ :8€:8€:8€ :8€ :ча4€џџџџ:8€:ча4€џџџџ:8€:"0€:"8€:"ча4€џџџџ:"8€:)ча4џџџџ:)8€:)4€:)8€:*ча4€џџџџ:*8€:+ча4€џџџџ:+8€:,ча4€џџџџ:,8€:,0€:,8€:.ча4€џџџџ:.8€:28€:2ча4€џџџџ:28€:3чџџџџ:38€:30€:38€:6ча4џџџџ:68€:68€:78€:78€:78€ :78€ :8ча4€џџџџ:88€::0€::8€::ч€џџџџ::8€:@ча4€џџџџ:@0€:@8€:Cча4€џџџџ:C8€:Eчџџџџ:Eчўџўџ:E8€!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ŠLа’Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`‚8:9L  ШCИCЋVEЊ:IЅ8€ўџ:I$€Ѓ:Iч€§џ:Iчќџ:I0€Г:JВ0€:JВ8€:JВ8€ :JВ8€ :JВ8€:JВ8€:KД0€:KД8€:KД8€ :KД8€ :KД8€:KД8€:N0€:N8€:N8€ :N$€ :N8€:PЅU€џџџџ:Pча4€ўџ:Pча4€§џ:P8€:P8€:P=€ :P=€:Pча4€ќџ:R8€:R8€:R8€ :R­€:R8€:R€:R€$:R€,:U8€:Uч€€џџџџ:U8€:U0€ :Zc8€:Zc8€:Zc8€ :Zcч@€џџ:[c8€:[c8€:[c8€ :[c0€:[c8€:[cЏ€:[c8€:[cЏ€:[ cЏ€ :[ ˜8€ :[ ˜Џ€ :[ ˜ч@џџ :\p8€:\p8€:\pЏ€ :\p4€:\pч@џџ:]8€:]8€:]8€ :]8€:]8€:]8€:]ч@џџ:^0€:^8€:^Ѕ €џџџџ:^Џ€ :^Ѕ@€ўџ:^8€ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ŠLа’Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`‚:8F TDЙ NЯZе:6 8€ :6 @€ :7Я8€:7Я8€:7Я8€ :7Я8€:7Я8€:7Я0€:7Я0€:88€:8ча4€џџ:80€:80€ :84€ :8€ :84€:84€:8 8€ :8 8€ :8 8€ :8 чўџ :8 ч§џ :8ча4ќџ:8ча4ћџ:8ча4њџ:8ча4љџ:88€$:80€(:80€):98€:9чџџџџ:9ч€€ўџўџ:9ча4§џ:98€::0€::8€::8€ ::ч€џџ::8€ ::Џ€::8€::=€:: =€ :;0€:;8€:;8€ :;8€ :;8€:;Џ€:;Џ€:<q0€:<q8€:<q8€ :<q8€ :<Иbџџ:<Ѕ@ўџ:@0€:@8€:@ча4€џџ:@8€ :@Џ€ :@8€:@=€:@=€:A0€:A8€:A8€ :A8€ :A€:A8€!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!иš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž` ZіE˜ˆ9^yxDCB8€!!!!О` ZіF^G8!!!!О` і ЂGЙp %юMy0 џџџџ К€џџџџоД?tМД*{и ДДаС2мE JЌнД@ wЕЈ­2€0*PRIMARY!рю}Їmastere:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\master.mdf0 @џџџџ К€џџџџоД?tМД*ДДаС2мE JЌнД@ wЕЈ­2€0*PRIMARY!рў}Ћmastloge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\mastlog.ldf0 џџџџ  J0јџџџџК€џџџџоД?tМД*-1ДŒнДаС2мE JЌнД@ wЕЈ­2€0*PRIMARY!рў}Љtempdeve:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\tempdb.mdf0 @џџџџ  J0јџџџџК€џџџџоД?tМД*-1ДŒнДаС2мE JЌнД@ wЕЈ­2€0*PRIMARY!рў}Ћtemploge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\templog.ldf0 џџџџ€К€џџџџоД?tМД*XДДаС2мE JЌнД@ wЕЈ­2€0*PRIMARY!рю}Љmodeldeve:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\model.mdf0 @џџџџ К€џџџџоД?tМД*ДДаС2мE JЌнД@ wЕЈ­2€0*PRIMARY!рў}Џmodelloge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\modellog.ldf0џHџџџџУŒM}јЌХ ЬЛХ ПяXEџToN‹’˜ БЋ@и€вR^ў@гпЬЄ­Х ”MDгпДЏХ <и -€@п@пЮŽfN˜ЊХ ДЏХ }šўpАХ з@ўќ и -€@пр“@G€LКХ }ЋБ@G€фЈИБи -€,БХ !`ў}Нdatae:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\mssqlsystemresource.mdf0џ@УŒM}јЌХ ЬЛХ ПвbmЋnЇЧ@ŠrЙ9ДЏЙи€вR^ў@гпЬЄ­Х ”MDгпДЏХ <и -€@п@пЮŽfN˜ЊХ ДЏХ }šўpАХ з@ўќ и -€@пр“@G€LКХ }ЋБ@G€фЈИБи -€,БХ !`ў}Лloge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\mssqlsystemresource.ldf0 €џџџџ УŒM}јЌЮ ЬЛЮ Пu4xwN”Ъ`yˆкёaи€лR^ў@НшtЄ­Ю ”MDНшДЏЮ <и,€@ш@шJ)ЊI˜­Ю ДЏЮ }šўpАЮ з@ўАи,€@шр“Ры€LКЮ }ЋБРы€DgЈИБи,€,БЮ !`ў}ЏMSDBDatae:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\MSDBData.mdf0 @ УŒM}јЌЮ ЬЛЮ ПъЗ;qOЊJ=яQвЏ&и€лR^ў@НшtЄ­Ю ”MDНшДЏЮ <и,€@ш@шJ)ЊI˜­Ю ДЏЮ }šўpАЮ з@ўАи,€@шр“Ры€LКЮ }ЋБРы€DgЈИБи,€,БЮ !`ў}ЋMSDBLoge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\MSDBLog.ldf<УŒM}јЌк ЬЛк ПSќ/РкhJЅЕљo•p _и€лR^ў@ОшxЄ­к ”MDОшДЏк <и O€@ш@ш“Џух˜Њк ДЏк }šўpАк з@ўPи O€@шр“ф€LКк }ЋБф€.ЈИБи O€,Бк !`ў}1зAdventureWorks_Loge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorks_Log.ldf<!рў}-йAdventureWorksDWe:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorksDW_Data.mdf<ш"џџџџУŒM}јЌк ЬЛк П)о.щХ?УNЛ/Дv"д5Ки€лR^ўЪшЇЄ­к ”MЪшДЏк <и O€@ш@шtйZ˜Њк ДЏк }šўpАк з@ўPи O€@шр“€Х€LКк }ЋБ€Х€ф†ЈИБи O€,Бк !`ў}7уAdventureWorksDW_Datae:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorksDW_Data.mdf<УŒM}јЌк ЬЛк ПнqТ#L—іаA|wzи€лR^ўЪшЇЄ­к ”MЪшДЏк <и O€@ш@шtйZ˜Њк ДЏк }šўpАк з@ўPи O€@шр“€Х€LКк }ЋБ€Х€ф†ЈИБи O€,Бк !`ў}5пAdventureWorksDW_Loge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorksDW_Log.LDFLКТ }ЋБ х€$ЈИБи€,€,БТ !`ў}'ЙNorthwind_loge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\northwnd.ldf<!рў})бAdventureWorkse:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorks_Data.mdf<pVџџџџУŒM}јЌк ЬЛк ПТˆаKЏ+-EwoIЛEыи€лR^ў@ОшxЄ­к ”MDОшДЏк <и O€@ш@ш“Џух˜Њк ДЏк }šўpАк з@ўPи O€@шр“ф€LКк }ЋБф€.ЈИБи O€,Бк !`ў}3лAdventureWorks_Datae:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorks_Data.mdf<УŒM}јЌк ЬЛк ПSќ/РкhJЅЕљo•p _и€лR^ў@ОшxЄ­к ”MDОшДЏк <и O€@ш@ш“Џух˜Њк ДЏк }šўpАк з@ўPи O€@шр“ф€LКк }ЋБф€.ЈИБи O€,Бк !`ў}1зAdventureWorks_Loge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\AdventureWorks_Log.ldf!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ^ Ур…ж Џ[В` ZіHH^I8О`‚ј\ IЙXУРЉі0ј џџџџ ДŒнДаС2мE J{и  $ J2€0* ?PRIMARYЛДœпДг€И{_žmastere:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\master.mdf0ј @џџџџ ДŒнДаС2мE J $ J2€0* ?PRIMARYЛДœпДг€И_Ђmastloge:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\mastlog.ldfў` ZіJp^K8О`С*_ŸKp0*FG ?PRIMARY` ZіL˜^M8О`f–M˜{` ZіNР^O8О`ђnOЗ  % ЄъџБSЬ–{` ZіPш^Q8ььО`. QЗ  %МН[гџ     ),0))) 0Й(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],5,2))),0)))0Й(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],7,2))),0)))0Й(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],9,2))),0)))c•0Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],11,2))),0)))0 Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],13,2))),0)))0!Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],15,2))),0)))0"Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],17,2))),0)))0#Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],19,2))),0)))0$Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],21,2))),0)))0%Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],23,2))),0)))0&Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],25,2))),0)))0'Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],27,2))),0)))0(Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],29,2))),0)))0 (convert(smallint,databaseproperty([name],'version')))'0! Ÿ(convert(smallint,case when ([xstatus] & 32 = 32) then 1 else 0 end))0! Ÿ(convert(smallint,case when ([xstatus] & 64 = 64) then 1 else 0 end))0! Ѓ(convert(smallint,case when ([xstatus] & 192 = 192) then 1 else 0 end))0(Й(convert(char(30),case when ([srvproduct] = N'SQL Server') then [datasource] end));Ј0(e(convert(bit,(([srvstatus] & 32) / 32)))0(U(convert(bit,([srvstatus] & 1)))ццц0(a(convert(bit,(([srvstatus] & 2) / 2)))0(a(convert(bit,(([srvstatus] & 4) / 4)))<(a(convert(bit,(([srvstatus] & 8) / 8)))0)Л(convert(smallint,isnull(convert(binary(2),reverse(substring([refkeys],31,2))),0)))•$x;Ј Œo•Dp•І88 ^^^^q•pp•(x;Ј uuuuuŒp•F44ШвЇ Hq•Иp•(x;Ј9 pppppМv•dq•ееее{ Ьq•Dr•%%%%Аq•q•Dx;Ј дp•€4NNNN ќ“[јq•Hq•(x;Ју жжжжжчча4r•ƒƒƒƒ(r•Аq•ФљІзЄЄЄЄЄindexdelёёёёpr•јq•(x;Ју ччvа4Œr•v\\\\s•(r•vФљІзwwwww(convert(smallint,(([base_schema_ver] & ((~15))) / 65536)))""""8s•pr•АБЂкмммммrefdate‰‰‰‰ps•s•АБЂкPPPPPdatetimeИs•8s•(x;Ју ОООООыыыы==ыыыышs•ps•ФљІз.....datetime{{{{Pt•Иs•Dx;Ј шшшшшŒs•€4ННННT€t•шs•АБЂкlllllcrdate9999—рt•Pt•@x;Ј- „„„„„(0== џџ ќt•ббббu•€t• x;ЈЧ tttttcrdate!!!!Xu•рt• (x;Јџ оооооЈu•88 tu•‹‹‹‹€u•u•!ФљІзOOOOШu•Xu•"$x;Ј АААААŒs•І==ххххє˜šv•€u•#$x;Ј єєєєєœt•œu•І==ЁЁЁЁ”І88 ####L9”˜{•{•8(x;Ј ооооо${•tF88 ШвЇ‹‹‹‹р{•P{•9(x;Ј9 ЛЛЛЛЛ,+”ќ{•ќ"”{ d|•м|•ююююH|•˜{•:Dx;Ј YYYYYl{•€4 РИ”|•р{•;(x;Ју ›››››ђ’чча4Ќ|•ЮЮЮЮР|•H|•<ФљІзЈЈЈЈЈversion§§§§’}•|•=(x;Ју ЫЫЫЫЫ0)`чч а4$}• žžžžH}•Р|•> ФљІз  (convert(int,0))____x}•}•?АБЂкЎЎЎЎЎdeltrigћћћћ }•H}•@АБЂкuuuuuint ш}•x}•A(x;Ју 44444€88 aaaa~• }•BФљІз99999intllll.x~•ш}•CDx;Ј aaaaaМ}•_^€44444Hѓ_Р~•~•D(x;Ј6 јјјјјd%”H(”]88 ­­­­№~•x~•E АБЂкoooooxtype::::ц_P•Р~•F@x;Ј- ррррра)”(0 ЏЏа4џџ l•ЕЕЕЕ€•№~•G x;ЈЧ XXXXXxtype ˜˜lk•Ј•P•HАБЂйAAAAAU ”€•I(x;Јп †††††TTTTTTTTTTTTTTTTTTT“љЄ‚q` ZіR™`$^€8pи О`T-fB)f SІ47"BНЧqT<-ЅCi#ЇЇ€а4€K@level1type<-ЅCi#ча4€K@level1name<-ЅCi#ЇЇ€а4€K@level2type<-ЅCi#ча4€K@level2name<-Д]($ча4€O@table_server<-Д]($ча4€K@table_name<-Д]($ча4€O@table_schema<-Д]($ча4€Q@table_catalog<-Д]($ча4€K@index_name<-Д]($hh€I@is_unique<-оg]$ча4€G@loginame<-оg]$ча4€C@passwd<-оg]$ча4€A@defdb<-оg]$ча4€M@deflanguage<-оg]$ЅЅ€=@sid<-оg]$ЇЇа4€K@encryptopt<-Уwч$ччўа4€;@p1<-э%ча4€O@table_server<-э%ча4€K@pktab_name<-э%ча4€O@pktab_schema<-э%ча4€Q@pktab_catalog<-э%ча4€K@fktab_name<-э%ча4€O@fktab_schema<-э%ча4€Q@fktab_catalog<-ŒQ%ча4€=@old<-ŒQ%ча4€=@new<-ŒQ%ча4€G@loginame<-&І&ча4€O@table_server<-&І&ча4€K@table_name<-&І&ча4€O@table_schema<-&І&ча4€Q@table_catalog<-PАE&ча4€G@loginame<-‰д9'ча4€G@loginame<-Тј-(ча4€G@loginame<-бэ(88 €C@handle<-бэ(ча4€G@procname<-бэ(88 €I@scrollopt<-бэ(88 €A@ccopt<-бэ(88 €?@rows<-бэ(чч а4€;@p1<-бэ(чч а4€;@p2<-бэ(чч а4€;@p3<-бэ( чч а4€;@p4<-бэ( чч а4€;@p5<-бэ( чч а4€;@p6<-бэ( 88 €;@p7<-бэ( 88 €E@ODBCVer<-бэ(88 €C@handle<-бэ(88 €I@scrollopt<-бэ(88 €A@ccopt<-бэ(88 €?@rows<-бэ(чч а4€;@p1<-бэ(чч а4€;@p2<-бэ(чч а4€;@p3<-бэ(чч а4€;@p4<-бэ(88 €C@handle<-бэ(ча4€G@procname<-бэ(88 €I@scrollopt<-бэ(88 €A@ccopt<-бэ(88 €?@rows<-бэ(чч а4€;@p1<-бэ(чч а4€;@p2<-бэ(чч а4€;@p3<-бэ( чч а4€;@p4<-бэ( чч а4€;@p5<-бэ( 88 €E@ODBCVer')), convert(tinyint, ServerProperty('sqlcharset'))) -- make sure there's one and only one row selected for each column hathe keys are. declare @i int, @thiskey nvarchar(131) -- 128+3 select @keys = index_col(@objname, @indid, 1), @i = 2 if (indexkey_property(@objid, @indid, 1, 'isdescending') = 1) select @keys = @keys + '(-)' select @thiskey = index_col(@objname, @indid, @i) if ((@thiskey is not null) and (indexkey_property(@objid, @indid, @i, 'isdescending') = 1)) select @thiskey = @thiskey + '(-)' while (@thiskey is not null ) begin select @keys = @keys + ', ' + @thiskey, @i = @i + 1 select @thiskey = index_col(@objname, @indid, @i) if ((@thiskey is not null) and (indexkey_property(@objid, @indid, @i, 'isdescending') = 1)) select @thiskey = @thiskey + '(-)' end select @groupname = null select @groupname = groupname from sysfilegroups where groupid = @groupid -- INSERT ROW FOR INDEX insert into #spindtab values (@indname, @status, @groupname, @keys) -- Next index fetch ms_crs_ind into @indid, @groupid, @indname, @status end deallocate ms_crs_ind -- SET UP SOME CONSTANT VALUES FOR OUTPUT QUERY declare @empty varchar(1) select @empty = '' declare @des1 varchar(35), -- 35 matches spt_values @des2 varchar(35), @des4 varchar(35), @des32 varchar(35), @des64 varchar(35), @des2048 varchar(35), @des4096 varchar(35), @des8388608 varchar(35), @des16777216 varchar(35) select @des1 = name from master.dbo.spt_values where type = 'I' and number = 1 select @des2 = name from master.dbo.spt_values where type = 'I' and number = 2 select @des4 = name from master.dbo.spt_values where type = 'I' and number = 4 select @des32 = name from master.dbo.spt_values where type = 'I' and number = 32 select @des64 = name from master.dbo.spt_values where type = 'I' and number = 64 select @des2048 = name from master.dbo.spt_values where type = 'I' and number = 2048 select @des4096 = name from master.dbo.spt_values where type = 'I' and number = 4096 select @des8388608 = name from master.dbo.spt_values where type = 'I' and number = 8388608 select @des16777216 = name from master.dbo.spt_val0МTЎtues where type = 'I' and number = 16777216 -- DISPLAY THE RESULTS select 'index_name' = index_name, 'index_description' = convert(varchar(210), --bits 16 off, 1, 2, 16777216 on, located on group case when (stats & 16)<>0 then 'clustered' else 'nonclustered' end + case when (stats & 1)<>0 then ', '+@des1 else @empty end + case when (stats & 2)<>0 then ', '+@des2 else @empty end + case when (stats & 4)<>0 then ', '+@des4 else @empty end + case when (stats & 64)<>0 then ', '+@des64 else case when (stats & 32)<>0 then ', '+@des32 else @empty end end + case when (stats & 2048)<>0 then ', '+@des2048 else @empty end + case when (stats & 4096)<>0 then ', '+@des4096 else @empty end + case when (stats & 8388608)<>0 then ', '+@des8388608 else @empty end + case when (stats & 16777216)<>0 then ', '+@des16777216 else @empty end + ' located on ' + groupname), 'index_keys' = index_keys from #spindtab order by index_name return (0) -- sp_helpindex б–[ хЊk*сšWсІk,ы Ђ _  п Є i . ѓ И } > § Д m * у œ U  Еjд—Z КoЯ„5њЏr%фЁZЦu&лŒAіЋ`U-Sl)(TГ d$l+QЮ<-јJbчч(а4€?@size<-јJbчч(а4€E@maxsize<-јJbчч(а4€K@filegrowth<-нZьЇЇџа4€;@p1<-нZь88 €;@p2<-нZь88 €;@p3<-нZь88 €;@p4<-1oVчча4€E@objname<-1oVЇЇа4€M@updateusage<-j“J##а4€;@p1<-y­ чч а4€S@procedure_name<-y­ чча4€U@procedure_owner<-y­ ча4€]@procedure_qualifier<-y­ чча4€M@column_name<-y­ 88 €E@ODBCVer<-ЃЗ>чча4€E@objname<-ЃЗ>ЇЇа4€K@futureonly<-мл2чча4€E@objname<-мл2ЇЇа4€K@futureonly<-'ча4€G@loginame<-$цча4€K@table_name<-$цча4€M@table_owner<-$цча4€U@table_qualifier<-$цча4€K@index_name<-$цЏЏа4€I@is_unique<-$цЏЏа4€G@accuracy<-N$ча4€G@loginame<-‡HЇЇа4€E@autofix<-Рlча4€C@dbname<-Рlчча4€E@autofix<-Я†Тчч а4€E@sp_name<-Я†Тчча4€G@sp_owner<-Я†Тча4€O@sp_qualifier<-2Еычча4€E@tblname<-2ЕыЇЇ а4€A@flagc<-2Еыча4€E@indname<-kйпЏЏа4€G@resample<-zѓžчча4€K@table_name<-zѓžчча4€M@table_owner<-zѓžча4€U@table_qualifier<-Є§гЏЏ а4€I@indexonly<-Є§гЏЏ а4€G@fullscan<-Є§гЏЏ а4€M@norecompute<-ь;‡чча4€K@table_name<-ь;‡чча4€M@table_owner<-ь;‡ча4€U@table_qualifier<-ь;‡ЇЇdа4€K@table_type<-FМчча4€E@tabname<-FМЏЏа4€M@triggertype<-OjАча4€C@dbname<-OjАча4€E@tabname<-OjА88 €A@indid<-^„oча4€M@server_name<-ˆŽЄчч а4€M@triggername<-ˆŽЄЇЇ а4€A@order<-ˆŽЄЇЇ а4€G@stmttype<-—Јcча4€O@table_server<-—Јcча4€K@table_name<-—Јcча4€O@table_schema<-—Јcча4€Q@table_catalog<-—Јcча4€K@table_type<-њжŒ ча4€?@name<-њжŒ ЇЇ€а4€K@level0type<-њжŒ ча4€K@level0name<-њжŒ ЇЇ€а4€K@level1type<-њжŒ ча4€K@level1name<-њжŒ ЇЇ€а4€K@level2type<-њжŒ ча4€K@level2name<-њжŒ 88 €;@id<-њжŒ  44€E@smallid<-њжŒ  00€?@type<-њжŒ  88 €C@exists<-њжŒ  чч а4€G@fullname<-њжŒ  чч а4€E@objname<- ёK!ча4€O@table_server<- ёK!ча4€K@table_name<- ёK!ча4€O@table_schema<- ёK!ча4€Q@table_catalog<- ёK!ча4€M@column_name<- ёK!88 €E@ODBCVer<-3ћ€!ча4€?@name<-3ћ€!bbP€A@value<-3ћ€!ЇЇ€а4€K@level0type<-3ћ€!ча4€K@level0name<-3ћ€!ЇЇ€а4€K@level1type<-3ћ€!ча4€K@level1name<-3ћ€!ЇЇ€а4€K@level2type<-3ћ€!ча4€K@level2name<-B@"ча4€O@table_server<-B@"ча4€K@table_name<-B@"ча4€O@table_schema<-B@"ча4€Q@table_catalog<-lu"ча4€?@name<-lu"bbP€A@value<-lu"ЇЇ€а4€K@level0type<-lu"ча4€K@level0name<-lu"ЇЇ€а4€K@level1type<-lu"ча4€K@level1name<-lu"ЇЇ€а4€K@level2type<-lu"ча4€K@level2name<-{94#ча4€O@table_server<-{94#ча4€K@table_name<-{94#ча4€O@table_schema<-{94#ча4€Q@table_catalog<-{94#ча4€M@column_name<-ЅCi#ча4€?@name<-ЅCi#ЇЇ€а4€K@level0type<-ЅCi#ча4€K@level0nameн’SЕfЬ6ы U ЩŠ9ъŸPКo$йŽMЩ|+м‘B§Жs4яДiгˆ=ђГhШ}.чІY Ы†Cі Б f  Ф y , х œ G њ Џ h # т  N  Т}:ѕЎgг~1цŸTФ:э;ш­`рЅj/фŸ`\-Tn)(ќUВˆA$SkГ<Є<-L˜№ЇЇа4€I@separator<-L˜№ЇЇ„а4€G@set_user<-L˜№ЇЇ„а4€A@dbuse<-vЂ%==€Clastrun<-vЂ%88 €Ecpu_busy<-vЂ%88 €Cio_busy<-vЂ%88 €=idle<-vЂ%88 €Opack_received<-vЂ%88 €Gpack_sent<-vЂ%88 €Kconnections<-vЂ%88 €Kpack_errors<-vЂ% 88 €Itotal_read<-vЂ% 88 €Ktotal_write<-vЂ% 88 €Mtotal_errors<-…Мфчча4€E@objname<-ЏЦччFа4F€=name<-ЏЦ88 €Anumber<-ЏЦяяа4€=type<-ЏЦ88 €;low<-ЏЦ88 €=high<-ЏЦ88 шъ €Astatus<-Орича4€O@remoteserver<-Орича4€G@loginame<-Орича4€K@remotename<-ОриЇЇ#а4€E@optname<-ОриЇЇ а4€G@optvalue<-Эњ—ча4€O@pktable_name<-Эњ—ча4€Q@pktable_owner<-Эњ—ча4€Y@pktable_qualifier<-Эњ—ча4€O@fktable_name<-Эњ—ча4€Q@fktable_owner<-Эњ—ча4€Y@fktable_qualifier<-їЭЅЅ€O@TextPtrValue0-!ЇЇа4€Mxserver_name0-!==€Gxdttm_ins0-!==€Yxdttm_last_ins_upd0-!44€Qxfallback_dbid0-!ЇЇа4€=name0-!44€=dbid0-!44€Astatus0-!44€Cversion<-0)Счча4€W@TableNamePattern<-0)СЇЇ#а4€K@OptionName<-0)СЇЇ а4€M@OptionValue0-Z3іЇЇа4€Mxserver_name0-Z3і==€Gxdttm_ins0-Z3і==€Yxdttm_last_ins_upd0-Z3і88 €Oxfallback_low0-Z3іЏЏа4€Sxfallback_drive0-Z3і88 €;low0-Z3і88 €=high0-Z3і44€Astatus0-Z3і ЇЇа4€=name0-Z3і ЇЇа4€Cphyname<-9K88 €;@p1<-9KЇЇџа4€;@p2<-9KЇЇџа4€;@p3<-9KЇЇџа4€;@p4<-iMЕчча4€G@ProcName<-iMЕЇЇ#а4€K@OptionName<-iMЕЇЇ а4€M@OptionValue0-“WъЇЇа4€Mxserver_name0-“Wъ==€Gxdttm_ins0-“Wъ==€Yxdttm_last_ins_upd0-“Wъ88 €Uxfallback_vstart0-“Wъ44€=dbid0-“Wъ88 €Asegmap0-“Wъ88 €Alstart0-“Wъ88 €Asizepg0-“Wъ 88 €Avstart<-xgt ча4€K@table_name<-xgt ча4€M@table_owner<-xgt ча4€U@table_qualifier<-ЂqЉ ча4€C@dbname<-ЂqЉ ча4€E@newname<-Ь{о чч а4€I@functname<-Б‹h 88 €O@attribute_id<-л• ча4€G@filename<- в чч а4€I@functname<- в ЇЇџа4€E@dllname<-К‘ чча4€E@objname<-К‘ ча4€E@newname<-К‘ ЇЇ а4€E@objtype<->ФЦ ча4€G@funcname<-Mо… ча4€C@DBName<-†z ча4€C@dbName<-†z чча4€G@fileType<-†z чча4€I@filegroup<-†z чча4€?@name<-†z чча4€G@filename<-†z чч(а4€?@size<-†z чч(а4€E@maxsize<-†z чч(а4€K@filegrowth<-•9ча4€K@table_name<-•9ча4€M@table_owner<-•9ча4€U@table_qualifier<-•9ЏЏа4€G@col_type<-•9ЏЏа4€A@scope<-•9ЏЏа4€G@nullable<-•988 €E@ODBCVer<-П&nча4€C@dbName<-П&nчча4€I@filegroup<-П&nчча4€?@name<-П&nчча4€G@filename<-П&nчч(а4€?@size<-П&nчч(а4€E@maxsize<-П&nчч(а4€K@filegrowth<-јJbча4€C@dbName<-јJbчча4€?@name<-јJbчча4€G@filename if @catvalue = 2 begin seЕv3шЃdо•R Ц…>щœQС‚;ќГl)цŸZа‹BћЌcл†9ю­l+ъ­XџИkгŒQл ] пЂgХ l % и ‹ @ щ І e ( ы š A њ ­ ^  Дe Лl%р•NџОF Ш‹FљЎeЯˆ9ќЙt1№Љ`_-`e)WпV‘)0-288 €9id0-288 €?schid0-2ча4€=name0-200€?xtype0-244€Alength0-200€=prec0-200€?scale0-288 €Kcollationid0-2 88 €Astatus0-2 ==€Ccreated0-2 ==€Emodified0-2 88 €=dflt0-2 88 €;chk0-300€?class0-388 €Cidmajor0-388 €?subid0-3ч€=name0-300€?xtype0-388 €?utype0-344€Alength0-300€=prec0-3 00€?scale0-3 88 €Kcollationid0-3 88 €Astatus0-3 88 €Cintprop0-688 €9id0-688 €?indid0-6ча4€=name0-688 €Astatus0-688 €Cintprop0-600€Efillfact0-600€=type0-600€Etinyprop0-6 88 €Gdataspace0-6 88 €?lobds0-6 €Arowset0-788 €Cidmajor0-788 €Cidminor0-788 €?subid0-788 €Astatus0-788 €Cintprop0-700€Gtinyprop10-700€Gtinyprop20-888 €9id0-8ча4€=name0-800€Eprotocol0-800€=type0-844€?bstat0-8€Eaffinity0-844€?pstat0-844€?tstat0-8 88 €Ctypeint0-8 88 €?port10-8 88 €?port20-8 чч€=site0-8 чч€Adfltns0-8чча4€Ewsdlproc0-8ча4€Adfltdb0-8чча4€Gauthrealm0-8чча4€Adfltdm0-888 €Cmaxconn0-800€Aencalg0-800€Eauthtype0-988 €9id0-9чч€Cnmspace0-9чч€€€?alias0-9чча4€Cobjname0-988 €Astatus0-:00€?class0-:88 €9id0-:88 €=nsid0-:ч€=name0-:88 €Astatus0-:ЏЏ€=type0-:88 €Cintprop0-:==€Ccreated0-: ==€Emodified0-;00€?class0-;88 €9id0-;88 €?subid0-;88 €Cgrantee0-;88 €Oaudit_spec_id0-;ЏЏ€=type0-;ЏЏ€?state0-<00€Evalclass0-<88 €?objid0-<88 €Esubobjid0-<88 €Avalnum0-<bbPP€?value0-<ЅЅџџ@€Eimageval0-@00€?class0-@88 €9id0-@ча4€=name0-@88 €Astatus0-@ЏЏ€=type0-@88 €Cintprop0-@==€Ccreated0-@==€Emodified0-A00€?class0-A88 €?objid0-A88 €Cindexid -- VALIDATE GIVEN NAME if mot exists (select * from sysusers where name = @rolename and uid >= 16384 and uid <= 16393) begin raiserror(15412, -1, -1, @rolename) return (1) end -- RESULT SET FOR SINGLE FIXED-ROLE select DISTINCT 'DbFixedRole' = usr.name, 'Permission' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.name = @rolename and usr.uid >= 16384 and usr.uid <= 16393 and spv.type = 'DBR' and ((usr.uid = 16384 and spv.number >= 16384 and spv.number!< 16392) or (usr.uid <> 16384 and usr.uid = spv.number)) and spv.low > 0 order by usr.name, spv.name end else begin -- RESULT SET FOR ALL FIXED-ROLES select DISTINCT 'DbFixedRole' = usr.name, 'Permission' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.uid >= 16384 and usr.uid <= 16393 and spv.type = 'DBR' and ((usr.uid = 16384 and spv.number >= 16384 and spv.number < 16392) or (usr.uid <> 16384 and usr.uid = spv.number)) and spv.mow > 0 order by usr.name, spv.name end return (0) -- sp_dbfixedrolepermission œ]й–Sе˜_ лœ[з’SЧ„E ЭˆEХ„G б’QЯŒSЭŠIС|;ў П € = ў П z ; ў Й | C ќ Е r 1 ђ Џ l + ьЅ`#о›ZоЅb!ж—Zк›^мb%р\в•Tи™`Z-_D)– тW‘=@D00-88 €9id0-88 €?indid0-88 €Astatus0-ЏЏ€Acrtype0-==€Ccrstart0-==€?crend0-€Acrrows0-88 €Ecrerrors0- ­­€Ecrschver0- ­­€Ecrtsnext0- 00€Ksensitivity0- 00€WbXVTDocidUseBaseT0- 88 €Gbatchsize0-€Gnextdocid0-88 €=fgid0-88 €9id0-ча4€=name0-ЏЏ€=type0-ЅЅUU€;sid0-ЅЅ€Epassword0-ча4€Cdfltsch0-88 Astatus0-==€Ccreated0- ==€Emodified0-88 €9id0-ча4€=name0-ЅЅUU€;sid0-88 €Astatus0-88 €Cstatus20-88 €Ecategory0-==€Acrdate0-==€Emodified0- $$€Ksvcbrkrguid0- 88 €?scope0- 00€Gcmptlevel0-00€?class0-88 €9id0-88 €?subid0-88 €Cgrantee0-88 €Cgrantor0-ЏЏ€=type0-ЏЏ€?state0-"88 €9id0-"ча4€=name0-"88 €=nsid0-"00€Cnsclass0-"88 €Astatus0-"ЏЏ€=type0-"88 €;pid0-"00€Apclass0-" 88 €Cintprop0-" ==€Ccreated0-" ==€Emodified0-'ча4€=name0-'ча4€=psrv0-'ча4€=ssrv0-'00€Astatus0-'88 €Mrolesequence0-'00€Asafety0-'88 €Qsafetysequence0-'$$€Ologshippingid0-' $$€Efamilyid0-' 88 €Qstatussequence0-' 88 €Switnesssequence0-)88 €9id0-)44€Anumber0-)88 €?colid0-)ча4€=name update master.dbo.syseatabases set cmptlevel = @input_cmptlevel where dbid = @dbid /* ** CHECKPOINT the database that was changed. */ select @exec_stmt = 'use ' + quotename(@dbname, '[') + ' checkpoint' exec(@exec_stmt ) /* ** If checkpoint unsuccessful, restore the old compatibility level, ** otherwise update output clevel and flush all the SPs of this database ** from the cache */ if (@@error <> 0) begin update master.dbo.sysdatabases set cmptlevel = @orig_cmptlevel where dbid = @dbid end else begin dbcc flushprocindb(@dbid) select @new_cmptlevel = @input_cmptlevel end return (0) -- sp_dbcmptlevel 0O6Lc /* Procedure for 8.0 server */ create procedure sp_tables_rowset ( @table_name sysname, @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(uid), TABLE_NAME = name, TABLE_TYPE = convert(nvarchar(30), case type when 'U' tien case when ObjectProperty(id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int,null), DATE_CREATED = crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects where name = @table_name and type in ('U','V','S') and permissions(id) <> 0 ) as o where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 y0O6Lcreate procedure sp_tables_rowset;2 ( @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(uid), TABLE_NAME = name, TABLE_TYPE = convert(nvarciar(30), case type when 'U' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int,null), DATE_CREATED = crdate, DATE_MODIFIED = converu(datetime,null) from sysobjects where type in ('U','V','S') and permissions(id) <> 0 ) as o where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 leI0O6Lcreate procedure sp_tables_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null, @table_type sysname = null ) as select TABLE_CATALOG, TABLE_QCHEMA, TABLE_NAME, TABLE_TYPE, TABLE_GUID, DESCRIPTION -- TABLE_PROPID, -- DATE_CREATED, -- DATE_MODIFIED from master.dbo.SYSREMOTE_TABLES < @table_server, @table_catalog, @table_schema, @table_name, @table_type > order by 4,1,2,3 Ѕf%ь™HДc"е”Wн ˜ U  б – Y  е ˜ [ " у І c с Ј i " у˜SЭŠIб˜SЯŒG Я’YеŽ7ьЇbмZи™`d-[!) Г XГX `$Ц§yИ<-ХЪэAча4€G@rolename<-ХЪэAча4€K@membername<-яд"B88 €G@newvalue<-ўюсBча4€E@grpname<-ўюсBча4€G@username<-(љC88 €G@newvalue<- ЁCча4€S@procedure_name<- ЁC88 €O@group_number<- ЁCча4€W@procedure_schema<- ЁCча4€S@parameter_name<- ЁCча4€W@procedure_schema<- ЁCча4€S@parameter_name<-7жCЇЇ а4€C@Action<-7жCча4€U@UserNamePattern<-7жCча4€I@LoginName<-7жCча4€G@Password0-ЊкwB==€Clastrun0-ЊкwB88 €Ecpu_busy0-ЊкwB88 €Cio_busy0-ЊкwB88 €=idle0-ЊкwB88 €Opack_received0-ЊкwB88 €Gpack_sent0-ЊкwB88 €Kconnections0-ЊкwB88 €Kpack_errors0-ЊкwB 88 €Itotal_read0-ЊкwB 88 €Ktotal_write0-ЊкwB 88 €Mtotal_errors0-уўkCччFа4F€=name0-уўkC88 €Anumber0-уўkCяяа4€=type0-уўkC88 €;low0-уўkC88 €=high0-уўkC88 #`D€Astatus!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!уšEЏXЎ_ r 5 њН|?Х~9ђЇ^Ш2ѕВm*ђЇ`h-Z9)щЅY‘S HU0-88 €Astatus0-88 €=fgid0-88 €Efgfragid0-88 €Edbfragid0-88 €Aphfgid0-88 €Astatus0-88 €Cbrickid0-88 €=dbid0-88 €?pruid0-88 €Afragid0-88 €Astatus0-88 €Cbrickid0-88 €=dbid0-88 €?pruid0-88 €Afileid0-88 €?grpid0-88 €Astatus0-00€Efiletype0-00€Gfilestate0- 88 €=size0- 88 €Cmaxsize0- 88 €Agrowth0- ча4€?lname0- чча4€?pname0-­­  €Gcreatelsn0-­­  €Cdroplsn0-$$€Efileguid0-88 €Qinternalstatus0-­­  €Kreadonlylsn0-­­  €Mreadwritelsn0-­­  €Sreadonlybaselsn0-­­  €Qfirstupdatelsn0-­­  €Olastupdatelsn0-­­  €Gbackuplsn0-­­  €Kdiffbaselsn0-$$€Mdiffbaseguid0-==€Mdiffbasetime0-­­  €Qdiffbaseseclsn0-­­  €Mredostartlsn0-­­  €Oredotargetlsn0-$$€Eforkguid0-­­  €Cforklsn0- €Aforkuc0-!$$€Wredostartforkguid0-88 €Edbfragid0-88 €Aphfgid0-88 €=fgid0-ЏЏ€=type0-$$€Afgguid0-88 €Algfgid0-88 €Astatus0-ча4€=name0-88 €Edbfragid0-88 €Afileid0-88 €?grpid0-88 €Astatus0-00€Efiletype!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`рŸZм › Z  р Ÿ Z  Т  : ы ž M Г h ! в.с–EНv7јЗt7№Ћj+ъЋn+ъЉj-ъЉh#оЁ`Y-W)ЪZ‘9EUU0-00€Gfilestate0-88 €=size0-88 €Cmaxsize0- 88 €Agrowth0- ча4€?lname0- чча4€?pname0- ­­  €Gcreatelsn0- ­­  €Cdroplsn0-$$€Efileguid0-88 €Qinternalstatus0-­­  €Kreadonlylsn0-­­  €Mreadwritelsn0-­­  €Sreadonlybaselsn0-­­  €Qfirstupdatelsn0-­­  €Olastupdatelsn0-­­  €Gbackuplsn0-­­  €Kdiffbaselsn0-$$€Mdiffbaseguid0-==€Mdiffbasetime0-­­  €Qdiffbaseseclsn0-­­  €Mredostartlsn0-­­  €Oredotargetlsn0-$$€Eforkguid0-­­  €Cforklsn0-€Aforkvc0-$$€Wredostartforkguid!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!s2яЊ[Нp#и‘BёžQЕp-цЇh'фЇ`X-c;) [З8X$5ЊМ \<-a D88 €G@newvalue<-p7ЪDча4€G@loginame<-p7ЪDЇЇа4€=@map<-šAџD88 €G@newvalue<-Љ[ОEЇЇа4€E@autofix<-гeѓE88 €G@newvalue<-Иu}Fча4€S@procedure_name<-Иu}F88 €O@group_number<-Иu}Fча4€W@procedure_schema<-Иu}Fча4€W@procedure_schema<-тВFчч а4€E@objname<-тВFча4€G@newowner<- ŠчF88 €G@newvalue<-ЄІGча4€M@srvrolename<-EЎлG88 €G@newvalue<-*ОeHча4€M@schema_name<-*ОeHча4€O@schema_owner<-TШšHча4€M@srvrolename<-ьŽIча4€M@srvrolename<-œNJча4€K@table_name<-œNJча4€O@table_schema<-œNJча4€O@table_schema<-ЦƒJча4€G@rolename<-№ИJча4€C@dbname<-№ИJЇЇ#а4€E@optname<-№ИJЇЇ а4€G@optvalue<-џ4wKча4€G@rolename<-)?ЌKча4€C@dbname<-)?ЌK00€Q@new_cmptlevel<-O6Lча4€K@table_name<-O6Lча4€O@table_schema<-O6Lччўа4€K@table_type<-O6Lча4€O@table_schema<-O6Lччўа4€K@table_type<-O6Lча4€O@table_server<-O6Lча4€Q@table_catalog<-O6Lча4€K@table_name<-O6Lча4€O@table_schema<-O6Lча4€K@table_type<-8YkLча4€G@rolename<-bc LЇЇа4€W@pFallbackSvrName<-q}_Mча4€G@rolename<-›‡”Mча4€?@name<-›‡”Mhh€M@raise_error<-ЊЁSNча4€C@ntname<-дЋˆNча4€?@name<-ЙЛOча4€K@table_name<-ЙЛOча4€O@table_schema<-ЙЛOччўа4€K@table_type<-ЙЛOча4€O@table_schema<-ЙЛOччўа4€K@table_type<-уХGOча4€G@acctname<-уХGOЇЇ а4€C@option0-UGTEча4€Coptname0-UGTEhh€?value0-UGTE88 €Omajor_version0-UGTE88 €Ominor_version0-UGTE88 €Erevision0-UGTE88 €Uinstall_failures!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!‚;№ЁVМ } : э Ў g  Щ ~ / ф “ D љ Њ _  Хt1ъЃ^д…6ыžQЕn!к“Nї QўЗr*х–GХ+юЇ`]-U)Џ\ВИ D$ ЫСаќ0-a00€?class0-a88 €Cidmajor0-a88 €?subid0-aч€=name0-a88 €Astatus0-a88 €Cintprop0-b00€Edepclass0-b88 €?depid0-b00€Iindepclass0-bча4€Gindepname0-bча4€Kindepschema0-bча4€Cindepdb0-bча4€Kindepserver0-b88 €Anumber0-b 88 €Astatus<-h ча4€O@remoteserver<-h ча4€K@remotename<-’Uчч а4€E@objname<-Ы5I88 €G@pSeqMode<-кOЇЇа4€K@in_command<-Z=ЇЇџа4€C@dbname<-щiЧ88 €I@data_type<-щiЧ00€E@ODBCVer<-L˜№ЇЇџа4€E@subject<-L˜№ЇЇа4€G@filetype!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!и“NТw0ы QЯ„AіЏf'тŸ^!тŸ`^-\Z)F]‘8x@0-J00€?class0-J88 €?depid0-J88 €Edepsubid0-J88 €Cindepid0-J88 €Iindepsubid0-J88 €Astatus0-K00€?class0-K88 €?depid0-K88 €Edepsubid0-K88 €Cindepid0-K88 €Iindepsubid0-K88 €Astatus0-N00€?class0-N88 €9id0-N88 €?subid0-N$$€=guid0-N88 €Astatus0-PЅЅUU€=lsid0-Pча4€?iname0-Pчча4€Gipipename0-P88 €;pid0-P88 €Astatus0-P==€Acrdate0-P==€Amodate0-Pчча4€Gsysdbpath0-R88 €Ccprelid0-R88 €Afragid0-R88 €Gfragobjid0-R­­€9ts0-R88 €Astatus0-R€Edatasize0-R€Citemcnt0-R€Arowcnt0-U88 €Istoplistid0-Uчч€€€Estopword0-U88 €=lcid0-U00€Astatus0-Z88 €;qid0-Z88 €=hash0-Z88 €;nid0-Zчч@@€=name0-[88 €9id0-[88 €?xsdid0-[88 €Auriord0-[00€=qual0-[88 €Anameid0-[ЏЏ€Esymspace0-[88 €Cnmscope0-[ЏЏ€=kind0-[ ЏЏ€?deriv0-[ 88 €Astatus0-[ ЏЏ€=enum0-[ чч@@€Adefval0-\88 €Acompid0-\88 €;ord0-\ЏЏ€=kind0-\44€Astatus0-\чч@@€=dflt0-]88 €Gplacingid0-]88 €Cordinal0-]88 €Eplacedid0-]88 €Astatus0-]88 €Eminoccur0-]88 €Emaxoccur0-]чч@@€Adefval0-^00€?class0-^88 €9id0-^ЅЅ  €Ithumbprint0-^ЏЏ€=type0-^ЅЅџџ@€Acrypto0-^88 €Astatus0-_88 €9id0-_ча4€=name0-_ЅЅ  €Ithumbprint0-_88 €Gbitlength0-_ЏЏ€Galgorithm0-_==€Emodified0-_ЅЅаа€=pkey0-_ЏЏ€Eencrtype0-_ ЅЅџџ@€?pukey0-`88 €9id0-`ча4€=name0-`00€Gscopetype0-`88 €Cscopeid0-`ЅЅ€=hash0-`88 €Astatus0-`==€Ccreated0-`==€Emodified0-` ччџџа4@€Gbatchtext0-` ччџџа4@€Sparamorhinttext!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ѓЌg$уІcпІg"х YЩŒSб”Kг’MЧ‚?јЛz=С € C  У † C ў Н € ? Ч Š O  з – Y  ЫŠGСˆAНv5єГx1ђЕt7јП€?іГn/№Џf#оŸ``-]$)А ^‘8ŸATU0-G$$€9id0-G88 €Iservice_id0-G88 €Astatus0-G88 €Erefcount0-H$$€Ahandle0-H$$€Adiagid0-H00€Ginitiator0-H€Csendseq0-H­­€Esendxact0-I$$€Adiagid0-I00€Ginitiator0-I$$€Ahandle0-I€Arcvseq0-I88 €Crcvfrag0-I88 €Astatus0-IЏЏ€?state0-I==€Elifetime0-I 88 €Econtract0-I 88 €?svcid0-I $$€Gconvgroup0-I €Asysseq0-I €Genddlgseq0-I€Kfirstoorder0-I€Ilastoorder0-I88 €Mlastoorderfr0-I==€Edlgtimer0-I==€Gdlgopened0-I88 €Cprincid0-IЅЅ88€Goutseskey0-I$$€Koutseskeyid0-I88 €Ifarprincid0-IЅЅ88€Einseskey0-I$$€Iinseskeyid0-Iчч€Afarsvc0-Iчч€Kfarbrkrinst0-I00€Epriority!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!У x 7 юЉ`Ю‹DџВiз–OЫ†GУ‚AњЙt1ъЉh#т™`W-VG)A 1_‘:T0-)00€?xtype0-)88 €?utype0-)44€Alength0-)00€=prec0-) 00€?scale0-) 88 €Kcollationid0-) 88 €Astatus0-) 44€Emaxinrow0-) 88 €?xmlns0-)88 €=dflt0-)88 €;chk0-)ЅЅ@@€Aidtval0-*88 €9id0-*ча4€=name0-*ЅЅUU€;sid0-*88 €Astatus0-*ЏЏ€=type0-*==€Acrdate0-*==€Amodate0-*ча4€Adbname0-* ча4€=lang0-* ЅЅ€Cpwdhash0-+88 €9id0-+ча4€=name0-+ча4€Cproduct0-+ча4€Eprovider0-+88 €Astatus0-+==€Amodate0-+ча4€Ccatalog0-+88 €;cid0-+ 88 €Qconnecttimeout0-+ 88 €Mquerytimeout0-,00€?class0-,88 €9id0-,ча4€=name0-,88 €=nsid0-,88 €Astatus0-,88 €Cintprop0-,==€Ccreated0-,==€Emodified0--88 €9id0--44€Gmsglangid0--44€Eseverity0--44€Astatus0--чча4€=text0-.88 €9id0-.ча4€=name0-.ЅЅtt€Aissuer0-.ЅЅ€=snum0-.ЅЅ  €Ithumbprint0-.ЅЅаа€=pkey0-.ЏЏ€Eencrtype0-.ЅЅџџ@€=cert0-. 88 €Astatus0-. ==€Qlastpkeybackup0-/88 €?srvid0-/ча4€=name0-/88 €?lgnid0-/88 €Astatus0-/==€Amodate0-088 €?srvid0-088 €?lgnid0-0ча4€=name0-088 €Astatus0-0==€Amodate0-0ЅЅ@@€Cpwdhash0-100€?class0-188 €9id0-188 €?subid0-1ча4€=name0-1bbPP€?value!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ђЕv=ўЛz9ќН~=ќН€A№ Џ r - № Ї j ) ь Г v 5 № Љ p + ш Ѕ d ' ъБr%д™VдLж“Vд“Vкd#шЋl'ц›\оŸ`V-^#)=} `‘&UU0-A88 €Growsetnum0-A€Erowsetid0-A88 €Astatus0-C88 €9id0-Cча4€=name0-C88 €=scid0-Cчч€Aremsvc0-C88 €Astatus0-D$$€?dlgid0-Dhh€Ifinitiator0-Dчч€?tosvc0-Dчч€Itobrkrinst0-Dчч€Cfromsvc0-Dчч€Mfrombrkrinst0-Dчч€Esvccontr0-D€Gmsgseqnum0-D чч€Cmsgtype0-D 88 €Eunackmfn0-D 88 €Astatus0-D ==€Cenqtime0-D ==€Ersndtime0-D88 €Adlgerr0-D$$€?msgid0-D44€Ihdrpartlen0-D44€Ghdrseclen0-D00€Amsgenc0-D88 €Imsgbodylen0-DЅЅџџ@€Cmsgbody0-E88 €9id0-Eча4€=name0-Eчч€Aremsvc0-Eчч€Ebrkrinst0-Eчч€=addr0-Eчч€Cmiraddr0-E==€Elifetime!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!8 ѕИs2ѕМy0яЈ_ пšWбŽGЕr)ъЁb!рЃf-ьЇ`b-c)еeaГ` a$c`њЅ<-vfaча4€a@fulltext_catalog_name<-vfaчч а4€K@table_name<-H€›aча4€G@typename<--%bчч@а4€C@object<-WšZbчч а4€K@table_name<-WšZbча4€M@column_name<-Єbча4€O@remoteserver<-Єbча4€G@loginame<-Єbча4€K@remotename<-fДcча4€C@dbname<-ОNc88 €Q@cursor_return<-ОNcчч а4€K@table_name<-ОNcча4€M@column_name<-КШƒcчча4€E@objname<-КШƒcЇЇа4€A@nomsg<-ЩтBd88 €E@traceid<-ЩтBd88 €E@records<-7e88 €Q@cursor_return<-7eчч<а4€Q@cursor_source<-7eчча4€U@cursor_identity<-;++f88 €Q@cursor_return<-;++fчч<а4€Q@cursor_source<-;++fчча4€U@cursor_identity<-tOg88 €Q@cursor_return<-tOgчч<а4€Q@cursor_source<-tOgчча4€U@cursor_identity<-­sh88 €Q@cursor_return<-­sh88 €O@cursor_scope<--Wnча4€C@dbname<-f{ѕnча4€E@devname<-ŸŸщoча4€G@filename<-иУнpча4€Q@filegroupname<-шбqча4€E@grpname<-ƒ0Кsча4€W@LoginNamePattern<-­:яsча4€=@tab<-’Jyt44€Guser_type<-’JytЇЇ а4 €OCREATE_PARAMS<-’Jyt44€QAUTO_INCREMENT<-’Jytча4€Etypename<-МTЎtчча4€E@objname<-Ыnmu00€Ess_dtype<-Ыnmu88 €Afixlen<-Ыnmu00€CODBCVer<-Ыnmuча4€GTYPE_NAME<-Ыnmu44€GDATA_TYPE<-Ыnmu88 €Qdata_precision<-Ыnmu44€Onumeric_scale<-Ыnmu44€?RADIX<-Ыnmu 88 €Alength<-Ыnmu ЇЇ а4 €QLITERAL_PREFIX<-Ыnmu ЇЇ а4 €QLITERAL_SUFFIX<-Ыnmu ЇЇ а4 €OCREATE_PARAMS<-Ыnmu 44€ENULLABLE<-Ыnmu44€QCASE_SENSITIVE<-Ыnmu44€ISEARCHABLE<-Ыnmu44€YUNSIGNED_ATTRIBUTE<-Ыnmu44€?MONEY<-Ыnmu44€QAUTO_INCREMENT<-Ыnmuча4€SLOCAL_TYPE_NAME<-Ыnmu00€Ccharbin<-Ыnmu44€OSQL_DATA_TYPE<-Ыnmu44€USQL_DATETIME_SUB<-ѕxЂuчча4€E@objname<-ѕxЂuчч а4€E@results<-“av88 €Mattribute_id<-“avЇЇ<а4<€Qattribute_name<-“avЇЇџа4џ€Sattribute_value<-.–v88 €A@objid<-gСŠwчча4€E@objname<- х~xчча4€?@name<- х~xча4€G@username<- х~xча4€M@grantorname<- х~xЇЇ а4€S@permissionarea<-Џџ=yча4€K@table_name<-Џџ=yча4€M@table_owner<-Џџ=yча4€U@table_qualifier<-Џџ=yчча4€M@column_name<-й syчча4€E@objname<-й syча4€K@columnname<-.gzча4€K@name_in_db<-KR[{чча4€W@IndexNamePattern<-KR[{ЇЇ#а4€K@OptionName<-KR[{ЇЇ а4€M@OptionValue<-„vO|88 €A@spid1<-„vO|88 €A@spid2<-“}чча4€K@table_name<-“}чча4€M@table_owner<-“}ча4€U@table_qualifier<-“}чча4€M@column_name<-“}88 €E@ODBCVer<-НšC}ччўа4€G@Resource<-НšC}ЇЇ а4€G@LockMode<-НšC}ЇЇ а4€I@LockOwner<-НšC}88 €M@LockTimeout<-чЄx}88 €S@upgradeVersion<-іО7~ччўа4€G@Resource<-іО7~ЇЇ а4€I@LockOwner<-/у+ча4€C@dbname<-/у+ча4€K@devicename!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!зŽGєЇ^а‹>щœQЯ‚7р•JИcЫx+фЅ`Ь{.щЄOНjк8чЂSБp1т ‘ J  Р  : ѕ А _  Щ Œ 5 № Ÿ X  а0лŠ9ф“BэœKС€;юЃRФ}.с–S С`c-ah):іbГ( [$hIћkй<-КЈWча4€K@table_name<-КЈWча4€O@stat_catalog<-КЈWча4€M@stat_schema<-КЈWча4€I@stat_name<-ф нWча4€K@rmtsrvname<-ф нWча4€K@locallogin<-Xчча4€G@rulename<-Xчч а4€E@objname<-XЇЇа4€K@futureonly<-G:YЇЇа4€?@mode<-VTХYЇЇа4€C@action<-VTХY88 €A@value<-€^њYЇЇ#а4€K@configname<-€^њY88 €M@configvalue<-en„Zчча4€E@tblname<-en„Zчча4€E@colname<-en„Z44€G@dropcnst<-xЙZЇЇа4€C@action<-Й‚юZча4€C@dbname<-Й‚юZЇЇ а4€E@dropdev<-Шœ­[ча4€A@ftcat<-Шœ­[ЇЇа4€C@action<-Шœ­[ччЪа4€?@path<-ђІт[ча4€C@dbname<-ђІт[ча4€K@syslogical<-ђІт[чча4€M@sysphysical<-ђІт[88 €E@syssize<-ђІт[ча4€K@loglogical<-ђІт[чча4€M@logphysical<-ђІт[88 €E@logsize<-ђІт[ча4€O@datalogical1<-ђІт[ чча4€Q@dataphysical1<-ђІт[ 88 €I@datasize1<-ђІт[ ча4€O@datalogical2<-ђІт[ чча4€Q@dataphysical2<-ђІт[ 88 €I@datasize2<-ђІт[ча4€O@datalogical3<-ђІт[чча4€Q@dataphysical3<-ђІт[88 €I@datasize3<-ђІт[ча4€O@datalogical4<-ђІт[чча4€Q@dataphysical4<-ђІт[88 €I@datasize4<-ђІт[ча4€O@datalogical5<-ђІт[чча4€Q@dataphysical5<-ђІт[88 €I@datasize5<-ђІт[ча4€O@datalogical6<-ђІт[чча4€Q@dataphysical6<-ђІт[88 €I@datasize6<-ђІт[ча4€O@datalogical7<-ђІт[чча4€Q@dataphysical7<-ђІт[88 €I@datasize7<-ђІт[ча4€O@datalogical8<-ђІт[чча4€Q@dataphysical8<-ђІт[88 €I@datasize8<-ђІт[ ча4€O@datalogical9<-ђІт[!чча4€Q@dataphysical9<-ђІт["88 €I@datasize9<-ђІт[#ча4€Q@datalogical10<-ђІт[$чча4€S@dataphysical10<-ђІт[%88 €K@datasize10<-ђІт[&ча4€Q@datalogical11<-ђІт['чча4€S@dataphysical11<-ђІт[(88 €K@datasize11<-ђІт[)ча4€Q@datalogical12<-ђІт[*чча4€S@dataphysical12<-ђІт[+88 €K@datasize12<-ђІт[,ча4€Q@datalogical13<-ђІт[-чча4€S@dataphysical13<-ђІт[.88 €K@datasize13<-ђІт[/ча4€Q@datalogical14<-ђІт[0чча4€S@dataphysical14<-ђІт[188 €K@datasize14<-ђІт[2ча4€Q@datalogical15<-ђІт[3чча4€S@dataphysical15<-ђІт[488 €K@datasize15<-ђІт[5ча4€Q@datalogical16<-ђІт[6чча4€S@dataphysical16<-ђІт[788 €K@datasize16<-зЖl\чча4€E@objname<-зЖl\чча4€E@indname<-СЁ\чч а4€E@tabname<-СЁ\ЇЇ2а4€C@action<-СЁ\ча4€A@ftcat<-СЁ\ча4€E@keyname<-+Ыж\чча4€E@objname<-:х•]чч а4€E@tabname<-:х•]ча4€E@colname<-:х•]ЇЇа4€C@action<-:х•]88 €G@language<-:х•]ча4€O@type_colname<-dяЪ]ча4€C@dbname<-dяЪ]чча4€K@skipchecks<-s Š^ча4€a@fulltext_catalog_name<-П^ча4€M@logicalname<-П^ЇЇа4€I@defstatus<-Ќ-~_88 €Q@cursor_return<-Ќ-~_ча4€a@fulltext_catalog_name<-ж7Г_ча4€M@logicalname<-ж7Г_ЇЇа4€E@delfile<-хQr`ча4€a@fulltext_catalog_name<-хQr`чч а4€K@table_name<-\Ї`88 €C@msgnum<-\Ї`ча4€?@lang<-vfa88 €Q@cursor_return!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ѕf#иw2х„3ъ<ёЎ_еKС€=јГn#а4сEђЁVВgУx%д‰6хœKќГbЪy*с  A ј Ї X  О o & е † = ь  T  Дo"з’EњЗx5єЏl)тX Р<§Вm&лGњЋ`[-bj)$cЈ ]7"jE‘"<-уХGOЇЇ а4€I@privilege<- а|O88 €C@msgnum<- а|O44€G@severity<- а|Oччўа4€E@msgtext<- а|Oча4€?@lang<- а|OЇЇа4€G@with_log<- а|OЇЇа4€E@replace<-ъ;Pча4€C@server<-ъ;Pчча4€K@srvproduct<-ъ;Pчча4€G@provider<-ъ;Pчч@а4€E@datasrc<-ъ;Pчч@а4€G@location<-ъ;Pчч@а4€E@provstr<-ъ;Pча4€E@catalog<-FєpPЇЇа4€E@devtype<-FєpPча4€M@logicalname<-FєpPчча4€O@physicalname<-FєpP44€I@cntrltype<-FєpPЇЇ(а4€I@devstatus<-U0Qча4€C@server<-U0QЏЏ а4€K@droplogins<-eQча4€O@remoteserver<-eQча4€G@loginame<-eQча4€K@remotename<-d(яQча4€K@table_name<-d(яQча4€O@table_schema<-d(яQччўа4€K@table_type<-d(яQча4€O@table_schema<-d(яQччўа4€K@table_type<-Ž2$Rча4€C@server<-Ž2$RЇЇ#а4€E@optname<-Ž2$Rчча4€G@optvalue<-Ича4€G@rolename<-с9>ча4€C@newpwd0-ЦIЇ>00€Astatus0-ЦIЇ>00€Epriority0-ЦIЇ>Qjqueuing_order0-ЦIЇ>$$€_conversation_group_id0-ЦIЇ>$$€[conversation_handle0-ЦIЇ>€cmessage_sequence_number0-ЦIЇ>$$€Imessage_id0-ЦIЇ>88 €Smessage_type_id0-ЦIЇ> 88 €Iservice_id0-ЦIЇ> 88 €[service_contract_id0-ЦIЇ> яя€Ivalidation0-ЦIЇ> 88 €Onext_fragment0-ЦIЇ> 88 €Ofragment_size0-ЦIЇ>€Sfragment_bitmap0-ЦIЇ>ЅЅџџ@€[binary_message_body<-№Sм>ча4€K@table_name<-№Sм>ча4€O@table_schema<-№Sм>ча4€O@table_schema<-№Sм>ча4€K@table_name<-№Sм>ча4€O@table_schema<-№Sм>ча4€O@table_server<-№Sм>ча4€Q@table_catalog<-№Sм>ча4€K@table_name<-№Sм>ча4€O@table_schema<-^?ча4€G@rolename<-^?ча4€G@password<-^?ЇЇ а4€E@encrypt<-DhF?88 €G@newvalue<-S‚@ча4€G@rolename<-}Œ:@88 €G@newvalue0-8’@00€Astatus0-8’@00€Epriority0-8’@Qjqueuing_order0-8’@$$€_conversation_group_id0-8’@$$€[conversation_handle0-8’@€cmessage_sequence_number0-8’@$$€Imessage_id0-8’@88 €Smessage_type_id0-8’@ 88 €Iservice_id0-8’@ 88 €[service_contract_id0-8’@ яя€Ivalidation0-8’@ 88 €Onext_fragment0-8’@ 88 €Ofragment_size0-8’@€Sfragment_bitmap0-8’@ЅЅџџ@€[binary_message_body<-bœФ@44€I@data_type<-bœФ@00€K@best_match<-ŒІљ@ча4€G@rolename<-ŒІљ@ча4€K@membername<-ЖА.A88 €G@newvalue0-qЖƒA€Gcommit_ts0-qЖƒA€Cxdes_id0-qЖƒA€Icommit_lbn0-qЖƒA€Icommit_csn0-qЖƒA==€Kcommit_time0-qЖƒA88 €Edbfragid!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!щžU Щ‚;№Љ^КgЩ€%м‰@н‚#Йt3ьЅ^в‹<ё QЗhЮs б ‚ 9 о • B љ – ; м r - ь Љ b  д…:яžOЕfаu"г„;р—Dћ˜=оt/юЇ`f-dg);їeГH ^$gЧЙb<-`š/ча4€O@catalog_name<-`š/88 €A@dummy<-`š/ча4€M@server_name<-`š/ча4€O@catalog_name<-ŠЯ/ча4€G@loginame<-ŠЯ/ча4€G@rolename<-У>У0ча4€G@loginame<-У>У0ча4€G@rolename<-вX‚1ча4€K@table_name<-вX‚1ча4€O@table_schema<-вX‚1ча4€M@column_name<-вX‚1ча4€E@grantor<-вX‚1ча4€E@grantee<-вX‚1ча4€O@table_schema<-вX‚1ча4€M@column_name<-вX‚1ча4€E@grantor<-вX‚1ча4€E@grantee<-вX‚1ча4€O@table_server<-вX‚1ча4€Q@table_catalog<-вX‚1ча4€K@table_name<-вX‚1ча4€O@table_schema<-вX‚1ча4€M@column_name<-вX‚1ча4€E@grantor<-вX‚1ча4€E@grantee<-ќbЗ1ча4€C@ntname<-5‡Ћ244€=@uid<-nЋŸ3ча4€G@loginame<-nЋŸ3ча4€K@name_in_db<-}Х^4ча4€K@table_name<-}Х^4ча4€O@table_schema<-}Х^4ча4€M@column_name<-}Х^4ча4€O@table_schema<-}Х^4ча4€M@column_name<-}Х^4ча4€O@table_server<-}Х^4ча4€Q@table_catalog<-}Х^4ча4€K@table_name<-}Х^4ча4€O@table_schema<-}Х^4ча4€M@column_name<-ЇЯ“4ча4€G@loginame<-ЇЯ“4ча4€K@name_in_db<-ЇЯ“4ча4€E@grpname<-Œп5чч(а4€C@Action<-Œп588 €E@Startup<-рѓ‡5ча4€K@name_in_db<-Х6чча4€C@Action<-Х6чча4€E@ObjType<-Х6ча4€E@ObjName<-Х6ча4€O@DatabaseName<-Х6ча4€G@GUIDName<-я G6ча4€U@constraint_name<-я G6ча4€Y@constraint_schema<-я G6ча4€Y@constraint_schema<-|6ча4€K@name_in_db<-ў'788 €;@id<-ў'788 €C@option<-ў'7чча4€=@obj<-ў'788 €?@spid<-RџОu2їМBИ u : џ Ф ‰ N  д “ J  Т ‡ L  ж — V Ъ…Jд™^#фЃZмЁf'цZфЉn3јЙx/ьЇl-ьЃ`fh$ю LgH 0 •Could not open new database '%.*ls'. CREATE DATABASE is aborted.0 ЗCould not create tempdb. If space is low, extend the amount of space and restart.0 пPrimary log file '%ls' is missing and the database was not cleanly shut down so it cannot be rebuilt.Љ0 •Could not create default log file because the name was too long.0 еDisk '%.*ls' is already completely used by other databases. It can be expanded with DISK RESIZE.0" wUser-defined filegroups are not allowed on '%hs'.0# CREATE/ALTER DATABASE failed because the resulting cumulative database size would exceed your licensed limit of %d MB per %S_MSG.0$ ‘The file named '%.*ls' is already in use. Choose another name. 0% ЋThe FOR ATTACH option requires that at least the primary file be specified.`0& еThe files '%.*ls' and '%.*ls' are both primary files. A database can only have one primary file.the0( yCould not attach database '%.*ls' to file '%.*ls'.eee0) ЁFile '%ls' cannot be reused until after the next BACKUP LOG operation.0* ­The file '%ls' cannot be overwritten. It is being used by database '%.*ls'.i0+ Unable to create/attach any new database because the number of existing databases has reached the maximum number allowed: %d.0, —Could not create default data file because the name was too long.0m —Column '%.*ls'. Cannot create index on a column of bit data type.0n Cannot create more than one clustered index on table '%.*ls'. Drop the existing clustered index '%.*ls' before creating another.0o §Index keys are too large. The %d bytes needed to represent the keys for index %d exceeds the size limit of %d bytes.0p ХCannot specify more than %d column names for statistics or index key list. %d specified.0q Could not find 'zero' row for index '%.*ls' the table in sysindexes.0r ЧCannot create an index on '%.*ls', because this table does not exist in database '%.*ls'.0s  Cannot re-create index '%.*ls'. The new index definition does not match the constraint being enforced by the existing index.80u гCannot use duplicate column names in index key list. Column name '%.*ls' listed more than once.0v ЙCannot create more than %d nonclustered indices or column statistics on one table.m0w ƒColumn name '%.*ls' does not exist in the target table.0y ‡There is already an index on table '%.*ls' named '%.*ls'.a0z ЧIndex cannot be created on object '%.*ls' because the object is not a user table or view."0| …CREATE INDEX options %ls and %ls are mutually exclusive.0~ WIndex (ID = %d) is being rebuilt.0 ЛColumn '%.*ls'. Cannot create index on a column of text, ntext, or image data type.40€  ›Skipping rebuild of index ID %d, which is on a read-only filegroup.0 ]Invalid filegroup '%.*ls' specified.З…0‚ #Filegroup '%.*ls' has no files assigned to it. Tables, indexes, and text, ntext, and image columns cannot be created on this filegroup.0ƒ _The clustered index has been dropped.0„ SFilegroup '%.*ls' is read-only.0… ХCannot convert a clustered index to a nonclustered index using the DROP_EXISTING option.0† ЯCannot create a clustered index because nonclustered index ID %d is on a read-only filegroup.0‡ There are already statistics on table '%.*ls' named '%.*ls'.,0ˆ еCannot create statistics on table '%.*ls' because this table does not exist in database '%.*ls'.шІ0‰ бStatistics cannot be created on object '%.*ls' because the object is not a user table or view.0‹ OFilegroup '%.*ls' is offline.e0Œ ЭCannot create a clustered index because nonclustered index ID %d is on an offline filegroup.s˜0 ПCannot create index because the key column '%.*ls' is non-deterministic or imprecise.0Ž Б%ls failed because the following SET options have incorrect settings: '%.*ls'.[escription],[msglangid]) VALUES(@1,@2,@3,@4,@˜иИф |Ќф0 ЌTќtЌ$ ф8˜а а И ˆ x Ш$Ја$x(Ај`-Y;)Ёщh‘V@U0-€=rsid0-88 €Crscolid0-88 €Chbcolid0-€Ircmodified0-88 €9ti0-88 €;cid0-44€Aordkey0-44€Kmaxinrowlen0- 88 €Astatus0- 88 €Aoffset0- 88 €Cnullbit0- 44€Abitpos0- ЅЅ€Ccolguid0-88 €Edbfragid0-€Erowsetid0-00€Gownertype0-88 €Cidmajor0-88 €Cidminor0-88 €Cnumpart0-88 €Astatus0-44€Afgidfs0-€Arcrows0- 00€Gcmprlevel0- 00€Efillfact0- 44€Imaxnullbit0- 88 €Cmaxleaf0- 44€Amaxint0-44€Cminleaf0-44€Aminint0-ЅЅ€Arsguid0-ЅЅ€Clockres0-88 €Edbfragid0-€=auid0-00€=type0-€Cownerid0-88 €Astatus0-44€=fgid0-­­€Cpgfirst0-­­€Apgroot0-­­€Ipgfirstiam0- €Apcused0- €Apcdata0- €Ipcreserved0- 88 €Edbfragid0-88 €Astatus0-44€Afileid0-яяа4€=name0-яяа4€Efilename0-88 €Kpriority_id0-ча4€=name0-88 €[service_contract_id0-88 €Ulocal_service_id0-чча4€[remote_service_name0-00€Epriority0-88 €=dbid0-88 €Afragid0-ча4€=name0-88 €Cbrickid0-88 €?pruid!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Њg*щЌg З \  д  R  а ‹ B  Р w 6 ѓ Ж u 2 ѕИs0яЎk*чžYбO Щ†?њЕr1ю­l!рЅl#р` Z,іi‘^j8!!!!О`С%,l’j‘UUU0%ыљL њL2sys!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!` ZZіk‘И^l8!!!!О`‚ fZІŽlВА ЕіЅ  †џŸšjeXЕјtZNћ˜§ђ№›mCЕИў Ту:= x S CёSZ хvš ez˜ Я=0єp9{ŽŠ*љ0ё TЙћнo›ѕѓИxGj5ярvиjYsM"щђњM“єa~хvи ‘tи9Ф$ТЂ”˜uh’ъ ЃиѓI!…UИL"ђ5 ђ# щ”$gї› %tw&sљ='ez^ (Š5aЃ)№їZ *uѕA/+ЅВ›н,ђzŸЁ-rщOХ.aQJ/wXš0їQьљ1Џњч2уn ˆ3…&U 4If,=5šSЌb6ƒc7ђ0z 8є0zь9§ы{,:§ыЇ,;t|™<r|™ю=oВы>ozи?уsИ@пСKJAк_BMНмCbtњœDzР}ЭE:Є;яFєДGьpYHCёS^I5In5JџВћнKІ80L››7Mь6NŠњ-Ogw˜ Pтq>QхyX RCЪ}YS•‰q+T0Uњл@Vv—~ЁWV–‡_Xz–ОYbvx<Z№рŸю[0лђЁ\ЉЯgI]Ёј)^ѓќ#_@c4ž`r.g”aFщћиb`МcXЊvdclО-ecЎuиМfcє7;>!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!tgZM@3& џђхиЫОБЄ—Š}pcVI</"ћюсдЧК­ “†yl_RE8+їънаУЖЉœ‚uh[NA4' ѓцйЬПВЅ˜‹~qdWJ=0# ќятеШЛЎЁ”‡zm` ZZіm‘ш^n8!!!!О`‚fZ. nВА '›ї10 †Whttp://www.w3.org/2001/XMLSchema0уn ˆ2_http://www.w3.org/XML/1998/namespace0`Мb1base64Encoded0z–ОX)sqlSortId0 щ”#5negativeInteger0r.g”` microsoft.sqlserver.types, version=10.0.0.0, culture=neutral, publickeytoken=89845dcd8080cc91, processorarchitecture=msil0ТЂ”˜!IDREF0wXš/'ENTITIES0џŸš%anyType0btњœC#bigint0уsИ?!image0ozи>#binary0@c4ž_microsoft.sqlserver.types, version=0.0.0.0, culture=neutral, publickeytoken=89845dcd8080cc91, processorarchitecture=msil0№їZ )/unsignedLong0v—~ЁV9sqlCompareOptions0ђzŸЁ,/unsignedByte00лђЁ[=xmlSchemaCollection0Š5aЃ(;nonNegativeInteger0jeXЕ1anySimpleType0rщOХ-5positiveInteger0zР}ЭD'smallint0Fщћиa-hierarchyid0MНмB%numeric0ЅВ›н+1unsignedShort0џВћнJ!money0TЙћн#gMonth0Џњч1http://schemas.microsoft.com/sqlserver/2004/sqltypes0uh’ъ#ENTITY0oВы=)varbinary0є0zь8!nchar0r|™ю<!ntext0№рŸюZ)precision0Gj5я#anyURI0:Є;яE%tinyint0ђ5 ђ";nonPositiveInteger0o›ѕ)hexBinary0їQьљ0'NMTOKENS0ћ˜§%boolean0CЕИў#double0Ф$ID0єДFbit0tw%int0ь6Mxml0Я=0+gYearMonth0хvи Name0…&U 3/xmlSpaceEnum0хyX Qbase0ez^ 'byte0ђ0z 7char0ez˜ date0љ0ё gDay0gw˜ Olang0gї› $long0ьpYGreal0t|™;text0хvš time0рvи!QName0jY'NOTATION0њл@U'localeId0x S 'duration0sM"7normalizedString0ѓќ#^3datetimeoffset0Ёј)])datetime20ŽŠ*)gMonthDay0•‰q+S-clrTypeName0§ы{,9%varchar0§ыЇ,:'nvarchar0Šњ-N'dbobject0uѕA/*-unsignedInt00T)maxLength0І80K+smallmoney05In5I1smalldatetime0››7L7uniqueidentifier0‘tи9#NCName0bvxP!space0ЉЯgI\/sqlTypeAlias0ЃиѓI %NMTOKEN0пСKJ@)timestamp0aQJ.#IDREFS0…UИL!%integer0щђњM!token0јtZN#string0CЪ}YR)sqlDbType0CёSZ 'dateTime0CёS^H'datetime0к_A7timestampNumeric0V–‡_W=sqlCollationVersion0šSЌb5AsqlCompareOptionsEnum0ƒc6AsqlCompareOptionsList0ђ№›m!float0ѓИx/base64Binary0єp9{!gYear0“єa~'language0XЊvc_CE79811F-1A80-40E1-8F5D-7445A3F375E70clО-d)sqlserver0cЎuиМe'package00cє7;>f!sqlos!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!х•ОюПž]пЈZ1эШЅ|W(тБoLф Й  c <  № У š q >  р Й ’ q 6R 3  ѕ ж З ˜ y Z ; э Т Ѕ ˆ k P =  ѕЮЅjE"љиЗŽkьЩЈwR%ўЩ˜] ёИ‰‚_>іЯЎЅpGЗ`x, "†: oВаG$ ЗŠу%<,ЫnmuU њ7šU“*П!L Vspt_datatype_info<,ѕxЂuP јш™U“*П!L Lsp_helpstats<,“avU ›9šU“*П!L Rspt_server_info<,.–vP $ъ™U“*П!L Xsp_objectfilegroup<,­ wX -›U“*П!L Hxp_regread<,gСŠwP &ы™U“*П!L Bsp_help<,LбxX Р-›U“*П!L Jxp_regwrite<, х~xP Йь™U“*П!L Nsp_helprotect<,ЪяГxP |˜U“пЪ!L xsp_msupg_recreatecatalogfaketables<,…ѕyX .›U“*П!L Vxp_regdeletevalue<,Џџ=y P u;šU“*П!L \sp_column_privileges<,й syP mю™U“+П!L Jsp_helptext<,ЈyP |˜U“пЪ!L tsp_msupg_dosystabcatalogupgrades<,О§yX І.›U“+П!L \xp_regaddmultistring<,.gzP №™U“+П!L Jsp_helpuser<,<8œzP |˜U“пЪ!L tsp_msupg_dropcatalogcomputedcols<,ї=ёzX /›U“+П!L bxp_regremovemultistring<,KR[{P €ё™U“+П!L Psp_indexoption<,u\{P |˜U“пЪ!L xsp_msupg_createcatalogcomputedcols<,0bх{X k/›U“,П!L Pxp_regenumkeys<,„vO|P ѓђ™U“,П!L Bsp_lock<,Ў€„|P |˜U“рЪ!L lsp_msupg_recreatesystemviews<,i†й|X х/›U“,П!L Txp_regenumvalues<,“} P ч<šU“,П!L Hsp_columns<,НšC}P є™U“,П!L Nsp_getapplock<,чЄx}P |˜U“рЪ!L bsp_msupg_upgradecatalog<,ЂЊЭ}X 0›U“,П!L Rxp_regdeletekey<,іО7~P зѕ™U“,П!L Vsp_releaseapplock<,лЮС~X ^0›U“,П!L Zxp_instance_regread<,йі~ P Ђ=šU“,П!L Lsp_databases<,/у+P Nї™U“тЪ!L Lsp_logdevice<,ѓЕX С0›U“,П!L \xp_instance_regwrite!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!о ’ F ь – D т”LјŒJњ‚2а\ЖBјœFЮ€6єЌTЖ`{,zA"  оpЗAd$<,јIў0,aS ЃљLІљL Nsysbinsubobjs0,bS  CњLFњL Psyssoftobjrefs<,h P ј™U“эО!L Xsp_helpremotelogin<,’U P bK˜U“єО!L `sp_MS_marksystemobject<,MЊX 1›U“єО!L hxp_instance_regdeletevalue<,Ё+P `љ™U“єО!L Jsp_helpsort<,Ы5I P џL˜U“рЪ!L fsp_MS_upd_sysobj_category<,†;žX D1›U“єО!L nxp_instance_regaddmultistring<,кOP ељ™U“сЪ!L Hsp_helpsql<,Z= P єN˜U“рЪ!L Nsp_db_upgrade<,П_’X †1›U“єО!L txp_instance_regremovemultistring<,щiЧ P я>šU“єО!L Tsp_datatype_info<,tќP %њ™U“љО!L Hsp_monitor<,јƒ†X Ш1›U“љО!L bxp_instance_regenumkeys<,L˜№P ћ™U“љО!L Psp_processmail<,vЂ%U  A™U“уР!L Jspt_monitor<,1ЈzX  2›U“љО!L fxp_instance_regenumvalues<,…МфP hћ™U“љО!L Lsp_recompile<,ЏЦU B™U“фР!L Hspt_values<,jЬnX K2›U“њО!L dxp_instance_regdeletekey<,ОриP аћ™U“њО!L Rsp_remoteoption<,шъ D ЏЦB™U“фР!L pDF__spt_value__statu__060DEAE8<,Ѓ№bX Œ2›U“ќЪ!L ^xp_getprotocoldllinfo<,Эњ— P }@šU“њО!L Dsp_fkeys<,їЭP $ќ™U“њО!L ^sp_invalidate_textptr0,!U 3D™U“Ц†#L Rspt_fallback_db<,мWX Ю2›U“њО!L Rxp_readerrorlog<,0)СP oќ™U“њО!L Psp_tableoption0,Z3іU  НE™U“Ш†#L Tspt_fallback_dev<,9KP ?3›U“њО!L Rsp_readerrorlog<,iMЕP бќ™U“ўО!L Nsp_procoption0,“WъU  FG™U“Ъ†#L Tspt_fallback_usg<,N]? X “3›U“ўО!L Txp_enumerrorlogs<,xgt  P ‰AšU“ўО!L Dsp_pkeys<,ЂqЉ P 3§™U“ўО!L Jsp_renamedb<,Ь{о P W”™U“ўО!L Zsp_dropextendedproc<,‡3 P ч3›U“ўО!L Tsp_enumerrorlogs<,Б‹h  P BšU“ўО!L Psp_server_info<,л• P u§™U“рЪ!L ^sp_remove_tempdb_file<, в P Ъ•™U“ўО!L Xsp_addextendedproc<,РЅ' X 74›U“'Ь!L Vxp_getfiledetails<,К‘  P ц§™U“ўО!L Fsp_rename<,>ФЦ P o—™U“ўО!L Zsp_helpextendedproc<,љЩ X ™4›U“ўО!L Vxp_servicecontrol<,Mо… P [ў™U“џО!L Psp_resetstatus<,wшК X :›™U“џО!L Jxp_cmdshell<,2ю X л4›U“џО!L Vxp_availablemedia<,†z P Іў™U“П!L psp_add_file_recover_suspect_db<,А Џ X ?›™U“П!L Jxp_logevent<,kX 5›U“П!L Hxp_dirtree<,•9 P TCšU“П!L Xsp_special_columns<,П&nP оў™U“П!L zsp_add_data_file_recover_suspect_db<,щ0ЃX C›™U“П!L Hxp_sprintf<,Є6јX 5›U“'Ь!L Jxp_eventlog<,јJbP  џ™U“П!L xsp_add_log_file_recover_suspect_db<,"U—X C›™U“П!L Fxp_sscanf<,нZьP н5›U“(Ь!L Jsp_eventlog<,1oVP fџ™U“П!L Lsp_spaceused<,[y‹X H›™U“П!L Dxp_msver<,рX D6›U“П!L Pxp_fixeddrives<,j“JP šU“П!L Hsp_sqlexec<,”X H›™U“П!L Nxp_enumgroups<,OЃдX І6›U“П!L Hxp_subdirs<,y­  P ЏDšU“П!L Tsp_sproc_columns<,ЃЗ>P №šU“П!L Rsp_unbindefault!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Œ8№ЂZ Цz0ъr(рfЦ| ЖlЦl&а x  Ъ v  в Ž : ц ˜ F ђ Ђ P ў \ўŽ<иDо”DтšFв„<ЮhЖVўЎ`pr$HXqx0з  Code page %d is not supported by the operating system.ЈЈЈ0й   Database '%.*ls' contains columns or parameters with the following code page(s) not supported by the operating system: %ls.0ё  ›The definition of object '%.*ls' has changed since it was compiled.0љ  ЇThe request for %S_MSG '%.*ls' failed because '%.*ls' is a %S_MSG object.0ќ  eCould not find stored procedure '%.*ls'.рр0С  ƒCould not insert a backup or restore history/detail record in the msdb database. This may indicate a problem with the msdb database. The backup/restore operation was still successful.0У  ЙAll backup devices must be of the same general class (for example, DISK and TAPE).;Ј0Х  Q%hs is terminating abnormally.hs 0Ц Ѕ%hs successfully processed %d pages in %d.%03d seconds (%d.%03d MB/sec).80Ч K%hs is not yet implemented.0Ш  9File '%ls' of database '%ls' has been removed or shrunk since this backup or restore operation was interrupted. The operation cannot be restarted.0Щ  эCould not resume interrupted backup or restore operation. See the SQL Server error log for more information.r0Ъ  їThere is no interrupted backup or restore operation to restart. Reissue the statement without the RESTART clause.0Ы  The checkpoint file was for a different backup or restore operation. Reissue the statement without the RESTART clause.;Ј0Ь  The backup operation cannot be restarted as the log has been truncated. Reissue the statement without the RESTART clause.0Э  ™Cannot perform a backup or restore operation within a transaction.0Я  ЃBackup and file manipulation operations (such as ALTER DATABASE ADD FILE) on a database must be serialized. Reissue the statement after the current backup or file manipulation operation is completed.0а  џYou can only perform a full backup of the master database. Use BACKUP DATABASE to back up the entire master database.0б  БMissing database name. Reissue the statement specifying a valid database name.0в  ›Could not find filegroup ID %d in sysfilegroups for database '%ls'.0г  ЃCould not find filegroup '%.*ls' in sysfilegroups for database '%.*ls'.%0д  §Operation checkpoint file is invalid. Could not restart operation. Reissue the statement without the RESTART option.0з  пOption '%ls' conflicts with option(s) '%ls'. Remove the conflicting option and reissue the statement.0и  One or more of the options (%ls) are not supported for this statement. Review the documentation for supported options.БЂ0й  ЁBACKUP DATABASE cannot be used on a database opened in emergency mode.д›0к  щNo files were selected to be processed. You may have selected one or more filegroups that have no members.к›0л  БCannot perform a differential backup for database '%ls', because a current database backup does not exist. Perform a full database backup by reissuing BACKUP DATABASE, omitting the WITH DIFFERENTIAL option.0м  =Database '%ls' is in warm-standby state (set by executing RESTORE WITH STANDBY) and cannot be backed up until the entire load sequence is completed.и›0н  Minimally logged operations have occurred prior to this WITH RESTART command. Reissue the BACKUP statement without WITH RESTART.Э0о  ыThe filename '%ls' is invalid as a backup device name. Reissue the BACKUP statement with a valid filename.ю0п  UCannot perform a differential backup for file '%ls' because a current file backup does not exist. Reissue BACKUP DATABASE omitting the WITH DIFFERENTIAL option.0р +An error occurred while informing replication of the backup. The backup will continue, but the replication environment should be inspected.0с  kBACKUP failed to complete the command %.*ls0  ЁExclusive access could not be obtained because the database is in use.s˜0$  ЯRESTORE DATABASE must be used in single user mode when trying to restore the master database.messagesИп›8п›М(XЁЂл:::::mastersysmessagesoooo рˆфxLє№АќlhˆˆфH””№ T L H P `$и0м œ4Œ№ф`qs$А Дr80б  БMissing database name. Reissue the statement specifying a valid database name.ddd0в  ›Could not find filegroup ID %d in sysfilegroups for database '%ls'.0г  ЃCould not find filegroup '%.*ls' in sysfilegroups for database '%.*ls'.0д  §Operation checkpoint file is invalid. Could not restart operation. Reissue the statement without the RESTART option.0з  пOption '%ls' conflicts with option(s) '%ls'. Remove the conflicting option and reissue the statement.0и  One or more of the options (%ls) are not supported for this statement. Review the documentation for supported options. 0й  ЁBACKUP DATABASE cannot be used on a database opened in emergency mode.ORE0к  щNo files were selected to be processed. You may have selected one or more filegroups that have no members.0л  БCannot perform a differential backup for database '%ls', because a current database backup does not exist. Perform a full database backup by reissuing BACKUP DATABASE, omitting the WITH DIFFERENTIAL option.БЂ0м  =Database '%ls' is in warm-standby state (set by executing RESTORE WITH STANDBY) and cannot be backed up until the entire load sequence is completed.0н  Minimally logged operations have occurred prior to this WITH RESTART command. Reissue the BACKUP statement without WITH RESTART.v0о  ыThe filename '%ls' is invalid as a backup device name. Reissue the BACKUP statement with a valid filename.0п  UCannot perform a differential backup for file '%ls' because a current file backup does not exist. Reissue BACKUP DATABASE omitting the WITH DIFFERENTIAL option.n0р +An error occurred while informing replication of the backup. The backup will continue, but the replication environment should be inspected.0с  kBACKUP failed to complete the command %.*ls0  ЁExclusive access could not be obtained because the database is in use.0$  ЯRESTORE DATABASE must be used in single user mode when trying to restore the master database.0&  ‰User does not have permission to RESTORE database '%.*ls'.e0(  ПCannot restore any database other than master when the server is in single user mode. 0)  ЕThe database owner (DBO) does not have an entry in sysusers in database '%.*ls'.0*  …Database '%.*ls' does not have an entry in sysdatabases.03  ЅInvalid database name '%.*ls' specified for backup or restore operation.“œ04  ‘Must be a System Administrator to perform LOAD with CONVERT65.џџџ07  ЅTemporary Message: The backup set does not contain pages for file '%ls'.m08  oFile '%ls' has an unsupported page size (%d).09  ›Temporary Message: File '%ls' has changed size from %d to %d bytes.'0<  ѓThe media set for database '%ls' has %d family members but only %d are provided. All members must be provided.0=  “The volume on device '%ls' is not a member of the media family.0?  бThe backup set in file '%ls' was created by %hs and cannot be used for this restore operation.ooo0@  ‰Cannot apply the backup on device '%ls' to database '%ls'.˜œ0B  ЇOne or more files in the backup set are no longer part of database '%ls'.0D  Could not adjust the space allocation for file '%ls'.0E  The database to be restored was named '%ls'. Reissue the statement using the WITH REPLACE option to overwrite the '%ls' database.0F  %File '%ls' cannot be restored over the existing '%ls'. Reissue the RESTORE statement using WITH REPLACE to overwrite pre-existing files.0G  The data set on device '%ls' is not a SQL Server backup set.s0H  эFile '%.*ls' was not backed up in file %d on device '%ls'. The file cannot be restored from this backup set. ї0I  хThe STOPAT option is not supported for RESTORE DATABASE. You can use the STOPAT option with RESTORE LOG.0J  YNone of the newly-restored files had been modified after the backup was taken, so no further recovery actions are required. The database is now available for use.џџџXp€№ША0ˆќ(” ”ьXА(pА$TАD Р д М |Шм84TTА`rt$|Єs0*  …Database '%.*ls' does not have an entry in sysdatabases. ї03  ЅInvalid database name '%.*ls' specified for backup or restore operation.i04  ‘Must be a System Administrator to perform LOAD with CONVERT65.ttt07  ЅTemporary Message: The backup set does not contain pages for file '%ls'.ууу08  oFile '%ls' has an unsupported page size (%d).09  ›Temporary Message: File '%ls' has changed size from %d to %d bytes.0<  ѓThe media set for database '%ls' has %d family members but only %d are provided. All members must be provided.ј0=  “The volume on device '%ls' is not a member of the media family.0?  бThe backup set in file '%ls' was created by %hs and cannot be used for this restore operation.ц›0@  ‰Cannot apply the backup on device '%ls' to database '%ls'.0B  ЇOne or more files in the backup set are no longer part of database '%ls'.0D  Could not adjust the space allocation for file '%ls'.0E  The database to be restored was named '%ls'. Reissue the statement using the WITH REPLACE option to overwrite the '%ls' database.a0F  %File '%ls' cannot be restored over the existing '%ls'. Reissue the RESTORE statement using WITH REPLACE to overwrite pre-existing files.`œ0G  The data set on device '%ls' is not a SQL Server backup set.P0H  эFile '%.*ls' was not backed up in file %d on device '%ls'. The file cannot be restored from this backup set.0I  хThe STOPAT option is not supported for RESTORE DATABASE. You can use the STOPAT option with RESTORE LOG.0J  YNone of the newly-restored files had been modified after the backup was taken, so no further recovery actions are required. The database is now available for use.ЭЭ0K  —Backup and restore operations are not allowed on database tempdb.T0L  еMedia recovery for ALTER DATABASE is not yet implemented. The database cannot be rolled forward...0N ЏThe master database has been successfully restored. Shutting down SQL Server.0O  The master database failed to restore. Use the rebuildm utility to rebuild the master database. Shutting down SQL Server.H0P  ‘Cannot overwrite file '%ls' because it is marked as read-only.0Q  eThe database is already fully recovered.0R  ЛThe backup set holds a backup of a database other than the existing '%ls' database.0S  /The RESTORE operation cannot proceed because one or more files have been added or dropped from the database since the backup set was created.0T  еFile '%ls' cannot be restored to '%ls'. Use WITH MOVE to identify a valid location for the file.;Ј0U  ГThe logical file (%d) is named '%ls'. RESTORE will not overwrite it from '%ls'.0V  нCould not create one or more files. Consider using the WITH MOVE option to identify valid locations.ЊЊЊ0W  )The tail of the log for database '%ls' has not been backed up. Back up the log and rerun the RESTORE statement specifying the FILE clause.0X  ‰Could not update primary file information in sysdatabases.0Y  ЗThe primary file is unavailable. It must be restored or otherwise made available.…0Z  ‹The database has on-disk structure version %d. The server supports version %d and can only restore such a database that was inactive when it was backed up. This database was not inactive.0[  пThe transaction log was damaged. All data files must be restored before RESTORE LOG can be attempted.0\  5Cannot roll forward the database with on-disk structure version %d. The server supports version %d. Reissue the RESTORE statement WITH RECOVERY.0]  ЧCould not adjust the replication state of database '%ls'. The database was successfully restored, however its replication state is indeterminate. See the Troubleshooting Replication section in SQL Server Books Online.O0^  љRESTORE DATABASE could not drop database '%ls'. Drop the database and then reissue the RESTORE DATABASE statement.t0_  cRESTORE could not start database '%ls'.ЭЭљљљљ@D|Ddи ”hˆдќЬЈ \„ь  Ј И ( шhР4`Ьи<Ь$ш`su$ц дtР0N ЏThe master database has been successfully restored. Shutting down SQL Server.0O  The master database failed to restore. Use the rebuildm utility to rebuild the master database. Shutting down SQL Server.0P  ‘Cannot overwrite file '%ls' because it is marked as read-only."œ0Q  eThe database is already fully recovered.t0R  ЛThe backup set holds a backup of a database other than the existing '%ls' database.0S  /The RESTORE operation cannot proceed because one or more files have been added or dropped from the database since the backup set was created.0T  еFile '%ls' cannot be restored to '%ls'. Use WITH MOVE to identify a valid location for the file.%œ0U  ГThe logical file (%d) is named '%ls'. RESTORE will not overwrite it from '%ls'.0V  нCould not create one or more files. Consider using the WITH MOVE option to identify valid locations.0W  )The tail of the log for database '%ls' has not been backed up. Back up the log and rerun the RESTORE statement specifying the FILE clause.r0X  ‰Could not update primary file information in sysdatabases.0Y  ЗThe primary file is unavailable. It must be restored or otherwise made available.0Z  ‹The database has on-disk structure version %d. The server supports version %d and can only restore such a database that was inactive when it was backed up. This database was not inactive.0[  пThe transaction log was damaged. All data files must be restored before RESTORE LOG can be attempted.0\  5Cannot roll forward the database with on-disk structure version %d. The server supports version %d. Reissue the RESTORE statement WITH RECOVERY.У0]  ЧCould not adjust the replication state of database '%ls'. The database was successfully restored, however its replication state is indeterminate. See the Troubleshooting Replication section in SQL Server Books Online.0^  љRESTORE DATABASE could not drop database '%ls'. Drop the database and then reissue the RESTORE DATABASE statement.e0_  cRESTORE could not start database '%ls'.0`  IThe backup of the system database on device %ls cannot be restored because it was created by a different version of the server (%u) than this server (%u).2œ0a  The backed-up database has on-disk structure version %d. The server supports version %d and cannot restore or upgrade this database.0b  UThe STANDBY filename is invalid.4œ0c  }Cannot restore file %ls because the file is offline.0d  ‘Cannot restore filegroup %ls because the filegroup is offline.0f  ‡The file '%ls' cannot be moved by this RESTORE operation.0g  The filegroup '%ls' cannot be restored because all of the files are not present in the backup set. File '%ls' is missing.70h  їFile '%ls' is claimed by '%ls'(%d) and '%ls'(%d). The WITH MOVE clause can be used to relocate one or more files.0i  ГOnly members of the dbcreator and sysadmin roles can execute the %ls statement.‘0j  НFile %ls is not in the correct state to have this differential backup applied to it.9œ0k  sThe system database cannot be moved by RESTORE.0l  This backup cannot be restored using WITH STANDBY because a database upgrade is needed. Reissue the RESTORE without WITH STANDBY.јјј0  ѕCannot open backup device '%ls'. Device error or device off-line. See the SQL Server error log for more details.;Ј0‚  ЛWrite on '%ls' failed, status = %ld. See the SQL Server error log for more details.0ƒ  ЙRead on '%ls' failed, status = %ld. See the SQL Server error log for more details.v0„  нOperator aborted backup or restore. See the error messages returned to the console for more details.=œ0…  ЏToo many backup devices specified for backup or restore; only %d are allowed.0†  ХNo entry in sysdevices for backup device '%.*ls'. Update sysdevices and rerun statement.?œœŒ XЁЂЛЛЛЛЛ@џџ<@œЌ?œ&юююю @œа>œ&x;Јъ >>>>>master \|Р №|М€ьlєЈDH€ H h м $ ˜lŒиаЌ`tv$(@uЈ0a  The backed-up database has on-disk structure version %d. The server supports version %d and cannot restore or upgrade this database.Aœ0b  UThe STANDBY filename is invalid.`0c  }Cannot restore file %ls because the file is offline.e0d  ‘Cannot restore filegroup %ls because the filegroup is offline.0f  ‡The file '%ls' cannot be moved by this RESTORE operation.f0g  The filegroup '%ls' cannot be restored because all of the files are not present in the backup set. File '%ls' is missing.0h  їFile '%ls' is claimed by '%ls'(%d) and '%ls'(%d). The WITH MOVE clause can be used to relocate one or more files.p0i  ГOnly members of the dbcreator and sysadmin roles can execute the %ls statement.0j  НFile %ls is not in the correct state to have this differential backup applied to it.Fœ0k  sThe system database cannot be moved by RESTORE.0l  This backup cannot be restored using WITH STANDBY because a database upgrade is needed. Reissue the RESTORE without WITH STANDBY. c0  ѕCannot open backup device '%ls'. Device error or device off-line. See the SQL Server error log for more details.Iœ0‚  ЛWrite on '%ls' failed, status = %ld. See the SQL Server error log for more details.0ƒ  ЙRead on '%ls' failed, status = %ld. See the SQL Server error log for more details.0„  нOperator aborted backup or restore. See the error messages returned to the console for more details.w0…  ЏToo many backup devices specified for backup or restore; only %d are allowed.0†  ХNo entry in sysdevices for backup device '%.*ls'. Update sysdevices and rerun statement.0‡  уBackup or restore requires at least one backup device. Rerun your statement specifying a backup device.0ˆ  mUnexpected end of file while reading beginning of backup set. Confirm that the media contains a valid SQL Server backup set, and see the console error log for more details.ed.0‰  w'%.*ls' is not a backup device. Check sysdevices.0‹ 3%d percent %hs.0‘  iInvalid value specified for %ls parameter.ццц0•  СThe ReadFileEx system function executed on file '%ls' only read %d bytes, expected %d.%%%0–  ХThe WriteFileEx system function executed on file '%ls' only wrote %d bytes, expected %d.0˜  MCannot create worker thread.e0›  ™The volume on device '%ls' is a duplicate of stripe set member %d.ллл0  [Request for device '%ls' timed out.0ž  sOperation on device '%ls' exceeded retry count.b0Ђ  эLogical file '%.*ls' is not part of database '%ls'. Use RESTORE FILELISTONLY to list the logical file names.0Ѓ  нFile '%ls' is not part of database '%ls'. You can only list files that are members of this database.0Ѕ  Option not supported for Named Pipe-based backup sets.0Ї  уThe backup set on device '%ls' uses a feature of the Microsoft Tape Format not supported by SQL Server.0Љ  нThe media family on device '%ls' is incorrectly formed. SQL Server cannot process this media family.|||0Њ  ЇThe file on device '%ls' is not a valid Microsoft Tape Format backup set.0Ћ   The media family on device '%ls' was created using Microsoft Tape Format version %d.%d. SQL Server supports version %d.%d.Yœ0Ќ  яDescriptor block size exceeds %d bytes. Use a shorter name and/or description string and retry the operation.0­  {Could not convert a string to or from Unicode, %ls.o0Ў  The media family on device '%ls' is marked as nonappendable. Reissue the statement using the INIT option to overwrite the media.<<<0Џ  нThe volume on device '%ls' has the wrong media sequence number (%d). Remove it and insert volume %d.t0А  c>>> VOLUME SWITCH <<< (not for output!)0Б  -The volume on device '%ls' is a continuation volume for the backup set. Remove it and insert the volume holding the start of the backup set. x0В  ‡The value '%d' is not within range for the %ls parameter.АБЂкхххххseverityАААА_œ @8_œѓDx;Ј цццццœ@дD€4Иˆ$D,АРД ,HФфє€$ˆ8pЌ@ ”$@ x Ш ш , p x\ш(t|tьXи€`uw$фLvh0•  СThe ReadFileEx system function executed on file '%ls' only read %d bytes, expected %d.0–  ХThe WriteFileEx system function executed on file '%ls' only wrote %d bytes, expected %d.g›0˜  MCannot create worker thread.0›  ™The volume on device '%ls' is a duplicate of stripe set member %d.0  [Request for device '%ls' timed out.0ž  sOperation on device '%ls' exceeded retry count.0Ђ  эLogical file '%.*ls' is not part of database '%ls'. Use RESTORE FILELISTONLY to list the logical file names.d›0Ѓ  нFile '%ls' is not part of database '%ls'. You can only list files that are members of this database.a0Ѕ  Option not supported for Named Pipe-based backup sets.d0Ї  уThe backup set on device '%ls' uses a feature of the Microsoft Tape Format not supported by SQL Server.0Љ  нThe media family on device '%ls' is incorrectly formed. SQL Server cannot process this media family.0Њ  ЇThe file on device '%ls' is not a valid Microsoft Tape Format backup set.0Ћ   The media family on device '%ls' was created using Microsoft Tape Format version %d.%d. SQL Server supports version %d.%d.e0Ќ  яDescriptor block size exceeds %d bytes. Use a shorter name and/or description string and retry the operation.0­  {Could not convert a string to or from Unicode, %ls.0Ў  The media family on device '%ls' is marked as nonappendable. Reissue the statement using the INIT option to overwrite the media.0Џ  нThe volume on device '%ls' has the wrong media sequence number (%d). Remove it and insert volume %d. 0А  c>>> VOLUME SWITCH <<< (not for output!)0Б  -The volume on device '%ls' is a continuation volume for the backup set. Remove it and insert the volume holding the start of the backup set.0В  ‡The value '%d' is not within range for the %ls parameter.0Г ѓThe media family on device '%ls' is complete. The device is now being reused for one of the remaining families.0Е  ™The block size parameter must supply a value that is a power of 2.p›0Ж  ]The volume on device '%ls' is empty.0З  уThe data set on device '%ls' is a SQL Server backup set not compatible with this version of SQL Server.0И  !The backup set on device '%ls' was terminated while it was being created and is incomplete. RESTORE sequence is terminated abnormally.TTT0Й  aThere is insufficient free space on disk volume '%ls' to create the database. The database requires %I64u additional free bytes, while only %I64u bytes are available.t0К  The volume on device '%ls' belongs to a different media set.‚0Л  The volume on device '%ls' is not part of a multiple family media set. BACKUP WITH FORMAT can be used to form a new media set.t0М  [An internal buffer has become full.0Н  ƒSQL Server cannot use the virtual device configuration.0О EThe backup set is valid.w›0П  ЏCannot use the volume on device '%ls' as a continuation volume. It is sequence number %d of family %d for the current media set. Insert a new volume, or sequence number %d of family %d for the current set.Ё0Р  ѓThe operation did not proceed far enough to allow RESTART. Reissue the statement without the RESTART qualifier.0С  The login has insufficient authority. Membership of the sysadmin role is required to use VIRTUAL_DEVICE with BACKUP or RESTORE.0Т  The backup data in '%ls' is incorrectly formatted. Backups cannot be appended, but existing backup sets may still be usable.0У  sInsufficient resources to create UMS scheduler. 0Ф  Cannot use the backup file '%ls' because it was originally formatted with sector size %d and is now on a device with sector size %d.Š0Х  Cannot restore the file '%ls' because it was originally written with sector size %d; '%ls' is now on a device with sector size %d.0Ц  ЗAn internal consistency error occurred. Contact Technical Support for assistance., АААА …ј~›Нpx;ЈWPPPPP$"…Д `  (< ”xXфдРЬдPєрPьШф„шєl< и ј р d t hРрќx˜Ј4и<ь$`vx$& Lw0 0Г ѓThe media family on device '%ls' is complete. The device is now being reused for one of the remaining families./0Е  ™The block size parameter must supply a value that is a power of 2.0Ж  ]The volume on device '%ls' is empty.0З  уThe data set on device '%ls' is a SQL Server backup set not compatible with this version of SQL Server.0И  !The backup set on device '%ls' was terminated while it was being created and is incomplete. RESTORE sequence is terminated abnormally.e0Й  aThere is insufficient free space on disk volume '%ls' to create the database. The database requires %I64u additional free bytes, while only %I64u bytes are available.0К  The volume on device '%ls' belongs to a different media set.0Л  The volume on device '%ls' is not part of a multiple family media set. BACKUP WITH FORMAT can be used to form a new media set.0М  [An internal buffer has become full.0Н  ƒSQL Server cannot use the virtual device configuration.0О EThe backup set is valid.(…0П  ЏCannot use the volume on device '%ls' as a continuation volume. It is sequence number %d of family %d for the current media set. Insert a new volume, or sequence number %d of family %d for the current set.0Р  ѓThe operation did not proceed far enough to allow RESTART. Reissue the statement without the RESTART qualifier.0С  The login has insufficient authority. Membership of the sysadmin role is required to use VIRTUAL_DEVICE with BACKUP or RESTORE.0Т  The backup data in '%ls' is incorrectly formatted. Backups cannot be appended, but existing backup sets may still be usable.0У  sInsufficient resources to create UMS scheduler.0Ф  Cannot use the backup file '%ls' because it was originally formatted with sector size %d and is now on a device with sector size %d.;Ј0Х  Cannot restore the file '%ls' because it was originally written with sector size %d; '%ls' is now on a device with sector size %d.Еi0Ц  ЗAn internal consistency error occurred. Contact Technical Support for assistance.0Ч  uNonrecoverable I/O error occurred on file '%ls'.1…0Ш  }The '%ls' device has a hardware sector size of %d, but the block size parameter specifies an incompatible override value of %d. Reissue the statement using a compatible block size.0Щ  еThe BUFFERCOUNT parameter must supply a value that allows at least one buffer per backup device.0Ъ  еIncorrect checksum computed for the backup set on device %ls. The backup set cannot be restored. 0Ы  ЕI/O request 0x%08x failed I/O verification. See the error log for a description.e0Ь  ЋWITH SNAPSHOT can be used only if the backup set was created WITH SNAPSHOT.0Э  …WITH SNAPSHOT must be used with only one virtual device..0Ю  MFailed to encrypt string %ls0Я  iAccess is denied due to a password failureve 0а  •Backups on raw devices are not supported. '%ls' is a raw device.7…0б  cReleased and initiated rewind on '%ls'.0х  ‹Invalid log record found in the transaction log (logop %d).ь0ё  ХError while redoing logged operation in database '%.*ls'. Error at log record ID %S_LSN.8…0ђ  ХError while undoing logged operation in database '%.*ls'. Error at log record ID %S_LSN.a0ѓ !During rollback, process %d was expected to hold mode %d lock at level %d for row %S_RID in database '%.*ls' under transaction %S_XID.Œr0M MRecovering database '%.*ls'.0N …%d transactions rolled forward in database '%.*ls' (%d).0O %d transactions rolled back in database '%.*ls' (%d).0P 9Recovery complete.o0U  еDatabase ID %d. Could not mark database as suspect. Getnext NC scan on sysdatabases.dbid failed.0V ГDatabase '%.*ls' (database ID %d) could not recover. Contact Technical Support.0W  чDatabase '%.*ls' is read-only or has read-only files and must be made writable before it can be upgraded.ssagesWWWW ?… XXЁЂЗzzzzzio^HdАиœ”D X œLФ`ˆА0ИфФ P @ , 8 ˆ@М`LМX4P№T`f,o["<xГ` a$[JЁШ,<,*ОeH P EtšU“П!L Xsp_schemata_rowset<,TШšHP šU“П!L \sp_srvrolepermission<,~вЯHP !Њ™U“8Ы!L Jsp_blockcnt<,ьŽIP FšU“П!L \sp_helpsrvrolemember<,ЗіУIP Ћ™U“8Ы!L Psp_tempdbspace<,œNJ P ЯušU“П!L \sp_statistics_rowset<,ЦƒJP ‡šU“П!L Xsp_helpdbfixedrole<,№ИJ P  ­™U“П!L Jsp_dboption<,џ4wKP ЮšU“П!L dsp_dbfixedrolepermission<,)?ЌK P Џ™U“П!L Psp_dbcmptlevel<,O6L P zwšU“П!L Tsp_tables_rowset<,8YkLP  šU“П!L Vsp_helprolemember<,bc LP dА™U“9Ы!L fsp_fallback_MS_sel_fb_svr<,q}_MP LšU“П!L Jsp_helprole<,›‡”MP 4В™U“П!L Lsp_validname<,ЊЁSNP ŽšU“П!L Psp_helpntgroup<,дЋˆNP ;Г™U“П!L Lsp_validlang<,ЙЛO P  zšU“П!L ^sp_tables_info_rowset<,уХGOP ЏšU“П!L Lxp_logininfo<, а|OP ŒД™U“П!L Nsp_addmessage<,ъ;PP xšU“П!L Xsp_addlinkedserver<,FєpPP ТЕ™U“П!L Rsp_addumpdevice<,U0QP ЕšU“П!L Nsp_dropserver<,eQP З™U“П!L Vsp_addremotelogin<,d(яQ P =|šU“П!L dsp_tables_info_rowset_64<,Ž2$RP ћšU“П!L Rsp_serveroption<,ИУ0P Ž šU“П!L \sp_dropsrvrolemember<,эHј0X sЁ™U“П!L Psp_prepexecrpc<,ЈNM1X kA›U“П!L Vxp_MSADSIObjRegDB<,вX‚1 P _^šU“П!L jsp_column_privileges_rowset<,ќbЗ1P t šU“П!L nsp_MSadduser_implicit_ntlogin<,&mь1X ЕЁ™U“П!L Lsp_unprepare<,сrA2X ЌA›U“)Ь!L Txp_MSLocalSystem<,5‡Ћ2P Ж šU“Ы!L lsp_MScheck_uid_owns_anything<,_‘р2X їЁ™U“П!L Tsp_cursorprepare<,—53X B›U“П!L Pxp_adsirequest<,nЋŸ3P ќ šU“П!L Tsp_grantdbaccess<,˜Ед3X 8Ђ™U“П!L Tsp_cursorexecute<,SЛ)4P vB›U“П!L dsp_ActiveDirectory_Start<,}Х^4 P 1ašU“П!L Vsp_columns_rowset<,ЇЯ“4P 9 šU“П!L Hsp_adduser<,бйШ4X zЂ™U“П!L Vsp_cursorprepexec<,Œп5P љB›U“П!L `sp_ActiveDirectory_SCP<,рѓ‡5P œ šU“П!L Vsp_revokedbaccess<, ўМ5X ЛЂ™U“П!L Xsp_cursorunprepare<,Х6P ЬC›U“П!L `sp_ActiveDirectory_Obj<,я G6 P јbšU“П!L jsp_check_constraints_rowset<,|6P н šU“П!L Jsp_dropuser<,C"Б6X #Ѓ™U“П!L Zsp_reset_connection<,ў'7P rE›U“Ы!L fsp_MSget_current_activity<,R›U“(Ь!L Nxp_MSplatform<,бэ( P ЇRšU“П!L Fsp_ddopen<,ћ")P НšU“П!L Vsp_validatelogins<,%'W)X )Ÿ™U“БјL Xsp_trace_setstatus<,р,Ќ)X Й>›U“тЪ!L Nxp_MSFullText<,4A*P ўšU“П!L Nxp_grantlogin<,^KK*X )Ÿ™U“)љL `sp_trace_generateevent<,Q *X ?›U“)Ь!L Lxp_IsNTAdmin<,C[е* P ŽVšU“П!L Jsp_tableswc<,me +P  šU“П!L Lsp_denylogin<,—o?+X ŒŸ™U“тЪ!L Jsp_sdidebug!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Мp&кz,о†0ъœDіЄNоŒ:юž>р–Fц†<є”Dт€ЬfЄRђЄJњ”JјЌ^ИnТ x $ и ˆ 8 ђ ˆ B ь Š : ъ  * Ю~(Ь€Д`І\ЈXІXШr(ш’HњЌ`,p8"|{‘ш†U0,S њLњL Fsysrscols0,S _љLњL Hsysrowsets0,S  ^љL$њL Nsysallocunits0,S |˜U“|˜U“ Fsysfiles10,S |њL€њL Nsyspriorities0,S њL њL Fsysdbfrag0,S  њLњL Fsysfgfrag0,S  њL њL @syspru0,S ! њL њL Nsysbrickfiles0,S  њLњL Bsysphfg0,S њLњL Jsysprufiles0,S xљLxљL Fsysftinds0,S  wљLwљL Fsysowners0,S  fљLfљL Dsysdbreg0,S \љL\љL Dsysprivs0,"S  mљLmљL Hsysschobjs0,'S  ЈљL=њL Psyslogshippers0,)S qљLqљL Hsyscolpars0,*S  jљLjљL Dsysxlgns0,+S  hљLhљL Dsysxsrvs0,,S pљLpљL Fsysnsobjs0,-S lљLlљL Jsysusermsgs0,.S  ГљLжњL Dsyscerts0,/S iљLiљL Hsysrmtlgns0,0S iљLiљL Hsyslnklgns0,1S zљLzљL Fsysxprops0,2S  WљLWљL Psysscalartypes0,3S  sљLsљL Rsystypedsubobjs0,6S  tљLtљL Jsysidxstats0,7S uљLЋњL Fsysiscols0,8S ЊљLЎљL Fsysendpts0,9S ЌљLЎљL Nsyswebmethods0,:S  ЂљLЅљL Hsysbinobjs0,;S њL’њL Hsysaudacts0,<S lљLlљL Lsysobjvalues0,@S oљLoљL Hsysclsobjs0,AS vљLvљL Nsysrowsetrefs0,CS ­љLБљL Psysremsvcbinds0,DS ЏљLБљL Lsysxmitqueue0,ES ЎљLВљL @sysrts0,GS ­љLЏљL Lsysconvgroup0,HS АљLВљL Fsysdesend0,IS БљL|њL Dsysdercv0,JS ZљLZљL Tsyssingleobjrefs0,KS [љL[љL Rsysmultiobjrefs0,NS ЄљLЇљL Jsysguidrefs0,PS ЉљLЋљL Nsyschildinsts0,RS ˜њLšњL Tsyscompfragments0,US ˜њLšњL Hsysftstops0,ZS ЅљLЈљL Fsysqnames0,[S  ІљLЉљL Rsysxmlcomponent0,\S ЇљLЉљL Jsysxmlfacet0,]S ЈљLЋљL Rsysxmlplacement0,^S ВљLДљL Rsysobjkeycrypts0,_S  ДљLИљL Jsysasymkeys0,`S  ЕљLpњL Lsyssqlguides!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!0ц”BјІ`Ф v , к † B ќ А p $ д † > ђ Њ b  Юˆ>ьœVЦ‚8ђЎj"вŠFМv,ъœ\а‚<юІ` Zaі|’^}8!!!!О` aŠp}’UUU& ‚ZMicrosoft.SqlServer.Types.SqlGeography& XMicrosoft.SqlServer.Types.SqlGeometry& €^Microsoft.SqlServer.Types.SqlHierarchyId!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!К` Zaі~”`^У8!!!!О` Z7і™`0^Ё 8!!!!О`6<Кк€Ќ Q"›#—.<<ЏЦ$M9'šU“лл›34€?m€?€?€?o€?z@€?Р€?й€?ˆ€? <<ЏЦ$SB'šU“лл€=CВ<жЙђ:NГ:Ш­жёAР6D€ЮCЛо?Р@€@§ъ“A.E\sŠЁИЯц§+B˜ADBBBBBB B@€?dB€€?m@' @џ€?pAџџџ<<|Щ+$@ZšU“ з#= з#= з#=ьQx@ШA€?ьQ8@(<PdxŒ ДШм№,@Th|€?"€?€?€?$€?0€?4€?8€?:€?@@€?>€?b€?c€?h€?j€?l€?z€?€?Ѕ€?Ї€?­€?Џ€?Н€?ч€?я<<|Щ+$­[šU“ зЃ=‰ˆˆ= з#= з#= і(М@ШA@€?ьQ8@*?Ti~“ЈНвчќ€?€?€?€?€?@€? €? €?€?€?H€@€@@@@@@‚@ƒ@‡0 "0<ЦIЇ> "0<8’@ "0<8’@ "0ЭЬЬ= €@ A@@*?Ti~“@j@l€?Ѕ€?Ї€?­€?Џ€?ч€?я<<’Jyt$T “7šU“ >>ЭЬЬ=d33‹A AffVA@@#Bgˆ­д§0€?#binary0€?char0@%decimal0€?!nchar0@%numeric0€?'nvarchar0€?)varbinary0€?%varchar<<Ыnmu$~$>9šU“$$ЋЊ*= з#=%I=>ј<9Žу<$Žу @B€?9Žу?€>@(<PdxŒ ДШм№,@Th|ЄИ€?"€?€?€?$@0@@4@8@:@;€?<@@@>€?b€?c€?h@j@l€?z@€?Ѕ€?Ї€?­€?Џ€?Н€?ч€?я0<уўkC "0<уўkC$УЧъЦ!LЧЧ6”W=ŠЮ;ЯЉЄ;мћAGCР@€@мЋAs+3˜БЪуќ.G`y’ЋФні(AZ@A€?A €@€?B A€?D ˆA€?D2 Р@€?DC €@€?E @@€?F @@€?F_U@€?G @A€?I ˜A€?J €@€?K ИA€?L р@€?LO PA€?LR Р@€?LS A€?O шA€?O9TA€?P џ ((A D 2 C F I J L R S O 9T@‚Р‚  ‚Рƒ@Ч!!w#§ѕлЙ—uS1э@ ­`‚1<Ш4’^0<$š?АќL__нШ >AЎ <&с—:nn@AРWDA€@ p‹ІСмї-Hc~™ДЯъ ;VqŒЇТнј.IdšЕаы!<WrЈУољ/Je€›Жбь " = X s Ž Љ Ф п њ  0 K f  œ З в э  # > Y t  Њ Х р ћ  1 L g ‚  И г ю $ ? Z u  Ћ Ц с ќ 2MhƒžЙдя`A€?A€?@A€?€@€?0A€?vЂ%A€?! A€?Z3іA€?“WъР@€?Р@€? @€? @€?B€?A€?јA€?pA€?A€?0A€?р@€?0A0A0A'€A€?) A A A+A€?, @€?- A€?. @€?/Р@€?0 @€?1PA€?2@A€?30A€?6р@€?7 A€?8 @€?9A€?:р@€?;Р@€?<A€?@Р@€?A @€?C A€?Dр@€?E€@€?G @€?HиA€?IР@Р@Р@K @€?NAAAR€@€?U€@€?Z@A€?[ @€?\р@€?]Р@€?^A€?_ A€?`Р@€?aA€?bР@€?ЏЦA€?|Щ+€@€?’JytАA€?Ыnmu@@€?“av€@€? @€?€@€?@€?@€?€@€@€@)@@@+€@€?,@€?.@@€?2€@€?3@@€?6€@€?7@€?8€@€?:@@€?@@€?C@@€?E @€?J @€?K€@€?N@@€?Zр@€?[@@€?]@€?_@€?`€@€?aР@€?b@@€?ЏЦ@€?@€?@@€?€@€?"@€?*@@@@@@2@@€?C@€?E@€?_€@€?`@@€?"@€?.Р@€?Р@Р@Р@Р@€?@@€?pApApA pA€? _0<$: зЏќLww€?AЎ <NNAюBAЊ В p‹ІСмї-Hc~™ДЯъ ;VqŒЇТнј.IdšЕаы!<WrЈУољ/Je€›Жбь"=XsŽЉФпњ 0 K f  œ З в э  # > Y t  €?€?€?€?€?€?€?€?€?vЂ%€?€?!€?€?€?“Wъ€?€?€?€?€?€?@€?€?€?€?€?@€?€?€?€?'€?@€?+€?€?€?-€?€?€?/€?€?€?1€?€?€?3€?€?6€?€?€?8€?€?€?:€?€?€?<€?€?@€?€?A€?@€?E€?@€?I€?€?€?K€?€?N€?€?€?R€?€?U€?€?Z€?€?€?\€?€?€?^€?€?€?`€?€?€?b€?€?ЏЦ€?€?|Щ+€?€?’Jyt€?€?€?“av€?€?€?€?€?€?€?€?€?€?€?€?€?)€?€?€?+€?€?,€?€?.€?€?2€?€?3€?€?6€?€?€?8€?€?:€?€?@€?€?C€?€?E€?€?J€?€?K€?€?N€?€?Z€?€?[€?@@€?a€?€?b€?€?ЏЦ€?€?€?€?€?€?€?€?"€?@€?2€?€?C€?€?E€?€?_€?€?`€?€?"€?€?.€?€?€?@@€?€?€?€? €?€? w!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!њ`Сп<|‚‚”n UUU<< "Z!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`„<Л =ƒВаG$9(Џ<чЄx} О8-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_upgradecatalog @upgradeVersion int as -- CHECK UPGRADE VERSION GIVEN (MUST MATCH EXPECTED) -- if @upgradeVersion <> 536 -- NOTE: This "error" is really an "Assertion", so no sysmessages... raiserror('sp_msupg_upgradecatalog detected inconsistent versioning!',22,127) with log -- CHECK PERMS: Db must require upgrade OR must be sysadmin if is_srvrolemember('sysadmin') = 0 and databaseproperty (db_name(), 'version') > @upgradeVersion -- NOTE: This "error" is really an "Assertion", so no sysmessages... raiserror('Permissions denied on sp_msupg_upgradecatalog!',22,127) with log -- EXEC THE UPGRADE PROCS (UNDONE: MAKE A SUBSET POSSIBLE?) -- exec sp_msupg_dropcatalogcomputedcols exec sp_msupg_dosystabcatalogupgrades exec sp_msupg_createcatalogcomputedcols exec sp_msupg_recreatecatalogfaketables exec sp_msupg_recreatesystemviews <іО7~ ž8create procedure sp_releaseapplock --- 1999/04/14 00:00 @Resource nvarchar (255) = NULL, -- Resource to unlock @LockOwner varchar (32) = 'Transaction' -- Lock Owner - [D = Transaction] as declare @owner integer declare @result integer declare @dbid integer select @owner = CASE @LockOwner When ('Transaction') Then 1 When ('Session') Then 3 Else -1 END if @owner = -1 begin raiserror(15625, -1, -1, @LockOwner, N'@LockOwner') return (-999) end select @dbid = db_id () exec @result = master.dbo.xp_userlock 1, @dbid, @Resource, 0, @owner return @result <йі~ е8 /* Procedure for 8.0 server */ create proc sp_databases as set nocount on declare @name sysname declare @SQL nvarchar(600) /* Use temporary table to sum up database size w/o using group by */ create table #databases ( DATABASE_NAME sysname NOT NULL, size int NOT NULL) declare c1 cursor for select name from master.dbo.sysdatabases where has_dbaccess(name) = 1 -- Only look at databases to which we have access open c1 fetch c1 into @name while @@fetch_status >= 0 begin select @SQL = 'insert into #databases select N'''+ @name + ''', sum(size) from ' + QuoteName(@name) + '.dbo.sysfiles' /* Insert row for each database */ execute (@SQL) fetch c1 into @name end deallocate c1 select DATABASE_NAME, DATABASE_SIZE = size*8,/* Convert from 8192 byte pages to K */ REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from #databases order by 1 </у+ Ќ8create procedure sp_logdevice @dbname sysname, @devicename sysname as declare @stmt nvarchar(1150) declare @countrows int declare @size nvarchar (10) declare @maxsize nvarchar (10) declare @growth nvarchar (10) declare @filename sysname set nocount on -- Make sure the database exists -- if not exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15010,-1,-1,@dbname) return (1) end -- Make sure the file exists and it should be in sysdevices as this is only -- for older syntax. -- if not exists (select * from master.dbo.sysdevices where name = @devicename) begin raiserror(15012,-1,-1,@devicename) return (1) end -- Calculate the specs of the current file and save it into a temp table -- create table #tempsize (size int, growth int, maxsize int, filename sysname collate database_default ) select @stmt = 'INSERT #tempsize SELECT size, growth, maxsize, filename FROM ' + @dbname + '.dbo.sysfiles WHERE name = ''' + @devicename + '''' exec (@stmt) select @countrows = count (*) from #tempsize -- disconnect with devices and database -- if @countrows <> 1 begin raiserror(15012,-1,-1,@devicename) return (1) end select @stmt = 'ALTER DATABASE ' + @dbname + ' REMOVE FILE ' + @devicename exec (@stmt) if @@error <> 0 begin raiserror(15319,-1,-1,@dbname,@devicename) return(1) end select @size = convert(nvarchar(10), size/128), @maxsize = convert(nvarchar(10), maxsize), @growth = convert(nvarchar(10), growth * 8), @filename = filename from #tempsize if (@maxsize = '-1') begin select @maxsize = 'UNLIMITED' end else begin select @maxsize = (convert (int, @maxsize)) / 128 end select @stmt = 'ALTER DATABASE ' + @dbname + ' ADD LOG FILE (NAME = [' + @devicename + '], FILENAME = [' + @filename + '], SIZE = ' + @size + ', MAXSIZE = ' + @maxsize + ', FILEGROWTH = ' + @growth + 'KB)' exec (@stmt) if @@error=0 begin raiserror(15318,-1,-1,@dbname,@devicename) end else begin raiserror(15319,-1,-1,@dbname,@devicename) return (1) end return (0) -- sp_logdevice !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!‘ М`…ƒ<ЊR„Љ<7"™,|<“} b8 /* Procedure for 8.0 server */ CREATE PROCEDURE sp_columns ( @table_name nvarchar(384), @table_owner nvarchar(384) = null, @table_qualifier sysname = null, @column_name nvarchar(384) = null, @ODBCVer int = 2) AS DECLARE @full_table_name nvarchar(769) DECLARE @table_id int if @ODBCVer <> 3 select @ODBCVer = 2 if @column_name is null /* If column name not supplied, match all */ select @column_name = '%' if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_name is null begin /* If table name not supplied, match all */ select @table_name = '%' end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = quotename(@table_name) end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @full_table_name = quotename(@table_owner) end else begin SELECT @full_table_name = quotename(@table_owner) + '.' + quotename(@table_name) end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) if ((isnull(charindex('%', @full_table_name),0) = 0) and (isnull(charindex('[', @table_name),0) = 0) and (isnull(charindex('[', @table_owner),0) = 0) and (isnull(charindex('_', @full_table_name),0) = 0) and @table_id <> 0) begin /* this block is for the case where there is no pattern matching required for the table name */ SELECT TABLE_QUALIFIER = convert(sysname,DB_NAME()), TABLE_OWNER = convert(sysname,USER_NAME(o.uid)), TABLE_NAME = convert(sysname,o.name), COLUMN_NAME = convert(sysname,c.name), d.DATA_TYPE, convert (sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME collate database_default end) TYPE_NAME, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, NULLABLE = convert(smallint, ColumnProperty (c.id, c.name, 'AllowsNull')), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254), substring('NO YES',(ColumnProperty (c.id, c.name, 'AllowsNull')*3)+1,3)), SS_DATA_TYPE = c.type FROM sysobjects o, master.dbo.spt_datatype_info d, systypes t, syscolumns c LEFT OUTER JOIN syscomments m on c.cdefault = m.id AND m.colid = 1 WHERE o.id = @table_id AND c.id = o.id AND t.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND (o.type not in ('P', 'FN', 'TF', 'IF') OR (o.type in ('TF', 'IF') and c.number = 0)) AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentity'),0) AND c.xusertype = t.xusertype AND c.name like @column_name ORDER BY 17 end else begin /* this block is for the case where there IS pattern matching done on the table name */ if @table_owner is null /* If owner not supplied, match all */ select @table_owner = '%' SELECT TABLE_QUALIFIER = convert(sysname,DB_NAME()), TABLE_OWNER = convert(sysname,USER_NAME(o.uid)), TABLE_NAME = convert(sysname,o.name), COLUMN_NAME = convert(sysname,c.name), d.DATA_TYPE, convert (sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME collate database_default end) TYPE_NAME, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, NULLABLE = convert(smallint, ColumnProperty (c.id, c.name, 'AllowsNull')), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254), rtrim(substring('NO YES',(ColumnProperty (c.id, c.name, 'AllowsNull')*3)+1,3))), SS_DATA_TYPE = c.type FROM sysobjects o, master.dbo.spt_datatype_info d, systypes t, syscolumns c LEFT OUTER JOIN syscomments m on c.cdefault = m.id AND m.colid = 1 WHERE o.name like @table_name AND user_name(o.uid) like @table_owner AND o.id = c.id AND t.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND (o.type not in ('P', 'FN', 'TF', 'IF') OR (o.type in ('TF', 'IF') and c.number = 0)) AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentity'),0) AND c.xusertype = t.xusertype AND c.name like @column_name ORDER BY 2, 3, 17 end <НšC} 8create procedure sp_getapplock --- 1999/04/14 00:00 @Resource nvarchar (255) = NULL, -- Resource to lock @LockMode varchar (32), -- Lock mode @LockOwner varchar (32) = 'Transaction', -- Lock Owner - [D = Transaction] @LockTimeout int = NULL -- Lock timeout [D = Session setting] as declare @mode integer declare @owner integer declare @result integer declare @dbid integer select @mode = CASE @LockMode When ('Shared') Then 3 When ('Update') Then 4 When ('Exclusive') Then 5 When ('IntentExclusive') Then 8 When ('IntentShared') Then 6 Else -1 END if @mode = -1 begin raiserror(15625, -1, -1, @LockMode, N'@LockMode') return (-999) end select @owner = CASE @LockOwner When ('Transaction') Then 1 When ('Session') Then 3 Else -1 END if @owner = -1 begin raiserror(15625, -1, -1, @LockOwner, N'@LockOwner') return (-999) end if @LockTimeout is null begin set @LockTimeout = @@LOCK_TIMEOUT end select @dbid = db_id () if @owner = 1 and @@trancount = 0 begin raiserror(15626, -1, -1) return (-999) end exec @result = master.dbo.xp_userlock 0, @dbid, @Resource, @mode, @owner, @LockTimeout return @result !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Т`†„<TЄ…Вh=$“­4 <KR[{ l 8create procedure sp_indexoption @IndexNamePattern nvarchar(776) ,@OptionName varchar(35) ,@OptionValue varchar(12) as -- DECLARE VARIABLES DECLARE @tabid int ,@indid int ,@uid int ,@intOptionValue int ,@flagbit int ,@tablename nvarchar(776) -- DISALLOW USER TRANSACTION -- Set nocount on set implicit_transactions off IF @@trancount > 0 begin raiserror(15002,-1,-1,'sp_indexoption') RETURN @@ERROR end -- VALIDATE OPTION VALUE SELECT @intOptionValue = CASE WHEN (lower(@OptionValue) in ('1' ,'on' ,'yes' ,'true')) THEN 1 WHEN (lower(@OptionValue) in ('0' ,'off' ,'no' ,'false')) THEN 0 ELSE NULL END -- CONVERT ANY OLD-STYLE PARAM TO NEW-STYLE, THEN VALIDATE OPTION NAME IF lower(@OptionName) IN ('allowrowlocks','allowpagelocks') SELECT @OptionName = 'dis'+@OptionName, @intOptionValue = 1-@intOptionValue SELECT @flagbit = CASE lower(@OptionName) WHEN 'disallowrowlocks' THEN 1 WHEN 'disallowpagelocks' THEN 2 ELSE NULL END -- ERROR IF INVALID OPTION NAME OR VALUE IF @intOptionValue IS NULL OR @flagbit IS NULL begin raiserror(15600,-1,-1, 'sp_indexoption') RETURN @@ERROR end -- FIRST CHECK IF GIVEN AN TABLE NAME -- SELECT @tabid = id, @uid = uid FROM sysobjects WHERE id = OBJECT_ID(@IndexNamePattern, 'local') AND xtype = 'U' IF @tabid IS NULL BEGIN -- NOW SEE IF WE HAVE TABLE.INDEX NAME, AND RESOLVE -- SELECT @tablename = IsNull(QuoteName(parsename(@IndexNamePattern, 4),'[')+'.','.') + IsNull(QuoteName(parsename(@IndexNamePattern, 3),'[')+'.','.') + IsNull(QuoteName(parsename(@IndexNamePattern, 2),'['),'') SELECT @tabid = OBJECT_ID(@tablename, 'U') SELECT @uid = ObjectProperty(@tabid, 'OwnerId'), @indid = IndexProperty(@tabid, parsename(@IndexNamePattern, 1), 'IndexId') IF @indid IN (0,255) SELECT @indid = NULL END ELSE SELECT @tablename = @IndexNamePattern, @indid = 0 -- indicate all-indexes-for-table -- WE KNOW NOW IF WE HAVE A VALID TABLE/INDEX -- IF @tabid IS NULL OR @uid IS NULL OR @indid IS NULL BEGIN raiserror(15388,-1,-1,@IndexNamePattern) RETURN @@ERROR END -- DO THE WORK (DBCC LOCKOBJECTSCHEMA will check permissions) -- BEGIN TRAN DBCC LOCKOBJECTSCHEMA (@tablename) dbcc invalidate_textptr_objid(@tabid) -- Invalidate inrow text pointers for table UPDATE sysindexes SET lockflags = (lockflags & ~@flagbit) | (@flagbit * @intOptionValue) WHERE id = @tabid AND (indid = @indid OR @indid = 0) COMMIT TRAN -- RETURN SUCCESS RETURN 0 -- sp_indexoption <u\{ D€8‡~hП€,Ш<„vO| ž8create procedure sp_lock --- 1996/04/08 00:00 @spid1 int = NULL, /* server process id to check for locks */ @spid2 int = NULL /* other process id to check for locks */ as set nocount on /* ** Show the locks for both parameters. */ if @spid1 is not NULL begin select convert (smallint, req_spid) As spid, rsc_dbid As dbid, rsc_objid As ObjId, rsc_indid As IndId, substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 16) as Resource, substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Status from master.dbo.syslockinfo, master.dbo.spt_values v, master.dbo.spt_values x, master.dbo.spt_values u where master.dbo.syslockinfo.rsc_type = v.number and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.number and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L' and req_spid in (@spid1, @spid2) end /* ** No parameters, so show all the locks. */ else begin select convert (smallint, req_spid) As spid, rsc_dbid As dbid, rsc_objid As ObjId, rsc_indid As IndId, substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 16) as Resource, substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Status from master.dbo.syslockinfo, master.dbo.spt_values v, master.dbo.spt_values x, master.dbo.spt_values u where master.dbo.syslockinfo.rsc_type = v.number and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.number and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L' order by spid end return (0) -- sp_lock <Ў€„| і8-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_recreatesystemviews as IF OBJECT_ID('syssegments') IS NOT NULL DROP VIEW syssegments EXEC ( 'CREATE VIEW syssegments (segment, name, status) AS SELECT 0, ''system'' , 0 UNION SELECT 1, ''default'' , 1 UNION SELECT 2, ''logsegment'' , 0 ') -- Mark this user db view as being system object UPDATE sysobjects set status = status|0x80000000 WHERE name='syssegments' and uid=1 GRANT SELECT ON syssegments TO PUBLIC IF OBJECT_ID('sysconstraints') IS NOT NULL DROP VIEW sysconstraints EXEC ( 'CREATE VIEW sysconstraints AS SELECT constid = convert(int, id), id = convert(int, parent_obj), colid = convert(smallint, info), spare1 = convert(tinyint, 0), status = convert(int, CASE xtype WHEN ''PK'' THEN 1 WHEN ''UQ'' THEN 2 WHEN ''F'' THEN 3 WHEN ''C'' THEN 4 WHEN ''D'' THEN 5 ELSE 0 END + CASE WHEN info != 0 -- CNST_COLUMN / CNST_TABLE THEN (16) ELSE (32) END + CASE WHEN (status & 16)!=0 -- CNST_CLINDEX THEN (512) ELSE 0 END + CASE WHEN (status & 32)!=0 -- CNST_NCLINDEX THEN (1024) ELSE 0 END + (2048) -- CNST_NOTDEFERRABLE + CASE WHEN (status & 256)!=0 -- CNST_DISABLE THEN (16384) ELSE 0 END + CASE WHEN (status & 512)!=0 -- CNST_ENABLE THEN (32767) ELSE 0 END + CASE WHEN (status & 4)!=0 -- CNST_NONAME THEN (131072) ELSE 0 END + CASE WHEN (status & 1)!=0 -- CNST_NEW THEN (1048576) ELSE 0 END + CASE WHEN (status & 1024)!=0 -- CNST_REPL THEN (2097152) ELSE 0 END), actions = convert(int, 4096), error = convert(int, 0) FROM sysobjects WHERE xtype in (''C'', ''F'', ''PK'', ''UQ'', ''D'') AND (status & 64) = 0 ') -- Mark this user db view as being system object UPDATE sysobjects set status = status|0x80000000 WHERE name='sysconstraints' and uid=1 GRANT SELECT ON sysconstraints TO PUBLIC IF OBJECT_ID('sysalternates') IS NOT NULL DROP VIEW sysalternates !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ў Ь `‡…<UЇ†ВP;$Но“c<.gz 8CREATE PROCEDURE sp_helpuser --- 1996/08/14 10:33 @name_in_db sysname = NULL --User,Group,Alias AS Set nocount on Set ansi_warnings off Declare @RetCode int ,@_rowcount int Declare @charMaxLen_UsName varchar(11) ,@charMaxLen_GrName varchar(11) ,@charMaxLen_LoName varchar(11) ,@charMaxLen_DbName varchar(11) Declare @Name1Type char(2) ,@CMaxUsUID smallint ----------------------- create holding table -------------------- /*Create temp table before any DML to ensure dynamic*/ Create Table #tb1_uga ( zUserName sysname collate database_default Null ,zGroupName sysname collate database_default Null ,zLoginName sysname collate database_default Null ,zDefDBName sysname collate database_default Null ,zUID smallint Null ,zSID varbinary(85) Null ) -------- Select @RetCode = 0 ,@Name1Type = Null ,@CMaxUsUID = 16383 ------------- What type of value (U,G,A) was input? -------------- -------- NULL IF (@name_in_db IS Null) begin Select @Name1Type = '-' INSERT into #tb1_uga ( zUserName ,zGroupName ,zLoginName ,zDefDBName ,zUID ,zSID ) SELECT usu.name ,case when (usg.uid is null) then 'public' else usg.name end ,lo.loginname ,lo.dbname ,usu.uid ,usu.sid from sysusers usu left outer join (sysmembers mem inner join sysusers usg on mem.groupuid = usg.uid) on usu.uid = mem.memberuid left outer join master.dbo.syslogins lo on usu.sid = lo.sid where (usu.islogin = 1 and usu.isaliased = 0 and usu.hasdbaccess = 1) and (usg.issqlrole = 1 or usg.uid is null) GOTO LABEL_25NAME1TYPEKNOWN end -------- USER INSERT into #tb1_uga ( zUserName ,zGroupName ,zLoginName ,zDefDBName ,zUID ,zSID ) SELECT usu.name ,case when (usg.uid is null) then 'public' else usg.name end ,lo.loginname ,lo.dbname ,usu.uid ,usu.sid from sysusers usu left outer join (sysmembers mem inner join sysusers usg on mem.groupuid = usg.uid) on usu.uid = mem.memberuid left outer join master.dbo.syslogins lo on usu.sid = lo.sid where (usu.islogin = 1 and usu.isaliased = 0 and usu.hasdbaccess = 1) and (usg.issqlrole = 1 or usg.uid is null) and usu.name = @name_in_db Select @_rowcount = @@rowcount IF (@_rowcount > 0) begin Select @Name1Type = 'US' GOTO LABEL_25NAME1TYPEKNOWN end -------- ALIAS INSERT into #tb1_uga ( zUserName ,zGroupName ,zLoginName ,zDefDBName ,zUID ,zSID ) SELECT usu.name ,case when (usg.uid is null) then 'public' else usg.name end ,lo.loginname ,lo.dbname ,usu.uid ,usu.sid from (SELECT sid, altuid FROM sysusers WHERE isaliased = 1) al inner join (sysusers usu left outer join (sysmembers mem inner join sysusers usg on mem.groupuid = usg.uid) on usu.uid = mem.memberuid left outer join master.dbo.syslogins lo on usu.sid = lo.sid) on al.altuid = usu.uid where (usu.islogin = 1 and usu.isaliased = 0) and (usg.issqlrole = 1 or usg.uid is null) and al.sid = suser_sid(@name_in_db) Select @_rowcount = @@rowcount IF (@_rowcount > 0) begin Select @Name1Type = 'AL' GOTO LABEL_25NAME1TYPEKNOWN end -------- GROUP IF EXISTS (SELECT * FROM sysusers WHERE name = @name_in_db AND (issqlrole = 1) ) begin Select @Name1Type = 'GR' Execute sp_helpgroup @name_in_db GOTO LABEL_75FINAL --Done end -------- Error Raiserror(15198,-1,-1 ,@name_in_db) --Input Name is unfound Select @RetCode = @RetCode | 1 GOTO LABEL_75FINAL -------- LABEL_25NAME1TYPEKNOWN: ----------------------- Printout the report ------------------------- -------- Preparations for dynamic exec SELECT @charMaxLen_UsName = convert( varchar, isnull( max( datalength( zUserName)),8)) ,@charMaxLen_GrName = convert( varchar, isnull( max( datalength( zGroupName)),9)) ,@charMaxLen_LoName = convert( varchar, isnull( max( datalength( zLoginName)),9)) ,@charMaxLen_DbName = convert( varchar, isnull( max( datalength( zDefDBName)),9)) from #tb1_uga -------- Dynamic EXEC() to printout report EXECUTE( ' SELECT ''UserName'' = substring(zUserName ,1,' + @charMaxLen_UsName + ') ,''GroupName'' = substring(zGroupName,1,' + @charMaxLen_GrName + ') ,''LoginName'' = substring(zLoginName,1,' + @charMaxLen_LoName + ') ,''DefDBName'' = substring(zDefDBName,1,' + @charMaxLen_DbName + ') ,''UserID'' = convert(char(6),zUID) ,''SID'' = zSID from #tb1_uga order by 1 ' ) ----------------------- A little extra nice-to-have IF (@Name1Type IN ('-','US')) begin IF EXISTS (SELECT * FROM #tb1_uga tb1 ,(SELECT altuid FROM sysusers WHERE isaliased = 1) al, sysusers us WHERE tb1.zUID = us.uid and us.uid = al.altuid ) begin SELECT 'LoginName' = suser_sname(al.sid) ,'UserNameAliasedTo' = tb1.zUserName from #tb1_uga tb1 ,(SELECT sid, altuid FROM sysusers WHERE isaliased = 1) al, sysusers us WHERE tb1.zUID = us.uid and us.uid = al.altuid order by 1 end end ----------------------- Finalization ---------------------- LABEL_75FINAL: IF (object_id('tempdb..#tb1_uga') IS not Null) Drop Table #tb1_uga return (0) -- sp_helpuser <<8œz -8-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_dropcatalogcomputedcols as EXEC sp_msupg_removesystemcomputedcolumns sysobjects EXEC sp_msupg_removesystemcomputedcolumns sysindexes EXEC sp_msupg_removesystemcomputedcolumns syscolumns EXEC sp_msupg_removesystemcomputedcolumns systypes EXEC sp_msupg_removesystemcomputedcolumns syscomments EXEC sp_msupg_removesystemcomputedcolumns sysdepends EXEC sp_msupg_removesystemcomputedcolumns sysreferences EXEC sp_msupg_removesystemcomputedcolumns sysusers !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!z`ˆ†<FЖ‡ВH :$LЗ:<й sy 8create procedure sp_helptext --- 1996/04/08 00:00 @objname nvarchar(776) ,@columnname sysname = NULL as set nocount on declare @dbname sysname ,@BlankSpaceAdded int ,@BasePos int ,@CurrentPos int ,@TextLength int ,@LineId int ,@AddOnLen int ,@LFCR int --lengths of line feed carriage return ,@DefinedLength int /* NOTE: Length of @SyscomText is 4000 to replace the length of ** text column in syscomments. ** lengths on @Line, #CommentText Text column and ** value for @DefinedLength are all 255. These need to all have ** the same values. 255 was selected in order for the max length ** display using down level clients */ ,@SyscomText nvarchar(4000) ,@Line nvarchar(255) Select @DefinedLength = 255 SELECT @BlankSpaceAdded = 0 /*Keeps track of blank spaces at end of lines. Note Len function ignores trailing blank spaces*/ CREATE TABLE #CommentText (LineId int ,Text nvarchar(255) collate database_default) /* ** Make sure the @objname is local to the current database. */ select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end /* ** See if @objname exists. */ if (object_id(@objname) is null) begin select @dbname = db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end -- If second parameter was given. if ( @columnname is not null) begin -- Check if it is a table if (select count(*) from sysobjects where id = object_id(@objname) and xtype in ('S ','U ','TF'))=0 begin raiserror(15218,-1,-1,@objname) return(1) end -- check if it is a correct column name if ((select 'count'=count(*) from syscolumns where name = @columnname and id = object_id(@objname) and number = 0) =0) begin raiserror(15645,-1,-1,@columnname) return(1) end if ((select iscomputed from syscolumns where name = @columnname and id = object_id(@objname) and number = 0) = 0) begin raiserror(15646,-1,-1,@columnname) return(1) end DECLARE ms_crs_syscom CURSOR LOCAL FOR SELECT text FROM syscomments WHERE id = object_id(@objname) and encrypted = 0 and number = (select colid from syscolumns where name = @columnname and id = object_id(@objname) and number = 0) order by number,colid FOR READ ONLY end else begin /* ** Find out how many lines of text are coming back, ** and return if there are none. */ if (select count(*) from syscomments c, sysobjects o where o.xtype not in ('S', 'U') and o.id = c.id and o.id = object_id(@objname)) = 0 begin raiserror(15197,-1,-1,@objname) return (1) end if (select count(*) from syscomments where id = object_id(@objname) and encrypted = 0) = 0 begin raiserror(15471,-1,-1) return (0) end DECLARE ms_crs_syscom CURSOR LOCAL FOR SELECT text FROM syscomments WHERE id = OBJECT_ID(@objname) and encrypted = 0 ORDER BY number, colid FOR READ ONLY end /* ** Else get the text. */ SELECT @LFCR = 2 SELECT @LineId = 1 OPEN ms_crs_syscom FETCH NEXT FROM ms_crs_syscom into @SyscomText WHILE @@fetch_status >= 0 BEGIN SELECT @BasePos = 1 SELECT @CurrentPos = 1 SELECT @TextLength = LEN(@SyscomText) WHILE @CurrentPos != 0 BEGIN --Looking for end of line followed by carriage return SELECT @CurrentPos = CHARINDEX(char(13)+char(10), @SyscomText, @BasePos) --If carriage return found IF @CurrentPos != 0 BEGIN /*If new value for @Lines length will be > then the **set length then insert current contents of @line **and proceed. */ While (isnull(LEN(@Line),0) + @BlankSpaceAdded + @CurrentPos-@BasePos + @LFCR) > @DefinedLength BEGIN SELECT @AddOnLen = @DefinedLength-(isnull(LEN(@Line),0) + @BlankSpaceAdded) INSERT #CommentText VALUES ( @LineId, isnull(@Line, N'') + isnull(SUBSTRING(@SyscomText, @BasePos, @AddOnLen), N'')) SELECT @Line = NULL, @LineId = @LineId + 1, @BasePos = @BasePos + @AddOnLen, @BlankSpaceAdded = 0 END SELECT @Line = isnull(@Line, N'') + isnull(SUBSTRING(@SyscomText, @BasePos, @CurrentPos-@BasePos + @LFCR), N'') SELECT @BasePos = @CurrentPos+2 INSERT #CommentText VALUES( @LineId, @Line ) SELECT @LineId = @LineId + 1 SELECT @Line = NULL END ELSE --else carriage return not found BEGIN IF @BasePos <= @TextLength BEGIN /*If new value for @Lines length will be > then the **defined length */ While (isnull(LEN(@Line),0) + @BlankSpaceAdded + @TextLength-@BasePos+1 ) > @DefinedLength BEGIN SELECT @AddOnLen = @DefinedLength - (isnull(LEN(@Line),0) + @BlankSpaceAdded ) INSERT #CommentText VALUES ( @LineId, isnull(@Line, N'') + isnull(SUBSTRING(@SyscomText, @BasePos, @AddOnLen), N'')) SELECT @Line = NULL, @LineId = @LineId + 1, @BasePos = @BasePos + @AddOnLen, @BlankSpaceAdded = 0 END SELECT @Line = isnull(@Line, N'') + isnull(SUBSTRING(@SyscomText, @BasePos, @TextLength-@BasePos+1 ), N'') if LEN(@Line) < @DefinedLength and charindex(' ', @SyscomText, @TextLength+1 ) > 0 BEGIN SELECT @Line = @Line + ' ', @BlankSpaceAdded = 1 END END END END FETCH NEXT FROM ms_crs_syscom into @SyscomText END IF @Line is NOT NULL INSERT #CommentText VALUES( @LineId, @Line ) select Text from #CommentText order by LineId CLOSE ms_crs_syscom DEALLOCATE ms_crs_syscom DROP TABLE #CommentText return (0) -- sp_helptext <Јy D€8<hОŸ"Ж!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!r`‰‡<šbˆВ@9${к–n<ЪяГx Я8-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_recreatecatalogfaketables as begin IF OBJECT_ID('sysindexkeys') IS NOT NULL DROP TABLE sysindexkeys CREATE TABLE sysindexkeys ( id int NOT NULL, indid smallint NOT NULL, colid smallint NOT NULL, keyno smallint NOT NULL ) GRANT SELECT ON sysindexkeys TO PUBLIC IF OBJECT_ID('sysforeignkeys') IS NOT NULL DROP TABLE sysforeignkeys CREATE TABLE sysforeignkeys ( constid int NOT NULL, fkeyid int NOT NULL, rkeyid int NOT NULL, fkey smallint NOT NULL, rkey smallint NOT NULL, keyno smallint NOT NULL ) GRANT SELECT ON sysforeignkeys TO PUBLIC IF OBJECT_ID('sysmembers') IS NOT NULL DROP TABLE sysmembers CREATE TABLE sysmembers ( memberuid smallint NOT NULL, groupuid smallint NOT NULL ) GRANT SELECT ON sysmembers TO PUBLIC IF OBJECT_ID('sysprotects') IS NOT NULL DROP TABLE sysprotects CREATE TABLE sysprotects ( id int NOT NULL, uid smallint NOT NULL, action tinyint NOT NULL, protecttype tinyint NOT NULL, columns varbinary(4000) NULL, grantor smallint NOT NULL ) GRANT SELECT ON sysprotects TO PUBLIC IF OBJECT_ID('sysfiles') IS NOT NULL DROP TABLE sysfiles CREATE TABLE sysfiles ( fileid smallint NOT NULL, groupid smallint NOT NULL, size int NOT NULL, maxsize int NOT NULL, growth int NOT NULL, status int NOT NULL, perf int NOT NULL, name nchar (128) NOT NULL, filename nchar (260) NOT NULL ) GRANT SELECT ON sysfiles TO PUBLIC end <Џџ=y 38 /* Procedure for 8.0 server */ CREATE PROCEDURE sp_column_privileges ( @table_name sysname, @table_owner sysname = null, @table_qualifier sysname = null, @column_name nvarchar(384) = null) /* 3*128 */ as declare @table_id int if @column_name is null /* If column name not supplied, match all */ select @column_name = '%' if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_owner is null begin /* If unqualified table name */ select @table_id = object_id(quotename(@table_name)) end else begin /* Qualified table name */ if @table_owner = N'' begin /* If empty owner name */ select @table_id = 0 end else begin select @table_id = object_id(quotename(@table_owner) + '.' + quotename(@table_name)) end end select convert(sysname,db_name()) TABLE_QUALIFIER, convert(sysname,user_name(o.uid)) TABLE_OWNER, @table_name TABLE_NAME, convert(sysname,c.name) COLUMN_NAME, convert(sysname,user_name(p.grantor)) GRANTOR, convert(sysname,user_name(u.uid)) GRANTEE, convert (varchar(32),case p.action when 193 then 'SELECT' when 195 then 'INSERT' when 197 then 'UPDATE' else 'REFERENCES' end) PRIVILEGE, convert (varchar(3),case when p.protecttype = 205 then 'NO' else 'YES' end) IS_GRANTABLE from sysprotects p, sysobjects o, sysusers u, master.dbo.spt_values v, syscolumns c, sysmembers m where c.id = @table_id and c.name like @column_name and c.id = p.id and c.id = o.id and case substring(p.columns, 1, 1) & 1 when NULL then 255 /* all columns have permission */ when 0 then convert(tinyint, substring(p.columns, v.low, 1)) else (~convert(tinyint, isnull(substring(p.columns, v.low, 1),0))) end & v.high <> 0 /* permission applies to this column */ and v.number <= (select count(*) from syscolumns where id = @table_id) /* ranges from 1 to # of columns in table */ and v.type = N'P' and v.number = c.colid /* expand groups - AKUNDONE: only 1 level of group unrolling here. Need more?? */ and (u.uid > 0 and u.uid < 16384) and ((p.uid = u.uid) or (p.uid = m.groupuid and u.uid = m.memberuid)) and p.protecttype <> 206 /* only grant rows */ and p.action in (26,193,195,197) and o.uid <> u.uid /* no rows for owner */ and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = p.action and p1.id = p.id and p1.uid = u.uid and case substring(p1.columns, 1, 1) & 1 when NULL then 255 /* all columns have permission */ when 0 then convert(tinyint, substring(p1.columns, v.low, 1)) else (~convert(tinyint,isnull(substring(p.columns, v.low, 1),0))) end & v.high <> 0) /* permission applies to this column */ union select /* Add rows for table owner */ convert(sysname,db_name()) TABLE_QUALIFIER, convert(sysname,user_name(o.uid)) TABLE_OWNER, @table_name TABLE_NAME, convert(sysname,col_name(@table_id, c.colid)) COLUMN_NAME, convert(sysname,user_name(u.uid)) grantor, convert(sysname,user_name(o.uid)) grantee, convert (varchar(32),case v.number when 193 then 'SELECT' when 195 then 'INSERT' when 197 then 'UPDATE' else 'REFERENCES' end) PRIVILEGE, convert(varchar(3),'YES') IS_GRANTABLE from sysobjects o, master.dbo.spt_values v, sysusers u, syscolumns c where c.id = @table_id and c.name like @column_name and c.id = o.id and u.uid = 1 /* grantor is 'dbo' of database */ and v.type = N'P' /* cross product to get all exposed privileges */ and v.number in (26,193,195,197) and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = v.number and p1.id = o.id and p1.uid = o.uid) order by 4, 7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!/`Šˆ<ўў‰ЉІ7"Nт]м<gСŠw Z8create proc sp_help @objname nvarchar(776) = NULL -- object name we're after as -- PRELIMINARY set nocount on declare @dbname sysname -- OBTAIN DISPLAY STRINGS FROM spt_values UP FRONT -- declare @no varchar(35), @yes varchar(35), @none varchar(35) select @no = name from master.dbo.spt_values where type = 'B' and number = 0 select @yes = name from master.dbo.spt_values where type = 'B' and number = 1 select @none = name from master.dbo.spt_values where type = 'B' and number = 2 -- If no @objname given, give a little info about all objects. if @objname is null begin -- DISPLAY ALL SYSOBJECTS -- select 'Name' = o.name, 'Owner' = user_name(uid), 'Object_type' = substring(v.name,5,31) from sysobjects o, master.dbo.spt_values v where o.xtype = substring(v.name,1,2) collate database_default and v.type = 'O9T' order by Object_type desc, Name asc print ' ' -- DISPLAY ALL USER TYPES select 'User_type' = name, 'Storage_type' = type_name(xtype), 'Length' = length, 'Prec' = TypeProperty(name, 'precision'), 'Scale' = TypeProperty(name, 'scale'), 'Nullable' = case when TypeProperty(name, 'AllowsNull') = 1 then @yes else @no end, 'Default_name' = isnull(object_name(tdefault), @none), 'Rule_name' = isnull(object_name(domain), @none), 'Collation' = collation from systypes where xusertype > 256 order by name return(0) end -- Make sure the @objname is local to the current database. select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return(1) end -- @objname must be either sysobjects or systypes: first look in sysobjects declare @objid int declare @sysobj_type char(2) select @objid = id, @sysobj_type = xtype from sysobjects where id = object_id(@objname) -- IF NOT IN SYSOBJECTS, TRY SYSTYPES -- if @objid is null begin -- UNDONE: SHOULD CHECK FOR AND DISALLOW MULTI-PART NAME select @objid = xusertype from systypes where name = @objname -- IF NOT IN SYSTYPES, GIVE UP if @objid is null begin select @dbname=db_name() raiserror(15009,-1,-1,@objname,@dbname) return(1) end -- DATA TYPE HELP (prec/scale only valid for numerics) select 'Type_name' = name, 'Storage_type' = type_name(xtype), 'Length' = length, 'Prec' = TypeProperty(name, 'precision'), 'Scale' = TypeProperty(name, 'scale'), 'Nullable' = case when allownulls=1 then @yes else @no end, 'Default_name' = isnull(object_name(tdefault), @none), 'Rule_name' = isnull(object_name(domain), @none), 'Collation' = collation from systypes where xusertype = @objid return(0) end -- FOUND IT IN SYSOBJECT, SO GIVE OBJECT INFO select 'Name' = o.name, 'Owner' = user_name(uid), 'Type' = substring(v.name,5,31), 'Created_datetime' = o.crdate from sysobjects o, master.dbo.spt_values v where o.id = @objid and o.xtype = substring(v.name,1,2) collate database_default and v.type = 'O9T' print ' ' -- DISPLAY COLUMN IF TABLE / VIEW if @sysobj_type in ('S ','U ','V ','TF','IF') begin -- SET UP NUMERIC TYPES: THESE WILL HAVE NON-BLANK PREC/SCALE declare @numtypes nvarchar(80) select @numtypes = N'tinyint,smallint,decimal,int,real,money,float,numeric,smallmoney' -- INFO FOR EACH COLUMN print ' ' select 'Column_name' = name, 'Type' = type_name(xusertype), 'Computed' = case when iscomputed = 0 then @no else @yes end, 'Length' = convert(int, length), 'Prec' = case when charindex(type_name(xtype), @numtypes) > 0 then convert(char(5),ColumnProperty(id, name, 'precision')) else ' ' end, 'Scale' = case when charindex(type_name(xtype), @numtypes) > 0 then convert(char(5),OdbcScale(xtype,xscale)) else ' ' end, 'Nullable' = case when isnullable = 0 then @no else @yes end, 'TrimTrailingBlanks' = case ColumnProperty(@objid, name, 'UsesAnsiTrim') when 1 then @no when 0 then @yes else '(n/a)' end, 'FixedLenNullInSource' = case when type_name(xtype) not in ('varbinary','varchar','binary','char') Then '(n/a)' When status & 0x20 = 0 Then @no Else @yes END, 'Collation' = collation from syscolumns where id = @objid and number = 0 order by colid -- IDENTITY COLUMN? if @sysobj_type in ('S ','U ','V ','TF') begin print ' ' declare @colname sysname select @colname = name from syscolumns where id = @objid and colstat & 1 = 1 select 'Identity' = isnull(@colname,'No identity column defined.'), 'Seed' = ident_seed(@objname), 'Increment' = ident_incr(@objname), 'Not For Replication' = ColumnProperty(@objid, @colname, 'IsIDNotForRepl') -- ROWGUIDCOL? print ' ' select @colname = null select @colname = name from syscolumns where id = @objid and number = 0 and ColumnProperty(@objid, name, 'IsRowGuidCol') = 1 select 'RowGuidCol' = isnull(@colname,'No rowguidcol column defined.') end end -- DISPLAY PROC PARAMS if @sysobj_type in ('P ') --RF too? begin -- ANY PARAMS FOR THIS PROC? if exists (select id from syscolumns where id = @objid) begin -- INFO ON PROC PARAMS print ' ' select 'Parameter_name' = name, 'Type' = type_name(xusertype), 'Length' = length, 'Prec' = case when type_name(xtype) = 'uniqueidentifier' then xprec else OdbcPrec(xtype, length, xprec) end, 'Scale' = OdbcScale(xtype,xscale), 'Param_order' = colid, 'Collation' = collation from syscolumns where id = @objid end end -- DISPLAY TABLE INDEXES & CONSTRAINTS if @sysobj_type in ('S ','U ') begin print ' ' execute sp_objectfilegroup @objid print ' ' execute sp_helpindex @objname print ' ' execute sp_helpconstraint @objname,'nomsg' if (select count(*) from sysdepends where depid = @objid and deptype = 1) = 0 begin raiserror(15647,-1,-1) -- 'No views with schemabinding reference this table.' end else begin select distinct 'Table is referenced by views' = obj.name from sysobjects obj, sysdepends deps where obj.xtype ='V' and obj.id = deps.id and deps.depid = @objid and deps.deptype = 1 group by obj.name end end else if @sysobj_type in ('V ') begin -- VIEWS DONT HAVE CONSTRAINTS, BUT PRINT THESE MESSAGES BECAUSE 6.5 DID print ' ' raiserror(15469,-1,-1) -- No constraints defined print ' ' raiserror(15470,-1,-1) --'No foreign keys reference this table.' execute sp_helpindex @objname end return (0) -- sp_help < х~x D€8лhНU)С!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!К`‹‰<ё ŠЉl7"е(хЅ<ѕxЂu K 8 create proc sp_helpstats @objname nvarchar(520), -- the table to check for statistics (to accomodate for 2 part names) @results nvarchar(5) = 'STATS' -- 'ALL' returns indexes & stats, 'STATS' returns just stats as -- PRELIM set nocount on declare @objid int, -- the object id of the table @indid smallint, -- the index id of an index @indname sysname, @keys nvarchar(2078),-- string build index key list, length = (16*max_id_length)+(15*2) @dbname sysname, @i int, @thiskey sysname, @curs cursor -- Check to see the the table exists and initialize @objid. select @objid = object_id(@objname, 'local') if @objid is NULL begin select @dbname=db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end If UPPER(@results) <> 'STATS' and UPPER(@results)<> 'ALL' BEGIN raiserror(N'Invalid option: %s', 1, 1, @results) return (1) END If UPPER(@results) = 'STATS' BEGIN set @curs = cursor local fast_forward READ_ONLY for select indid, name from sysindexes where id = @objid and indid > 0 and indid < 255 and (status & (64 | 8388608)) > 0 order by indid -- User created & auto-created stats END ELSE BEGIN set @curs = cursor local fast_forward READ_ONLY for select indid, name from sysindexes where id = @objid and indid > 0 and indid < 255 order by indid -- Indexes, User created & auto-created stats END open @curs fetch @curs into @indid, @indname -- IF NO STATISTICS, QUIT if @@fetch_status < 0 begin deallocate @curs If UPPER(@results) = 'STATS' BEGIN raiserror(15574,-1,-1) --'Object does not have any statistics.' END ELSE BEGIN raiserror(15575,-1,-1) --'Object does not have any indexes or statistics.' END return (0) end -- create temp table create table #spstattab ( stats_name sysname collate database_default NOT NULL, stats_keys nvarchar(2078) collate database_default NOT NULL ) -- Now check out each statistics set, figure out its keys and -- save the info in a temporary table that we'll print out at the end. while @@fetch_status >= 0 begin -- First we'll figure out what the keys are. select @keys = index_col(@objname, @indid, 1), @i = 2, @thiskey = index_col(@objname, @indid, 2) while (@thiskey is not null ) begin select @keys = @keys + ', ' + @thiskey, @i = @i + 1 select @thiskey = index_col(@objname, @indid, @i) end -- INSERT ROW FOR INDEX insert into #spstattab values (@indname, @keys) -- Next index fetch @curs into @indid, @indname end deallocate @curs -- DISPLAY THE RESULTS select 'statistics_name' = stats_name, 'statistics_keys' = stats_keys from #spstattab order by stats_name return (0) -- sp_helpstats raiserror(15339,-1,-1,'sp_objectfilegroup') <.–v `8create procedure sp_objectfilegroup --- 1996/08/30 17:44 @objid int as /* ** Print out the object's data filegroup if applicable. */ if exists (select * from sysobjects where id = @objid and type in ('S ','U ')) begin select Data_located_on_filegroup = s.groupname from sysfilegroups s, sysindexes i where i.id = @objid and i.indid < 2 and i.groupid = s.groupid end /* ** It's not a table so segment is not applicable. */ else select Data_located_on_filegroup = 'not applicable' return (0) -- sp_objectfilegroup !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ћ `ŒŠ<t‚‹Г`a$}”<шбq 8create procedure sp_helpgroup --- 1996/04/08 00:00 @grpname sysname = NULL /* group name of interest */ as /* ** If no group name given, list all the groups. */ if @grpname is null begin select Group_name = name, Group_id = uid from sysusers where (issqlrole = 1) order by name return (0) end /* ** Check to see if group exists. */ if not exists (select * from sysusers where name = @grpname and (issqlrole = 1)) begin raiserror(15014,-1,-1,@grpname) return (1) end /* ** List the particulars for the group. */ select Group_name = substring(g.name, 1, 25), Group_id = g.uid, Users_in_group = substring(u.name, 1, 25), Userid = u.uid from sysusers u, sysusers g, sysmembers m where g.name = @grpname and g.uid = m.groupuid and (g.issqlrole = 1) and u.uid = m.memberuid order by 1, 2 return (0) -- sp_helpgroup <J Цr ё8create procedure sp_helplog --- 1996/04/08 00:00 as declare @firstpage int, @devname nvarchar(257), @msg nvarchar(255) raiserror('sp_helplog is no longer supported.',1,1) return (0) -- sp_helplog <ƒ0Кs D€8І.hРж.С<­:яs “8-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_removesystemcomputedcolumns @tab sysname as begin tran dbcc lockobjectschema (@tab) declare @objid int select @objid = object_id(@tab) -- Delete dependencies of computed columns on other objects DELETE sysdepends FROM sysdepends d WHERE d.id = @objid and d.number in (select colid from syscolumns where id = @objid and (colstat&4)=4) delete syscolumns where id = @objid and (colstat&4)=4 delete syscomments where id = @objid update sysobjects set info = (select max(colid) from syscolumns where id = @objid) where id = @objid commit tran <МTЎt Н8create proc sp_helpindex @objname nvarchar(776) -- the table to check for indexes as -- PRELIM set nocount on declare @objid int, -- the object id of the table @indid smallint, -- the index id of an index @groupid smallint, -- the filegroup id of an index @indname sysname, @groupname sysname, @status int, @keys nvarchar(2126), --Length (16*max_identifierLength)+(15*2)+(16*3) @dbname sysname -- Check to see that the object names are local to the current database. select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end -- Check to see the the table exists and initialize @objid. select @objid = object_id(@objname) if @objid is NULL begin select @dbname=db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end -- OPEN CURSOR OVER INDEXES (skip stats: bug shiloh_51196) declare ms_crs_ind cursor local static for select indid, groupid, name, status from sysindexes where id = @objid and indid > 0 and indid < 255 and (status & 64)=0 order by indid open ms_crs_ind fetch ms_crs_ind into @indid, @groupid, @indname, @status -- IF NO INDEX, QUIT if @@fetch_status < 0 begin deallocate ms_crs_ind raiserror(15472,-1,-1) --'Object does not have any indexes.' return (0) end -- create temp table create table #spindtab ( index_name sysname collate database_default NOT NULL, stats int, groupname sysname collate database_default NULL, index_keys nvarchar(2126) collate database_default NOT NULL -- see @keys above for length descr ) -- Now check out each index, figure out its type and keys and -- save the info in a temporary table that we'll print out at the end. while @@fetch_status >= 0 begin -- First we'll figure out what the keys are. declare @i int, @thiskey nvarchar(131) -- 128+3 select @keys = index_col(@objname, @indid, 1), @i = 2 if (indexkey_property(@objid, @indid, 1, 'isdescending') = 1) select @keys = @keys + '(-)' select @thiskey = index_col(@objname, @indid, @i) if ((@thiskey is not null) and (indexkey_property(@objid, @indid, @i, 'isdescending') = 1)) select @thiskey = @thiskey + '(-)' while (@thiskey is not null ) begin select @keys = @keys + ', ' + @thiskey, @i = @i + 1 select @thiskey = index_col(@objname, @indid, @i) if ((@thiskey is not null) and (indexkey_property(@objid, @indid, @i, 'isdescending') = 1)) select @thiskey = @thiskey + '(-)' end select @groupname = null select @groupname = groupname from sysfilegroups where groupid = @groupid -- INSERT ROW FOR INDEX insert into #spindtab values (@indname, @status, @groupname, @keys) -- Next index fetch ms_crs_ind into @indid, @groupid, @indname, @status end deallocate ms_crs_ind -- SET UP SOME CONSTANT VALUES FOR OUTPUT QUERY declare @empty varchar(1) select @empty = '' declare @des1 varchar(35), -- 35 matches spt_values @des2 varchar(35), @des4 varchar(35), @des32 varchar(35), @des64 varchar(35), @des2048 varchar(35), @des4096 varchar(35), @des8388608 varchar(35), @des16777216 varchar(35) select @des1 = name from master.dbo.spt_values where type = 'I' and number = 1 select @des2 = name from master.dbo.spt_values where type = 'I' and number = 2 select @des4 = name from master.dbo.spt_values where type = 'I' and number = 4 select @des32 = name from master.dbo.spt_values where type = 'I' and number = 32 select @des64 = name from master.dbo.spt_values where type = 'I' and number = 64 select @des2048 = name from master.dbo.spt_values where type = 'I' and number = 2048 select @des4096 = name from master.dbo.spt_values where type = 'I' and number = 4096 select @des8388608 = name from master.dbo.spt_values where type = 'I' and number = 8388608 select @des16777216 = name from master.dbo.spt_values where type = 'I' and number = 16777216 -- DISPLAY THE RESULTS select 'index_name' = index_name, 'index_description' = convert(varchar(210), --bits 16 off, 1, 2, 16777216 on, located on group case when (stats & 16)<>0 then 'clustered' else 'nonclustered' end + case when (stats & 1)<>0 then ', '+@des1 else @empty end + case when (stats & 2)<>0 then ', '+@des2 else @empty end + case when (stats & 4)<>0 then ', '+@des4 else @empty end + case when (stats & 64)<>0 then ', '+@des64 else case when (stats & 32)<>0 then ', '+@des32 else @empty end end + case when (stats & 2048)<>0 then ', '+@des2048 else @empty end + case when (stats & 4096)<>0 then ', '+@des4096 else @empty end + case when (stats & 8388608)<>0 then ', '+@des8388608 else @empty end + case when (stats & 16777216)<>0 then ', '+@des16777216 else @empty end + ' located on ' + groupname), 'index_keys' = index_keys from #spindtab order by index_name return (0) -- sp_helpindex !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Х2ю§`‹<OЋŒЉ-7"ыйц@<f{ѕn š8create procedure sp_helpdevice --- 1996/04/08 00:00 @devname sysname = NULL /* device to check out */ as /* Create temp tables before any DML to ensure dynamic ** Create a temporary table where we can build up a translation of ** the device status bits. */ create table #spdevtab ( name sysname NOT NULL, statusdesc nvarchar(255) null ) /* ** See if the device exists. */ if not exists (select * from master.dbo.sysdevices where (@devname is null or name = @devname)) begin raiserror(15012,-1,-1,@devname) return (1) end set nocount on /* ** Initialize the temporary table with the names of the devices. */ insert into #spdevtab (name) select name from master.dbo.sysdevices where (@devname is null or name = @devname) /* ** Now figure out what kind of controller type it is. ** ** cntrltype = 0 special (data disk) ** 2 disk (dump) ** 3-4 floppy (dump) Not supported in SQL 7.0 ** 5 tape No size information in SQL 7.0 ** 6 pipe ** 7 virtual_device */ update #spdevtab set statusdesc = N'special' from master.dbo.sysdevices d, #spdevtab where d.cntrltype = 0 and #spdevtab.name = d.name update #spdevtab set statusdesc = N'disk' from master.dbo.sysdevices d, #spdevtab where d.cntrltype = 2 and #spdevtab.name = d.name update #spdevtab set statusdesc = N'tape' from master.dbo.sysdevices d, #spdevtab where d.cntrltype = 5 and #spdevtab.name = d.name update #spdevtab set statusdesc = N'pipe' from master.dbo.sysdevices d, #spdevtab where d.cntrltype = 6 and #spdevtab.name = d.name update #spdevtab set statusdesc = N'virtual_device' from master.dbo.sysdevices d, #spdevtab where d.cntrltype = 7 and #spdevtab.name = d.name update #spdevtab set statusdesc = N'UNKNOWN DEVICE' from master.dbo.sysdevices d, #spdevtab where d.cntrltype >= 8 and #spdevtab.name = d.name /* ** Now check out the status bits and turn them into english. ** Status of 16 is a dump device. */ update #spdevtab set statusdesc = statusdesc + N', ' + rtrim(v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 16 and #spdevtab.name = d.name /* ** Status of 1 is a default disk. */ update #spdevtab set statusdesc = statusdesc + N', ' + rtrim(v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 1 and #spdevtab.name = d.name /* ** Status of 2 is a physical disk. */ update #spdevtab set statusdesc = substring(statusdesc, 1, 225) + N', ' + rtrim(v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 2 and #spdevtab.name = d.name /* ** Add in its size in MB. */ update #spdevtab set statusdesc = statusdesc + N', ' + convert(varchar(10), round((convert(float, d.size) * (select low from master.dbo.spt_values where type = 'E' and number = 1) / 1048576), 1)) + ' MB' from master.dbo.sysdevices d, #spdevtab, master.dbo.spt_values v where d.status & 2 = 2 and #spdevtab.name = d.name and v.number = 1 and v.type = 'E' /* ** Status of 4 is a logical disk. */ update #spdevtab set statusdesc = substring(statusdesc, 1, 225) + N', ' + rtrim(v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 4 and #spdevtab.name = d.name /* ** Status of 8 is a skip tape header. */ update #spdevtab set statusdesc = substring(statusdesc, 1, 225) + N', ' + rtrim(v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 8 and #spdevtab.name = d.name /* ** Status of 4096 is read only. */ update #spdevtab set statusdesc = substring(statusdesc, 1, 225) + N', ' + rtrim(v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 4096 and #spdevtab.name = d.name /* ** Status of 8192 is deferred. */ update #spdevtab set statusdesc = substring(statusdesc, 1, 225) + N', ' + (v.name) from master.dbo.sysdevices d, master.dbo.spt_values v, #spdevtab where v.type = 'V' and v.number > -1 and d.status & v.number = 8192 and #spdevtab.name = d.name set nocount off /* ** The device number is in the high byte of sysdevices.low so ** spt_values tells us which byte to pick out. */ select device_name = d.name, physical_name = d.phyname, description = #spdevtab.statusdesc, status = d.status&12319, d.cntrltype, size from master.dbo.sysdevices d, #spdevtab, master.dbo.spt_values v where d.name = #spdevtab.name and v.type = 'E' and v.number = 3 return(0) -- sp_helpdevice <ŸŸщo {8create procedure sp_helpfile @filename sysname = NULL /* file name or all files */ as set nocount on if @filename IS NULL begin select name, fileid, filename, filegroup = filegroup_name(groupid), 'size' = convert(nvarchar(15), size * 8) + N' KB', 'maxsize' = (case maxsize when -1 then N'Unlimited' else convert(nvarchar(15), maxsize * 8) + N' KB' end), 'growth' = (case status & 0x100000 when 0x100000 then convert(nvarchar(3), growth) + N'%' else convert(nvarchar(15), growth * 8) + N' KB' end), 'usage' = (case status & 0x40 when 0x40 then 'log only' else 'data only' end) from sysfiles order by fileid end else begin if file_id(@filename) IS NULL begin -- no such file raiserror (15325, -1, -1, 'file', @filename) return (1) end select name, filename, filegroup = filegroup_name(groupid), 'size' = convert(nvarchar(15), size * 8) + N' KB', 'maxsize' = (case maxsize when -1 then N'Unlimited' else convert(nvarchar(15), maxsize * 8) + N' KB' end), 'growth' = (case status & 0x100000 when 0x100000 then convert(nvarchar(3), growth) + N'%' else convert(nvarchar(15), growth * 8) + N' KB' end), 'usage' = (case status & 0x40 when 0x40 then 'log only' else 'data only' end) from sysfiles where fileid = file_id(@filename) order by fileid end return (0) -- sp_helpfile <иУнp 68create procedure sp_helpfilegroup @filegroupname sysname = NULL /* filegroup name or all filegroups */ as set nocount on -- status & 0x40 is a log file and thus not in any filegroup if @filegroupname IS NULL begin select g.groupname, g.groupid, 'filecount' = (select count(*) from sysfiles f where f.groupid = g.groupid and (f.status & 0x40 <> 0x40)) from sysfilegroups g end else begin if (filegroup_id(@filegroupname) IS NULL) begin raiserror (15325, -1, -1, 'filegroup', @filegroupname) return (1) end select g.groupname, g.groupid, 'filecount' = (select count(*) from sysfiles f where f.groupid = g.groupid and (f.status & 0x40 <> 0x40)) from sysfilegroups g where g.groupid = filegroup_id(@filegroupname) select 'file_in_group' = name, fileid, filename, 'size' = convert(nvarchar(15), size * 8) + N' KB', 'maxsize' = (case maxsize when -1 then N'Unlimited' else convert(nvarchar(15), maxsize * 8) + N' KB' end), 'growth' = (case status & 0x100000 when 0x100000 then convert(nvarchar(3), growth) + N'%' else convert(nvarchar(15), growth * 8) + N' KB' end) from sysfiles where groupid = filegroup_id(@filegroupname) and (status & 0x40 <> 0x40) order by fileid end return (0) -- sp_helpfilegroup !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!uњ`ŽŒ<їЉ7"6žх<-Wn Ї8create procedure sp_helpdb --- 1995/12/20 15:34 #12755 @dbname sysname = NULL /* database name to change */ as declare @exec_stmt nvarchar(625) declare @showdev bit declare @name sysname declare @cmd nvarchar(279) declare @low nvarchar(11) declare @dbdesc varchar(600) /* the total description for the db */ declare @propdesc varchar(40) set nocount on /* Create temp table before any DMP to enure dynamic ** Since we examine the status bits in sysdatabase and turn them ** into english, we need a temporary table to build the descriptions. */ create table #spdbdesc ( dbname sysname, owner sysname, created nvarchar(11), dbid smallint, dbdesc nvarchar(600) null, dbsize nvarchar(13) null, cmptlevel tinyint ) /* ** If no database name given, get 'em all. */ if @dbname is null select @showdev = 0 else select @showdev = 1 /* ** See if the database exists */ if not exists (select * from master.dbo.sysdatabases where (@dbname is null or name = @dbname)) begin raiserror(15010,-1,-1,@dbname) return (1) end select @low = convert(varchar(11),low) from master.dbo.spt_values where type = N'E' and number = 1 /* ** Initialize #spdbdesc from sysdatabases */ insert into #spdbdesc (dbname, owner, created, dbid, cmptlevel) select name, suser_sname(sid), convert(nvarchar(11), crdate), dbid, cmptlevel from master.dbo.sysdatabases where (@dbname is null or name = @dbname) /* ** Check if you have access to database ** if have access set size and collation */ select @low = convert(varchar(11),low) from master.dbo.spt_values where type = N'E' and number = 1 declare ms_crs_c1 cursor for select db_name (dbid) from #spdbdesc open ms_crs_c1 fetch ms_crs_c1 into @name while @@fetch_status >= 0 begin if (has_dbaccess(@name) <> 1) begin delete #spdbdesc where current of ms_crs_c1 raiserror(15622,-1,-1, @name) end else begin /* Insert row for each database */ select @exec_stmt = 'update #spdbdesc set dbsize = (select str(convert(dec(15),sum(size))* ' + @low + '/ 1048576,10,2)+ N'' MB'' from ' + quotename(@name, N'[') + N'.dbo.sysfiles) WHERE current of ms_crs_c1' execute (@exec_stmt) end fetch ms_crs_c1 into @name end deallocate ms_crs_c1 /* ** Now for each dbid in #spdbdesc, build the database status ** description. */ declare @curdbid smallint /* the one we're currently working on */ /* ** Set @curdbid to the first dbid. */ select @curdbid = min(dbid) from #spdbdesc while @curdbid IS NOT NULL begin set @name = db_name(@curdbid) -- These properties always available SELECT @dbdesc = 'Status=' + convert(sysname,DatabasePropertyEx(@name,'Status')) SELECT @dbdesc = @dbdesc + ', Updateability=' + convert(sysname,DatabasePropertyEx(@name,'Updateability')) SELECT @dbdesc = @dbdesc + ', UserAccess=' + convert(sysname,DatabasePropertyEx(@name,'UserAccess')) SELECT @dbdesc = @dbdesc + ', Recovery=' + convert(sysname,DatabasePropertyEx(@name,'Recovery')) SELECT @dbdesc = @dbdesc + ', Version=' + convert(sysname,DatabasePropertyEx(@name,'Version')) -- These props only available if db not shutdown IF DatabaseProperty(@name, 'IsShutdown') = 0 BEGIN SELECT @dbdesc = @dbdesc + ', Collation=' + convert(sysname,DatabasePropertyEx(@name,'Collation')) SELECT @dbdesc = @dbdesc + ', SQLSortOrder=' + convert(sysname,DatabasePropertyEx(@name,'SQLSortOrder')) END -- These are the boolean properties IF DatabasePropertyEx(@name,'IsAutoClose') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoClose' IF DatabasePropertyEx(@name,'IsAutoShrink') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoShrink' IF DatabasePropertyEx(@name,'IsInStandby') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsInStandby' IF DatabasePropertyEx(@name,'IsTornPageDetectionEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsTornPageDetectionEnabled' IF DatabasePropertyEx(@name,'IsAnsiNullDefault') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiNullDefault' IF DatabasePropertyEx(@name,'IsAnsiNullsEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiNullsEnabled' IF DatabasePropertyEx(@name,'IsAnsiPaddingEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiPaddingEnabled' IF DatabasePropertyEx(@name,'IsAnsiWarningsEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiWarningsEnabled' IF DatabasePropertyEx(@name,'IsArithmeticAbortEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsArithmeticAbortEnabled' IF DatabasePropertyEx(@name,'IsAutoCreateStatistics') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoCreateStatistics' IF DatabasePropertyEx(@name,'IsAutoUpdateStatistics') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoUpdateStatistics' IF DatabasePropertyEx(@name,'IsCloseCursorsOnCommitEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsCloseCursorsOnCommitEnabled' IF DatabasePropertyEx(@name,'IsFullTextEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsFullTextEnabled' IF DatabasePropertyEx(@name,'IsLocalCursorsDefault') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsLocalCursorsDefault' IF DatabasePropertyEx(@name,'IsNullConcat') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsNullConcat' IF DatabasePropertyEx(@name,'IsNumericRoundAbortEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsNumericRoundAbortEnabled' IF DatabasePropertyEx(@name,'IsQuotedIdentifiersEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsQuotedIdentifiersEnabled' IF DatabasePropertyEx(@name,'IsRecursiveTriggersEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsRecursiveTriggersEnabled' IF DatabasePropertyEx(@name,'IsMergePublished') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsMergePublished' IF DatabasePropertyEx(@name,'IsPublished') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsPublished' IF DatabasePropertyEx(@name,'IsSubscribed') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsSubscribed' IF DatabasePropertyEx(@name,'IsSyncWithBackup') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsSyncWithBackup' update #spdbdesc set dbdesc = @dbdesc where dbid = @curdbid /* ** Now get the next, if any dbid. */ select @curdbid = min(dbid) from #spdbdesc where dbid > @curdbid end /* ** Now #spdbdesc is complete so we can print out the db info */ select name = dbname, db_size = dbsize, owner = owner, dbid = dbid, created = created, status = dbdesc, compatibility_level = cmptlevel from #spdbdesc order by dbname /* ** If we are looking at one database, show its file allocation. */ if @showdev = 1 and has_dbaccess(@dbname) = 1 begin print N' ' select @cmd = N'use ' + quotename(@dbname) + N' exec sp_helpfile' exec (@cmd) end return (0) -- sp_helpdb !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`<MЅŽЉ ѕ7"J'ё<ОNc  8create proc sp_help_fulltext_columns_cursor @cursor_return CURSOR VARYING OUTPUT, @table_name nvarchar(517) = NULL, -- table name @column_name sysname = NULL -- column name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end -- VALIDATE COLUMN NAME (CANNOT BE COMPUTED) -- if @column_name is not null begin declare @typename sysname select @typename = type_name(ColumnProperty(@objid, @column_name, 'SystemType')) if @typename is null OR ColumnProperty(@objid, @column_name, 'IsComputed') = 1 begin raiserror(15104,-1,-1,@table_name,@column_name) return 1 end end end set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR select distinct susr.name as TABLE_OWNER, sobj.id as TABLE_ID, sobj.name as TABLE_NAME, scol.name as FULLTEXT_COLUMN_NAME, scol.colid as FULLTEXT_COLID, b.FT_BLOBTPNAME as FULLTEXT_BLOBTP_COLNAME, a.FT_BLOBTPCOLID as FULLTEXT_BLOBTP_COLID, scol.language as FULLTEXT_LANGUAGE from sysobjects as sobj, sysusers as susr, syscolumns as scol left outer join ( select sdep.id as TABLE_ID, sdep.number as FULLTEXT_COLID, sdep.depnumber as FT_BLOBTPCOLID from sysdepends as sdep, syscolumns as scol where scol.colid = sdep.number and scol.id = sdep.id and sdep.deptype = 1 and ColumnProperty(scol.id, scol.name, 'IsFullTextIndexed') = 1 ) as a on (scol.colid = a.FULLTEXT_COLID and scol.id = a.TABLE_ID) left outer join ( select sdep.id as TABLE_ID, sdep.depnumber as FT_BLOBTPCOLID, scol.name as FT_BLOBTPNAME, sdep.number as FULLTEXT_COLID from syscolumns as scol, sysdepends as sdep where scol.colid = sdep.depnumber and ColumnProperty(sdep.id, scol.name, 'IsTypeForFullTextBlob') = 1 ) as b on (a.FULLTEXT_COLID = b.FULLTEXT_COLID and a.TABLE_ID = b.TABLE_ID) where ( @table_name is null or sobj.id = @objid ) and scol.id = sobj.id and sobj.uid = susr.uid and ( @column_name is null or scol.name = @column_name ) and ColumnProperty(sobj.id, scol.name, 'IsFullTextIndexed') = 1 order by TABLE_OWNER, TABLE_NAME, FULLTEXT_COLID open @cursor_return -- SUCCESS -- return 0 -- sp_help_fulltext_columns_cursor <КШƒc D€8Г hМe(Ж<ЩтBd Љ8create procedure sp_trace_getdata (@traceid int, @records int = 0 ) as select * from OpenRowset(TrcData, @traceid, @records) <7e „8-- Creation of sp_describe_cursor Create Procedure sp_describe_cursor ( @cursor_return CURSOR VARYING OUTPUT, @cursor_source nvarchar (30), @cursor_identity nvarchar (128) ) AS declare @scope int /* Check if the cursor exists by name or handle. */ If cursor_status ( @cursor_source, @cursor_identity ) >= -1 begin if lower(convert(varchar(30), @cursor_source)) = 'local' OR lower(convert(varchar(128), @cursor_source)) = 'variable' select @scope = 1 else if lower(convert(varchar(30), @cursor_source)) = 'global' select @scope = 2 set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT reference_name, cursor_name, cursor_scope, status, model, concurrency, scrollable, open_status, cursor_rows, fetch_status, column_count, row_count, last_operation, cursor_handle FROM master.dbo.syscursorrefs scr, master.dbo.syscursors sc WHERE scr.cursor_scope = @scope and scr.reference_name = @cursor_identity and scr.cursor_handl = sc.cursor_handle ORDER BY 3, 1 FOR READ ONLY open @cursor_return end <;++f š8-- Creation of sp_describe_cursor_columns Create Procedure sp_describe_cursor_columns ( @cursor_return CURSOR VARYING OUTPUT, @cursor_source nvarchar (30), @cursor_identity nvarchar (128) ) AS declare @scope int /* Check if the cursor exists by name or handle. */ If cursor_status ( @cursor_source, @cursor_identity ) >= -1 begin if lower(convert(varchar(30), @cursor_source)) = 'local' OR lower(convert(varchar(128), @cursor_source)) = 'variable' select @scope = 1 else if lower(convert(varchar(30), @cursor_source)) = 'global' select @scope = 2 set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT column_name, ordinal_position, column_characteristics_flags, column_size, data_type_sql, column_precision, column_scale, order_position, order_direction, hidden_column, columnid, objectid, dbid, dbname FROM master.dbo.syscursorrefs scr, master.dbo.syscursorcolumns scc WHERE scr.cursor_scope = @scope and scr.reference_name = @cursor_identity and scr.cursor_handl = scc.cursor_handle ORDER BY 2 FOR READ ONLY open @cursor_return end <tOg 8-- Creation of sp_describe_cursor_tables Create Procedure sp_describe_cursor_tables ( @cursor_return CURSOR VARYING OUTPUT, @cursor_source nvarchar (30), @cursor_identity nvarchar (128) ) AS declare @scope int /* Check if the cursor exists by name or handle. */ If cursor_status ( @cursor_source, @cursor_identity ) >= -1 begin if lower(convert(varchar(30), @cursor_source)) = 'local' OR lower(convert(varchar(128), @cursor_source)) = 'variable' select @scope = 1 else if lower(convert(varchar(30), @cursor_source)) = 'global' select @scope = 2 set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT table_owner, table_name, optimizer_hint, lock_type, server_name, objectid, dbid, dbname FROM master.dbo.syscursorrefs scr, master.dbo.syscursortables sct WHERE scr.cursor_scope = @scope and scr.reference_name = @cursor_identity and scr.cursor_handl = sct.cursor_handle FOR READ ONLY open @cursor_return end <­sh 8-- Creation of sp_cursor_list create procedure sp_cursor_list ( @cursor_return CURSOR VARYING OUTPUT, @cursor_scope int ) AS if (@cursor_scope < 1) OR (@cursor_scope > 3) begin /* Raise an error: ?The value of parameter is invalid? */ raiserror ( 16902, 1, 1,N'sp_cursor_list', N'@cursor_scope') return (1) end if ( @cursor_scope < 3) begin set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT reference_name, cursor_name, cursor_scope, status, model, concurrency, scrollable, open_status, cursor_rows, fetch_status, column_count, row_count, last_operation, cursor_handle FROM master.dbo.syscursorrefs scr, master.dbo.syscursors sc WHERE scr.cursor_scope = @cursor_scope AND scr.cursor_handl = sc.cursor_handle FOR READ ONLY end else begin set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT reference_name, cursor_name, cursor_scope, status, model, concurrency, scrollable, open_status, cursor_rows, fetch_status, column_count, row_count, last_operation, cursor_handle FROM master.dbo.syscursorrefs scr, master.dbo.syscursors sc WHERE scr.cursor_handl = sc.cursor_handle FOR READ ONLY end open @cursor_return !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!‰ˆюj С } `Ž<6 ФЉ ‡7";к(є<WšZb c 8create proc sp_help_fulltext_columns @table_name nvarchar(517) = NULL, -- table name @column_name sysname = NULL -- column name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end -- VALIDATE COLUMN NAME (CANNOT BE COMPUTED) -- if @column_name is not null begin declare @typename sysname select @typename = type_name(ColumnProperty(@objid, @column_name, 'SystemType')) if @typename is null OR ColumnProperty(@objid, @column_name, 'IsComputed') = 1 begin raiserror(15104,-1,-1,@table_name,@column_name) return 1 end end end select distinct susr.name as TABLE_OWNER, sobj.id as TABLE_ID, sobj.name as TABLE_NAME, scol.name as FULLTEXT_COLUMN_NAME, scol.colid as FULLTEXT_COLID, b.FT_BLOBTPNAME as FULLTEXT_BLOBTP_COLNAME, a.FT_BLOBTPCOLID as FULLTEXT_BLOBTP_COLID, scol.language as FULLTEXT_LANGUAGE from sysobjects as sobj, sysusers as susr, syscolumns as scol left outer join ( select sdep.id as TABLE_ID, sdep.number as FULLTEXT_COLID, sdep.depnumber as FT_BLOBTPCOLID from sysdepends as sdep, syscolumns as scol where scol.colid = sdep.number and scol.id = sdep.id and sdep.deptype = 1 and ColumnProperty(scol.id, scol.name, 'IsFullTextIndexed') = 1 ) as a on (scol.colid = a.FULLTEXT_COLID and scol.id = a.TABLE_ID) left outer join ( select sdep.id as TABLE_ID, sdep.depnumber as FT_BLOBTPCOLID, scol.name as FT_BLOBTPNAME, sdep.number as FULLTEXT_COLID from syscolumns as scol, sysdepends as sdep where scol.colid = sdep.depnumber and ColumnProperty(sdep.id, scol.name, 'IsTypeForFullTextBlob') = 1 ) as b on (a.FULLTEXT_COLID = b.FULLTEXT_COLID and a.TABLE_ID = b.TABLE_ID) where ( @table_name is null or sobj.id = @objid ) and scol.id = sobj.id and sobj.uid = susr.uid and ( @column_name is null or scol.name = @column_name ) and ColumnProperty(sobj.id, scol.name, 'IsFullTextIndexed') = 1 order by TABLE_OWNER, TABLE_NAME, FULLTEXT_COLID -- SUCCESS -- return 0 -- sp_help_fulltext_columns <Єb / 8create procedure sp_dropremotelogin --- 1996/04/08 00:00 @remoteserver sysname, /* name of remote server */ @loginame sysname = NULL, /* user's local user name */ @remotename sysname = NULL /* user's remote name */ as declare @srvid smallint declare @sid varbinary(85) declare @count int -- DISALLOW USER XACT -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dropremotelogin') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME -- select @srvid = srvid from master.dbo.sysservers where srvname = @remoteserver if @srvid is null begin raiserror(15015,-1,-1,@remoteserver) return (1) end -- CHECK FOR INVALID PARAMETER SYNTAX -- if @loginame is null and @remotename is not null begin raiserror(15600,-1,-1,'sp_dropremotelogin') return (1) end -- VALIDATE @loginame -- if @loginame is not null begin select @sid = sid from master.dbo.syslogins where loginname = @loginame AND isntname = 0 -- cannot remap to NT login if @sid is null begin raiserror(15067,-1,-1,@loginame) return (1) end end -- First remove the isrpcinmap bit from all rows which are also outmap update master.dbo.sysxlogins set xstatus = xstatus & ~32 -- isrpcinmap bit where srvid = @srvid AND isrpcinmap = 1 AND ishqoutmap = 1 AND ((@sid IS NULL and sid IS NULL) or sid = @sid) AND ((@remotename IS NULL and name IS NULL) or name = @remotename) select @count = @@rowcount -- Delete the remote login(s) - the remaining rows with isrpcinmap set. delete master.dbo.sysxlogins where srvid = @srvid AND isrpcinmap = 1 AND ((sid IS NULL and @sid IS NULL) or sid = @sid) AND ((@remotename IS NULL and name IS NULL) or name = @remotename) select @count = @count + @@rowcount -- IF NO ROWS UPDATED OR DELETED, ERROR -- if @count = 0 begin if (@loginame IS NULL) raiserror(15021,-1,-1,@remoteserver) else if (@remotename IS NULL) raiserror(15027,-1,-1,@loginame,@remoteserver) else raiserror(15185,-1,-1,@remotename,@loginame,@remoteserver) return (1) end -- SUCCESS -- return (0) -- sp_dropremotelogin <fДc в8 /* Procedure for 8.0 server */ create procedure sp_bcp_dbcmptlevel (@dbname sysname) as begin select cmptlevel from master.dbo.sysdatabases where name = @dbname end !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ђУ `‘</ЧЉ \7"Z­Фщ<\Ї` _8create procedure sp_dropmessage --- 1996/04/08 00:00 @msgnum int = null, -- Number of message to drop. @lang sysname = null -- Language of message to drop (or 'ALL') as declare @retcode int declare @msglangid smallint -- Must be ServerAdmin to manage messages if is_srvrolemember('serveradmin') = 0 begin raiserror(15247,-1,-1) return (1) end /* ** If no message id, show usage */ if @msgnum is null begin raiserror(15177,-1,-1) return (1) end /* ** Message id must be > 50000 */ if @msgnum < 50001 begin raiserror(15178,-1,-1) return(1) end if (select count(*) from master.dbo.sysmessages where error=@msgnum) = 0 begin raiserror(15179,-1,-1,@msgnum) return(1) end /* ** Verify the language */ if @lang is null select @lang = @@language if upper(@lang) <> 'ALL' begin begin exec @retcode = sp_validlang @lang if @retcode <> 0 return(1) end /* ** Get langid from syslanguages; us_english won't exist, so use 0. */ select @msglangid = isnull((select msglangid from master.dbo.syslanguages where name = @lang or alias = @lang),1033) end /* ** The us_english version must be the last one to be dropped */ if (@msglangid = 1033) and (select count(*) from master.dbo.sysmessages where error = @msgnum) > 1 begin raiserror(15280,-1,-1) return(1) end /* ** Drop the message. */ if upper(@lang) = 'ALL' delete from master.dbo.sysmessages where error = @msgnum else delete from master.dbo.sysmessages where error = @msgnum and msglangid = @msglangid return (0) -- sp_dropmessage <єk1a Ў8 create procedure sp_oledb_language as begin select 'English','us_english' union select alias,name from master..syslanguages end <vfa в8create proc sp_help_fulltext_tables_cursor @cursor_return CURSOR VARYING OUTPUT, @fulltext_catalog_name sysname = NULL, -- full-text catalog name @table_name nvarchar(517) = NULL -- table name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- declare @ftcatid smallint if @fulltext_catalog_name is not null begin select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end end set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR select susr.name as TABLE_OWNER, sobj.name as TABLE_NAME, sdex.name as FULLTEXT_KEY_INDEX_NAME, ObjectProperty(sobj.id, 'TableFulltextKeyColumn') as FULLTEXT_KEY_COLID, ObjectProperty(sobj.id, 'TableHasActiveFulltextIndex') as FULLTEXT_INDEX_ACTIVE, scat.name as FULLTEXT_CATALOG_NAME from sysobjects as sobj, sysindexes as sdex, sysusers as susr, sysfulltextcatalogs as scat where( @fulltext_catalog_name is null or sobj.ftcatid = @ftcatid ) and ( @table_name is null or sobj.id = @objid ) and sobj.uid = susr.uid and sobj.ftcatid = scat.ftcatid and sdex.status & 33554432 <> 0 and /* means that this is the index used enforce the uniqueness of the full-text key column */ sdex.id = sobj.id order by TABLE_OWNER, TABLE_NAME open @cursor_return -- SUCCESS -- return 0 -- sp_help_fulltext_tables_cursor <H€›a ю8create procedure sp_droptype --- 1996/04/08 00:00 @typename sysname /* the user type to drop */ as declare @typeid smallint /* the typeid of the usertype to drop */ /* ** Initialize @typeid so we can tell if we can't find it. */ select @typeid = 0 /* ** Find the user type with @typename. It must be a user type (xusertype > 256) ** and it must be owned by the person (or special role) running the procedure. */ select @typeid = xusertype from systypes where name = @typename and xusertype > 256 AND (is_member('db_owner') = 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @typeid = 0 begin raiserror(15105,-1,-1) return (1) end /* ** Check to see if the type is being used. If it is, it can't be dropped. */ if exists (select * from syscolumns where xusertype = @typeid) begin raiserror(15180,-1,-1) /* ** Show where it's being used. */ select object = o.name, type = o.xtype, owner = u.name, [column] = c.name, datatype = t.name from syscolumns c, systypes t, sysusers u, sysobjects o where c.xusertype = @typeid and t.xusertype = @typeid and o.uid = u.uid and c.id = o.id order by object, [column] return (1) end /* ** Everything is consistent so drop the type. */ delete from systypes where xusertype = @typeid delete from sysproperties where type = 1 and id = 0 and smallid = @typeid raiserror(15467,-1,-1) return (0) -- sp_droptype <-%b š8 /* Procedure for 8.0 server */ create procedure sp_tablecollations (@object nvarchar(4000)) as begin select c.colid, c.name, tds_collation = c.tdscollation, collation_name = BCPCollationName(c.tdscollation, c.xtype) from syscolumns c inner join sysobjects t on c.id = t.id where t.id = object_id(@object, 'local') order by c.colid end !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-?mП`’<о‘ВШF$€Њm<П^ ‡8create procedure sp_diskdefault --- 1996/04/08 00:00 @logicalname sysname, /* logical name of the device */ @defstatus varchar(15) /* turn on or off */ as /* ** If we're in a transaction, disallow this since it might make recovery ** impossible. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_diskdefault') return (1) end /* ** Only the SA can run this sproc. */ if not is_srvrolemember('diskadmin') = 1 begin raiserror(15247,-1,-1) return (1) end /* ** Make sure that a device with @logicalname exists. */ if not exists (select * from master.dbo.sysdevices where name = @logicalname) begin raiserror(15012,-1,-1,@logicalname) return (1) end /* ** Make sure that it is a database disk and not a dump device. */ if exists (select * from master.dbo.sysdevices where name = @logicalname and status & 16 = 16) begin raiserror(15035,-1,-1,@logicalname) return (1) end /* ** Make sure that the database disk is NOT a RAM device. */ if exists (select * from master.dbo.sysdevices where name = @logicalname and status & 2048 = 2048 ) begin raiserror(15139,-1,-1) return (1) end if @defstatus = 'defaulton' begin update master.dbo.sysdevices set status = status | 1 where name = @logicalname return (0) end if @defstatus = 'defaultoff' begin update master.dbo.sysdevices set status = status & ~1 where name = @logicalname return (0) end /* ** @defstatus must be 'defaulton' or 'defaultoff' */ raiserror(15140,-1,-1) return (1) -- sp_diskdefault <‚#I_ “8 create procedure sp_oledb_defdb as begin select dbname from master..syslogins where sid=SUSER_SID() end <Ќ-~_ 8create proc sp_help_fulltext_catalogs_cursor @cursor_return CURSOR VARYING OUTPUT, @fulltext_catalog_name sysname = NULL -- full-text catalog name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- if @fulltext_catalog_name is not null begin declare @ftcatid smallint select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end -- RETRIEVE THE DEFAULT PATH -- DECLARE @def_path as nvarchar(260) select @def_path = null exec master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer','FullTextDefaultPath', @def_path OUT -- SELECT ANY ROWS THAT MEET THE CRITERIA -- set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR select CAT.ftcatid, name as NAME, 'PATH'= CASE WHEN path is NULL THEN @def_path ELSE path END, FullTextCatalogProperty(CAT.name, 'PopulateStatus') AS STATUS , (select COUNT(*) from sysobjects where type='U' and sysobjects.ftcatid = CAT.ftcatid ) as NUMBER_FULLTEXT_TABLES from sysfulltextcatalogs as CAT where ( @fulltext_catalog_name is null or name = @fulltext_catalog_name ) order by ftcatid open @cursor_return -- SUCCESS -- return 0 -- sp_help_fulltext_catalogs_cursor <ж7Г_ 8create procedure sp_dropdevice --- 1996/04/08 00:00 @logicalname sysname, -- logical name of the device @delfile varchar(7) = null -- optional param. to delete disk file as /* ** See if user specified something for @delfile and, if so, validate it. */ if @delfile is not null begin select @delfile = lower(@delfile) if @delfile <> 'delfile' begin raiserror(15216,-1,-1,@delfile) return(1) end end /* ** If we're in a transaction, disallow this since it might make recovery ** impossible. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dropdevice') return (1) end /* ** Only the system administrator (SA) can run this command. ** Check to make sure the executor is the sa. */ if not is_srvrolemember('diskadmin') = 1 begin raiserror(15247,-1,-1) return (1) end /* ** Check and make sure that the device actually exists. */ if not exists (select * from master.dbo.sysdevices where name = @logicalname) begin raiserror(15012,-1,-1,@logicalname) return (1) end /* ** Drop the device. */ if @delfile = 'delfile' dbcc dbrepair ('', 'dropdevice',@logicalname, 1) WITH NO_INFOMSGS else dbcc dbrepair ('', 'dropdevice',@logicalname, 0) WITH NO_INFOMSGS if @@error <> 0 return (1) raiserror(15463,-1,-1) return (0) -- sp_dropdevice <ЛG=` 8 create procedure sp_oledb_database as begin select name from master..sysdatabases end <хQr` E8create proc sp_help_fulltext_tables @fulltext_catalog_name sysname = NULL, -- full-text catalog name @table_name nvarchar(517) = NULL -- table name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- declare @ftcatid smallint if @fulltext_catalog_name is not null begin select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end end select susr.name as TABLE_OWNER, sobj.name as TABLE_NAME, sdex.name as FULLTEXT_KEY_INDEX_NAME, ObjectProperty(sobj.id, 'TableFulltextKeyColumn') as FULLTEXT_KEY_COLID, ObjectProperty(sobj.id, 'TableHasActiveFulltextIndex') as FULLTEXT_INDEX_ACTIVE, scat.name as FULLTEXT_CATALOG_NAME from sysobjects as sobj, sysindexes as sdex, sysusers as susr, sysfulltextcatalogs as scat where( @fulltext_catalog_name is null or sobj.ftcatid = @ftcatid ) and ( @table_name is null or sobj.id = @objid ) and sobj.uid = susr.uid and sobj.ftcatid = scat.ftcatid and sdex.status & 33554432 <> 0 and /* means that this is the index used enforce the uniqueness of the full-text key column */ sdex.id = sobj.id order by TABLE_OWNER, TABLE_NAME -- SUCCESS -- return 0 -- sp_help_fulltext_tables !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!™ˆ zч`“‘<:Ж’Г([$аЏА<зЖl\ ™8 /* Procedure for 8.0 server */ create proc sp_oledb_indexinfo @objname nvarchar(776) -- the table to check for indexes ,@indname nvarchar(776) as begin -- PRELIM set nocount on declare @objid int, -- the object id of the table @indid smallint, -- the index id of an index @status int, @keys nvarchar(2078),-- string build index key list, length = (16*max_id_length)+(15*2) @dbname sysname, @OrigFillFactor tinyint -- Check to see that the object names are local to the current database. select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end -- Check to see the the table exists and initialize @objid. select @objid = object_id(@objname) if @objid is NULL begin select @dbname=db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end select @indid = indid, @status = status, @OrigFillFactor = OrigFillFactor from sysindexes where id = @objid and name = @indname -- IF NO INDEX, QUIT if @indid is NULL begin raiserror(15472,-1,-1) --'Object does not have any indexes.' return (1) end -- First we'll figure out what the keys are. declare @i int, @thiskey sysname select @keys = index_col(@objname, @indid, 1), @i = 2, @thiskey = index_col(@objname, @indid, 2) while (@thiskey is not null ) begin select @keys = @keys + ', ' + @thiskey, @i = @i + 1 select @thiskey = index_col(@objname, @indid, @i) end -- DISPLAY THE RESULTS select 'Status'=@status, 'OrigFillFactor' =@OrigFillFactor, 'Index keys'=@keys set nocount off return (0) end <СЁ\ P€8щ&hЙа>К!?В<+Ыж\ V 8create procedure sp_depends --- 1996/08/09 16:51 @objname nvarchar(776) /* the object we want to check */ as declare @objid int /* the id of the object we want */ declare @found_some bit /* flag for dependencies found */ declare @dbname sysname /* ** Make sure the @objname is local to the current database. */ select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end /* ** See if @objname exists. */ select @objid = object_id(@objname) if @objid is null begin select @dbname = db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end /* ** Initialize @found_some to indicate that we haven't seen any dependencies. */ select @found_some = 0 set nocount on /* ** Print out the particulars about the local dependencies. */ if exists (select * from sysdepends where id = @objid) begin raiserror(15459,-1,-1) select 'name' = (s6.name+ '.' + o1.name), type = substring(v2.name, 5, 16), updated = substring(u4.name, 1, 7), selected = substring(w5.name, 1, 8), 'column' = col_name(d3.depid, d3.depnumber) from sysobjects o1 ,master.dbo.spt_values v2 ,sysdepends d3 ,master.dbo.spt_values u4 ,master.dbo.spt_values w5 --11667 ,sysusers s6 where o1.id = d3.depid and o1.xtype = substring(v2.name,1,2) collate database_default and v2.type = 'O9T' and u4.type = 'B' and u4.number = d3.resultobj and w5.type = 'B' and w5.number = d3.readobj|d3.selall and d3.id = @objid and o1.uid = s6.uid and deptype < 2 select @found_some = 1 end /* ** Now check for things that depend on the object. */ if exists (select * from sysdepends where depid = @objid) begin raiserror(15460,-1,-1) select distinct 'name' = (s.name + '.' + o.name), type = substring(v.name, 5, 16) from sysobjects o, master.dbo.spt_values v, sysdepends d, sysusers s where o.id = d.id and o.xtype = substring(v.name,1,2) collate database_default and v.type = 'O9T' and d.depid = @objid and o.uid = s.uid and deptype < 2 select @found_some = 1 end /* ** Did we find anything in sysdepends? */ if @found_some = 0 raiserror(15461,-1,-1) set nocount off return (0) -- sp_depends <л`] Ф8 create procedure sp_oledb_ro_usrname as begin select substring('NY',status/1024&1+1,1),user_name() from master..sysdatabases where name=DB_NAME() end <:х•] D€8ыhЛз"Ж<dяЪ] Ъ8create procedure sp_detach_db @dbname sysname = null, @skipchecks nvarchar(10) = null as declare @dbid int declare @exec_stmt nvarchar(540) if @dbname is null begin raiserror(15354,-1,-1) return(1) end if lower(@skipchecks) <> N'true' and lower(@skipchecks) <> N'false' and @skipchecks is not null begin raiserror(15354,-1,-1) return(1) end select @dbid = null select @dbid = dbid from master.dbo.sysdatabases where name=@dbname if @dbid is null begin raiserror(15010,-1,-1,@dbname) return(1) end -- make sure not trying to detach within a transaction if @@trancount > 0 begin raiserror(226,-1,-1,'SP_DETACH_DB') return(1) end -- run UPDATE STATISTICS on all tables in the database so they are current -- when transferred to READONLY media if lower(@skipchecks) <> N'true' begin print 'Running UPDATE STATISTICS on all tables' select @exec_stmt = 'USE ' + quotename( @dbname , '[') + ' exec sp_updatestats ''RESAMPLE'' ' exec (@exec_stmt) end select @exec_stmt = 'DBCC DETACHDB (' + quotename( @dbname , '[') + ')' exec (@exec_stmt) return (0) -- sp_detach_db <IџT^ Д8 create procedure sp_oledb_deflang as begin select ISNULL(language,'us_english') from master..syslogins where sid=SUSER_SID() end <s Š^ ‘8create proc sp_help_fulltext_catalogs @fulltext_catalog_name sysname = NULL -- full-text catalog name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- if @fulltext_catalog_name is not null begin declare @ftcatid smallint select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end -- RETRIEVE THE DEFAULT PATH -- DECLARE @def_path as nvarchar(260) select @def_path = null exec master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer','FullTextDefaultPath', @def_path OUT -- SELECT ANY ROWS THAT MEET THE CRITERIA -- select CAT.ftcatid, name as NAME, 'PATH'= CASE WHEN path is NULL THEN @def_path ELSE path END, FullTextCatalogProperty(CAT.name, 'PopulateStatus') AS STATUS , (select COUNT(*) from sysobjects where type='U' and sysobjects.ftcatid = CAT.ftcatid ) as NUMBER_FULLTEXT_TABLES from sysfulltextcatalogs as CAT where ( @fulltext_catalog_name is null or name = @fulltext_catalog_name ) order by ftcatid -- SUCCESS -- return 0 -- sp_help_fulltext_catalogs !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%qЇcŸIљ`”’<m‰“ГZ$v`‰<en„Z 0 8 /* Procedure for 8.0 server */ create procedure sp_oledb_column_constraints (@tblname nvarchar(776) -- the table to check for constraints ,@colname nvarchar(776) -- the column to check for constraints ,@dropcnst smallint) as begin -- PRELIM set nocount on declare @tblid int -- the object id of the table ,@cnstname sysname -- name of const. currently under consideration ,@cnstid int ,@cnsttype character(2) ,@dbname sysname -- Create temp table create table #spcnsttab (cnst_name sysname collate database_default NOT NULL) -- Check to see that the object names are local to the current database. select @dbname = parsename(@tblname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end -- Check to see if the table exists and initialize @objid. select @tblid = object_id(@tblname) if @tblid is NULL begin select @dbname=db_name() raiserror(15009,-1,-1,@tblname,@dbname) return (1) end -- STATIC CURSOR OVER THE TABLE'S CONSTRAINTS declare cnst_csr cursor fast_forward for select id, xtype, name from sysobjects where parent_obj = @tblid and ((xtype = 'PK' and (@dropcnst & 16)<> 0) or (xtype = 'UQ' and (@dropcnst & 32)<> 0) or (xtype = 'D ' and (@dropcnst & 2)<> 0)) -- ONLY 6.5 sysconstraints objects for read only -- Now check out each constraint, figure out its type and keys and -- save the info in a temporary table that we'll print out at the end. open cnst_csr fetch cnst_csr into @cnstid, @cnsttype, @cnstname while @@fetch_status >= 0 begin if @cnsttype in ('PK','UQ') begin -- get indid declare @indid smallint select @indid = indid from sysindexes where name = object_name(@cnstid) and id = @tblid if (@colname = index_col(@tblname, @indid, 1)) and (index_col(@tblname, @indid, 2) is null) begin -- ADD TO TABLE insert into #spcnsttab values (@cnstname) end end else if (@cnsttype = 'D ') begin if (select col_name(@tblid, info) from sysobjects where id=@cnstid) = @colname begin insert into #spcnsttab values (@cnstname) end end fetch cnst_csr into @cnstid ,@cnsttype ,@cnstname end --of major loop close cnst_csr deallocate cnst_csr -- Now print out the contents of the temporary index table. select 'constraint_name' = cnst_name from #spcnsttab drop table #spcnsttab set nocount off return (0) end <xЙZ Ђ8create proc sp_fulltext_database @action varchar(20) -- 'enable' | 'disable' as declare @ftcat sysname, @ftcatid smallint, @path nvarchar(260), @objid int, @dbid smallint, @objname sysname -- VALIDATE PARAMS -- if @action is null OR @action not in ('enable','disable') begin raiserror(15600,-1,-1,'sp_fulltext_database') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_database') return 1 end -- CHECK PERMISSIONS (must be a dbowner) -- if (is_member('db_owner') = 0) begin raiserror(15247,-1,-1) return 1 end -- CHECK DATABASE MODE (must not be read-only) -- if (DATABASEPROPERTY(db_name(), 'IsReadOnly') = 1) begin raiserror(15635, -1, -1, 'sp_fulltext_database') return 1 end -- CLEAR SYSDATABASES BIT AND PROPAGATE W/ CHECKPOINT (for both enable & disable) -- select @dbid = db_id() update master.dbo.sysdatabases set status2 = status2 & ~536870912 where dbid = @dbid checkpoint -- DROP ALL CATALOGS WITH THIS DATABASE (for both enable/disable) -- DBCC CALLFULLTEXT ( 7, @dbid ) -- FTDropAllCatalogs ( "@dbid" ) if @@error <> 0 return 1 -- DELETE ALL THE CHANGE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify if @action = 'enable' begin -- CREATE CATALOGS -- declare ms_crs_ftcat cursor static local for select name, path from sysfulltextcatalogs open ms_crs_ftcat fetch ms_crs_ftcat into @ftcat, @path while @@fetch_status >= 0 begin DBCC CALLFULLTEXT ( 16, @ftcat, @path ) -- FTCreateCatalog( @ftcatid, @path ) if @@error <> 0 return 1 fetch ms_crs_ftcat into @ftcat, @path end deallocate ms_crs_ftcat declare @vc1 nvarchar(517) -- BEGIN TRAN begin tran -- ACTIVATE TABLES/URLs -- declare ms_crs_ftind cursor static local for select ftcatid, id from sysobjects where (ftcatid <> 0) open ms_crs_ftind fetch ms_crs_ftind into @ftcatid, @objid while @@fetch_status >= 0 begin DBCC CALLFULLTEXT ( 5, @ftcatid, @objid ) -- FTAddURL( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- CHECK TABLE FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin select @objname = object_name(@objid) raiserror(15638, -1, -1, @objname) select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwnerId'))) + '.' + quotename(@objname) -- LOCK TABLE -- dbcc lockobjectschema(@vc1) if @@error <> 0 goto error_abort_exit -- TURN OFF CHANGE TRACKING ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~192 where id = @objid fetch ms_crs_ftind into @ftcatid, @objid continue end -- START A FULL CRAWL FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end -- CHECK TABLE FOR AUTOPROPAGATION - if ObjectProperty(@objid, 'TableFulltextBackgroundUpdateIndexOn') = 1 begin DBCC CALLFULLTEXT ( 10, @ftcatid, @objid ) -- FTEnableAutoProp( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit end fetch ms_crs_ftind into @ftcatid, @objid end deallocate ms_crs_ftind -- SET SYSDATABASES BIT -- update master.dbo.sysdatabases set status2 = status2 | 536870912 where dbid = @dbid -- COMMIT TRAN -- commit tran -- CHECKPOINT TO PUSH SYSDATABASES BIT TO MEMORY -- checkpoint if @@error <> 0 goto error_abort_exit end -- SUCCESS -- return 0 -- sp_fulltext_database error_abort_exit: rollback tran return 1 -- sp_fulltext_database <Й‚юZ Я8create procedure sp_dbremove --- 1996/04/08 00:00 @dbname sysname = null, @dropdev varchar(10) = null as declare @dbid int declare @devname sysname declare @physname varchar(255) if @dbname is null begin raiserror(15131,-1,-1) return(1) end if lower(@dropdev) <> 'dropdev' and @dropdev is not null begin raiserror(15131,-1,-1) return(1) end /* Check to see if database exists. */ select @dbid = null select @dbid = dbid from master.dbo.sysdatabases where name=@dbname if @dbid is null begin raiserror(15010,-1,-1,@dbname) return(1) end /* Make sure no one is in the db. */ if (select count(*) from master.dbo.sysprocesses where dbid = @dbid) > 0 begin raiserror(15069,-1,-1) return (1) end update master.dbo.sysdatabases set status = 256 where dbid=@dbid dbcc dbrepair(@dbname,dropdb,noinit) raiserror(15458,-1,-1) return(0) -- sp_dbremove <Шœ­[ D€8ёZhЕъ(Ж<ђІт[ D€8ЛAhЗ•7И!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!E2 `•“<q”Ј Ї7"P[T5<€^њY -8CREATE PROCEDURE sp_configure --- 1996/08/14 09:43 @configname varchar(35) = NULL -- option name to configure ,@configvalue int = NULL -- new configuration value as set nocount on declare @confignum int --Num of the opt to be configured ,@configcount int --Num of options like @configname ,@show_advance int --Y/N Read&Write actions on "advanced" opts declare @fullconfigname varchar (35) declare @prevvalue int /* ** Determine @maxnumber based on advance option in syscurconfigs. */ if (select value from master.dbo.syscurconfigs where config = 518) = 1 select @show_advance = 1 -- Display advanced options else select @show_advance = 0 -- Don't display advanced options /* ** Make certain that max user info. reflects any addpak upgrades. */ if (select high from master.dbo.spt_values where number=103 and type='C') <> @@max_connections update master.dbo.spt_values set high = @@max_connections where number = 103 and type='C' /* ** If no option name is given, the procedure will just print out all the ** options and their values. */ if @configname is NULL begin select name, minimum = low, maximum = high, config_value = c.value, run_value = master.dbo.syscurconfigs.value from master.dbo.spt_values, master.dbo.sysconfigures c, master.dbo.syscurconfigs where type = 'C' and number = c.config and number = master.dbo.syscurconfigs.config and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) order by lower(name) return (0) end /* ** Use @configname and try to find the right option. ** If there isn't just one, print appropriate diagnostics and return. */ select @configcount = count(*), @fullconfigname = min (v.name), @prevvalue = min (c.value) from master.dbo.spt_values v ,master.dbo.sysconfigures c where v.name like '%' + @configname + '%' and v.type = 'C' and v.number = c.config and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) /* ** If no option, show the user what the options are. */ if @configcount = 0 begin raiserror (15123,-1,-1,@configname) print ' ' raiserror (15456,-1,-1) /* ** Show the user what the options are. */ select name, minimum = low, maximum = high, config_value = c.value, run_value = master.dbo.syscurconfigs.value from master.dbo.spt_values, master.dbo.sysconfigures c, master.dbo.syscurconfigs where type = 'C' and number = c.config and number = master.dbo.syscurconfigs.config and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) return (1) end /* ** If more than one option like @configname, show the duplicates and return. */ if @configcount > 1 begin raiserror (15124,-1,-1,@configname) print ' ' select duplicate_options = name from master.dbo.spt_values,master.dbo.sysconfigures c where name like '%' + @configname + '%' and type = 'C' and number = c.config and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) return (1) end else /* There must be exactly one, so get the full name. */ select @configname = name --,@value_in_sysconfigures = c.value from master.dbo.spt_values,master.dbo.sysconfigures c where name like '%' + @configname + '%' and type = 'C' and number = c.config and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) /* ** If @configvalue is NULL, just show the current state of the option. */ if @configvalue is null begin select v.name ,v.low as 'minimum' ,v.high as 'maximum' ,c.value as 'config_value' ,u.value as 'run_value' from master.dbo.spt_values v left outer join master.dbo.sysconfigures c on v.number = c.config left outer join master.dbo.syscurconfigs u on v.number = u.config where v.type = 'C ' and v.name like '%' + @configname + '%' and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) return (0) end /* ** Check.Permissions */ if (not is_srvrolemember('serveradmin') = 1) begin raiserror(15247,-1,-1) return (1) end /* ** Now get the configuration number. */ select @confignum = number from master.dbo.spt_values,master.dbo.sysconfigures c where type = 'C' and (@configvalue between low and high or @configvalue = 0) and name like '%' + @configname + '%' and number = c.config and ((c.status & 2 <> 0 and @show_advance = 1) OR (c.status & 2 = 0) ) /* ** If this is the number of default language, we want to make sure ** that the new value is a valid language id in Syslanguages. */ if @confignum = 124 begin if not exists (select * from master.dbo.syslanguages where langid = @configvalue) begin /* 0 is default language, us_english */ if @configvalue <> 0 begin raiserror(15127,-1,-1) return (1) end end end /* ** If this is the number of kernel language, we want to make sure ** that the new value is a valid language id in Syslanguages. */ if @confignum = 132 begin if not exists (select * from master.dbo.syslanguages where langid = @configvalue) begin /* 0 is default language, us_english */ if @configvalue <> 0 begin raiserror(15028,-1,-1) return (1) end end end /* ** "user options" should not try to set incompatible options/values. */ if @confignum = 1534 --"user options" begin if (@configvalue & (1024+2048) = (1024+2048)) --ansi_null_default_on/off begin raiserror(15303,-1,-1,@configvalue) return (1) end end /* ** Although the @configname is good, @configvalue wasn't in range. */ if @confignum is NULL begin raiserror(15129,-1,-1,@configvalue,@configname) return (1) end --Msg 15002, but in 6.5 allow this inside a txn (not check @@trancount) #12828. /* ** Now update sysconfigures. */ update master.dbo.sysconfigures set value = @configvalue where config = @confignum /* ** Flush the procedure cache - this is to account for options which become ** effective immediately (ie. dont need a server restart). */ dbcc freeproccache raiserror(15457,-1,-1, @fullconfigname, @prevvalue, @configvalue) with log return (0) -- sp_configure !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`–”<”j•Ј ˜7"Иd&<VTХY 8create proc sp_fulltext_service @action varchar(20), -- resource_usage | clean_up | connect_timeout | data_timeout @value int = NULL -- value for resource_usage | connect_timeout | data_timeout as -- VALIDATE PARAMS -- if @action is null OR @action not in ('resource_usage', 'clean_up', 'connect_timeout', 'data_timeout') OR (@value is not null AND @action not in ('resource_usage', 'connect_timeout', 'data_timeout')) OR (@value is null and @action in ('resource_usage', 'connect_timeout', 'data_timeout')) begin raiserror(15600,-1,-1,'sp_fulltext_service') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_service') return 1 end -- CHECK PERMISSIONS (must be serveradmin) -- if (is_srvrolemember('serveradmin') = 0) begin raiserror(15247,-1,-1) return 1 end if @action = 'resource_usage' begin DBCC CALLFULLTEXT ( 13, @value ) -- FTSetResource( @value ) if @@error <> 0 return 1 end if @action = 'clean_up' begin DBCC CALLFULLTEXT ( 8 ) -- Iterate thru catalogs, remove if dbid doesn't exist. if @@error <> 0 return 1 end if @action = 'connect_timeout' begin DBCC CALLFULLTEXT ( 14, @value ) -- SetProperty( FT_PROP_CONN_TIMEOUT, @value ) if @@error <> 0 return 1 end if @action = 'data_timeout' begin DBCC CALLFULLTEXT ( 15, @value ) -- SetProperty( FT_PROP_DATA_TIMEOUT, @value ) if @@error <> 0 return 1 end -- SUCCESS -- return 0 -- sp_fulltext_service !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`—•<Šr–ГY$w#R›<X Ю8create procedure sp_bindrule --- 1996/08/14 15:02 @rulename nvarchar(776), /* name of the rule */ @objname nvarchar(517), /* table or usertype name */ @futureonly varchar(15) = NULL /* column name */ as declare @ruleid int /* id of the rule to bind */ declare @futurevalue varchar(15) /* the value of @futureonly that causes ** the binding to be limited */ declare @vc1 nvarchar(517) ,@tab_id integer ,@cur_tab_id integer ,@colid smallint ,@xtype smallint ,@xusertype smallint declare @UnqualRule sysname ,@QualRule1 sysname ,@QualRule2 sysname ,@QualRule3 sysname ,@UnqualObj sysname ,@QualObj1 sysname ,@QualObj2 sysname ,@QualObj3 sysname set cursor_close_on_commit off set nocount on select @futurevalue = 'futureonly' /* initialize @futurevalue */ /* ** When a default or rule is bound to a user-defined datatype, it is also ** bound, by default, to any columns of the user datatype that are currently ** using the existing default or rule as their default or rule. This default ** action may be overridden by setting @futureonly = @futurevalue when the ** procedure is invoked. In this case existing columns with the user ** datatype won't have their existing default or rule changed. */ -- get name parts -- select @UnqualRule = parsename(@rulename, 1), @QualRule1 = parsename(@rulename, 2), @QualRule2 = parsename(@rulename, 3), @QualRule3 = parsename(@rulename, 4) select @UnqualObj = parsename(@objname, 1), @QualObj1 = parsename(@objname, 2), @QualObj2 = parsename(@objname, 3), @QualObj3 = parsename(@objname, 4) IF (@UnqualRule is NULL OR @QualRule3 is not null) begin raiserror(15253,-1,-1,@rulename) return (1) end IF (@UnqualObj is NULL OR @QualObj3 is not null) begin raiserror(15253,-1,-1,@objname) return (1) end ------------------ Verify database. if ((@QualObj2 is not null and @QualObj1 is null) or (@QualRule2 is not null and @QualRule2 <> db_name())) begin raiserror(15077,-1,-1) return (1) end /* ** Check that the @futureonly argument, if supplied, is correct. */ if (@futureonly IS NOT NULL) begin select @futureonly = lower(@futureonly) begin if (@futureonly <> @futurevalue) begin raiserror(15106,-1,-1) return (1) end end end /* ** Check to see that the rule exists and get its id. */ select @ruleid = id from sysobjects where id = object_id(@rulename) and xtype='R ' --rule object 7 if @ruleid is NULL begin raiserror(15017,-1,-1,@rulename) return (1) end /* ** If @objname is of the form tab.col then we are binding to a column. ** Otherwise its a datatype. In the column case, we need to extract ** and verify the table and column names and make sure the user owns ** the table that is getting the rule bound. */ if @QualObj1 is not null begin if (@QualObj2 is not null) select @vc1 = QuoteName(@QualObj2) + '.' + QuoteName(@QualObj1) else select @vc1 = QuoteName(@QualObj1) select @tab_id = o.id, @colid = c.colid, @xtype = c.xtype from sysobjects o, syscolumns c where c.id = object_id(@vc1,'local') and c.name = @UnqualObj and o.id = c.id and o.xtype='U ' /*Check that table and column exist*/ if @tab_id is null begin raiserror(15104,-1,-1,@QualObj1,@UnqualObj) return (1) end /* ** If the column type is image, text, or timestamp, disallow the bind. ** Rules can't be bound to image, text, or timestamp columns. ** The types are checked in case ** there is a user-defined datatype that is an image or text. ** User-defined datatypes mapping to timestamp are not allowed ** by sp_addtype. */ if type_name(@xtype) in ('text', 'ntext', 'image', 'timestamp') begin raiserror(15107,-1,-1) return (1) end BEGIN TRANSACTION txn_bindrule_1 dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. update syscolumns set domain = @ruleid where id = @tab_id and colid = @colid COMMIT TRANSACTION txn_bindrule_1 raiserror(15514,-1,-1) end else begin /* ** We're binding to a user type. In this case, the @objname ** is really the name of the user datatype. ** When we bind to a user type, any existing columns get changed ** to the new binding unless their current binding is not equal ** to the current binding for the usertype or if they set the ** @futureonly parameter to @futurevalue. */ declare @oldrule int /* current rule for type */ /* ** Get the current rule for the datatype. */ select @oldrule = domain, @xtype = xtype, @xusertype = xusertype from systypes where name = @UnqualObj and xusertype > 256 AND (is_member('db_owner') = 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @oldrule is null begin raiserror(15105,-1,-1) return (1) end /* ** If the column type is image, text, or timestamp, disallow the bind. ** Rules can't be bound to image or text columns. */ if type_name(@xtype) in ('text', 'ntext', 'image', 'timestamp') begin raiserror(15107,-1,-1) return (1) end update systypes set domain = @ruleid from systypes where xusertype = @xusertype raiserror(15515,-1,-1) /* ** Now see if there are any columns with the usertype that ** need the new binding. */ if isnull(@futureonly, ' ') <> @futurevalue begin declare ms_crs_bindrule_1 cursor local static for select distinct c.id ,c.colid from syscolumns c JOIN sysobjects o ON c.id = o.id AND o.xtype = N'U ' where c.xusertype = @xusertype and (c.domain = @oldrule OR c.domain = 0 ) order by c.id for read only open ms_crs_bindrule_1 BEGIN TRANSACTION txn_bindrule_2 fetch next from ms_crs_bindrule_1 into @tab_id ,@colid WHILE @@fetch_status = 0 begin select @vc1 = quotename(user_name(OBJECTPROPERTY(@tab_id,'OwnerId'))) + '.' + quotename(object_name(@tab_id)) dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. select @cur_tab_id = @tab_id while @cur_tab_id = @tab_id and @@fetch_status = 0 begin /* ** Update syscolumns with new binding. */ update syscolumns set domain = @ruleid where id = @tab_id and colid = @colid fetch next from ms_crs_bindrule_1 into @tab_id ,@colid end end --loop 3 deallocate ms_crs_bindrule_1 COMMIT TRANSACTION txn_bindrule_2 raiserror(15516,-1,-1) end end return (0) -- sp_bindrule <G:Y D€8ёmhДР#Њ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.`˜–<ж $—Ј p7"V…Dњ<КЈW ”8/* Procedure for 8.00 server */ create proc sp_table_statistics_rowset as select TABLE_CATALOG = convert(sysname, null), TABLE_SCHEMA = convert(sysname, null), TABLE_NAME = convert(sysname, null), STATISTICS_CATALOG = convert(sysname, null), STATISTICS_SCHEMA = convert(sysname, null), STATISTICS_NAME = convert(sysname, null), STATISTICS_TYPE = convert(smallint,0), COLUMN_NAME = convert(sysname, null), COLUMN_GUID = convert(uniqueidentifier, null), COLUMN_PROPID = convert(int, null), ORDINAL_POSITION = convert(int, null), SAMPLE_PCT = convert(smallint, null), LAST_UPDATE_TIME = convert(datetime, null), NO_OF_RANGES = convert(int, null), COLUMN_CARDINALITY = convert(bigint, null), TUPLE_CARDINALITY = convert(bigint, null), TABLE_CARDINALITY = convert(bigint, null), AVG_COLUMN_LENGTH = convert(int, null) where 1=0 <КЈW е 8 create proc sp_table_statistics_rowset;2 (@table_catalog sysname = null, @table_schema sysname = null, @table_name sysname = null, @stat_catalog sysname = null, @stat_schema sysname = null, @stat_name sysname = null) as begin set nocount on -- check in parameters if ((@table_catalog is not null) and (db_name() <> @table_catalog) or (@stat_catalog is not null) and (db_name() <> @stat_catalog)) begin /* If qualifier doesn't match current database */ raiserror 20001 '~~Rush_5~~' return end --- create temp table create table #spstattab( tblcatalog sysname collate database_default not null, tblschema sysname collate database_default not null, tblname sysname collate database_default not null, statname sysname collate database_default not null ) insert into #spstattab select db_name(), user_name(o.uid), o.name, x.name from sysobjects o, sysindexes x where o.type in ('U') and (@table_name is null or o.name = @table_name) and (@table_schema is null or @table_schema = user_name(o.uid)) and (@stat_name is null or @stat_name = x.name) and (@stat_schema is null or @stat_schema = user_name(o.uid)) and x.id = o.id and permissions(o.id) <> 0 and x.statblob is not null order by 1,2,3,4 -- fast forward CURSOR OVER THE temp TABLE declare ff_csr cursor fast_forward for select tblcatalog, tblschema, tblname, statname from #spstattab declare @tblcatalog sysname, @tblschema sysname, @tblname sysname, @statname sysname, @qtbl nvarchar(4000), @rowsetcount int set @rowsetcount = 0 open ff_csr fetch ff_csr into @tblcatalog, @tblschema, @tblname, @statname while @@fetch_status >= 0 begin set @rowsetcount = @rowsetcount + 1 set @qtbl = @tblcatalog + '.' + @tblschema + '.' + @tblname dbcc show_statistics(@qtbl, @statname) with stat_header join density_vector fetch ff_csr into @tblcatalog, @tblschema, @tblname, @statname end close ff_csr deallocate ff_csr --- drop temp table drop table #spstattab if @rowsetcount = 0 begin select TABLE_CATALOG = convert(sysname, null), TABLE_SCHEMA = convert(sysname, null), TABLE_NAME = convert(sysname, null), STATISTICS_CATALOG = convert(sysname, null), STATISTICS_SCHEMA = convert(sysname, null), STATISTICS_NAME = convert(sysname, null), STATISTICS_TYPE = convert(smallint,0), COLUMN_NAME = convert(sysname, null), COLUMN_GUID = convert(uniqueidentifier, null), COLUMN_PROPID = convert(int, null), ORDINAL_POSITION = convert(int, null), SAMPLE_PCT = convert(smallint, null), LAST_UPDATE_TIME = convert(datetime, null), NO_OF_RANGES = convert(int, null), COLUMN_CARDINALITY = convert(bigint, null), TUPLE_CARDINALITY = convert(bigint, null), TABLE_CARDINALITY = convert(bigint, null), AVG_COLUMN_LENGTH = convert(int, null) where 1=0 end set nocount off end <ф нW [8create procedure sp_droplinkedsrvlogin @rmtsrvname sysname, @locallogin sysname as declare @srvid smallint declare @localsid varbinary(85) -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_droplinkedsrvlogin') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- CHECK REMOTE SERVER NAME. select @srvid = srvid from master.dbo.sysservers where srvname = @rmtsrvname if @srvid is null begin raiserror(15015,-1,-1,@rmtsrvname) return (1) end -- CHECK LOCAL USER NAME IF GIVEN if @locallogin is not null begin select @localsid = suser_sid(@locallogin) if (@localsid IS NULL) begin raiserror(15067,-1,-1,@locallogin) return (1) end end -- DELETE MAPPING(s) update master.dbo.sysxlogins set xstatus = xstatus & ~192 where srvid = @srvid AND ishqoutmap = 1 AND isrpcinmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) if @@rowcount = 0 delete master.dbo.sysxlogins where srvid = @srvid AND ishqoutmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) -- RETURN SUCCESS return(0) -- sp_droplinkedsrvlogin !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Щє`™—<ч˜Ј F7"Їv<еёW З8create procedure sp_bindefault --- 1996/08/30 20:04 @defname nvarchar(776), /* name of the default */ @objname nvarchar(517), /* table or usertype name */ @futureonly varchar(15) = NULL /* flag to indicate extent of binding */ as declare @defid int /* id of the default to bind */ declare @futurevalue varchar(15) /* the value of @futureonly that causes ** the binding to be limited */ declare @vc1 nvarchar(517) ,@tab_id integer ,@parent_obj integer ,@cur_tab_id integer ,@colid smallint ,@xtype tinyint ,@xusertype smallint ,@col_status tinyint ,@col_default int ,@identity binary(1) declare @UnqualDef sysname ,@QualDef1 sysname ,@QualDef2 sysname ,@QualDef3 sysname ,@UnqualObj sysname ,@QualObj1 sysname ,@QualObj2 sysname ,@QualObj3 sysname set cursor_close_on_commit off set nocount on select @futurevalue = 'futureonly' /* initialize @futurevalue */ select @identity = 0X80 /* identity columns*/ /* ** When a default or rule is bound to a user-defined datatype, it is also ** bound, by default, to any columns of the user datatype that are currently ** using the existing default or rule as their default or rule. This default ** action may be overridden by setting @futureonly = @futurevalue when the ** procedure is invoked. In this case existing columns with the user ** datatype won't have their existing default or rule changed. */ -- get name parts -- select @UnqualDef = parsename(@defname, 1), @QualDef1 = parsename(@defname, 2), @QualDef2 = parsename(@defname, 3), @QualDef3 = parsename(@defname, 4) select @UnqualObj = parsename(@objname, 1), @QualObj1 = parsename(@objname, 2), @QualObj2 = parsename(@objname, 3), @QualObj3 = parsename(@objname, 4) IF (@UnqualDef is NULL OR @QualDef3 is not null) begin raiserror(15253,-1,-1,@defname) return (1) end IF (@UnqualObj is NULL OR @QualObj3 is not null) begin raiserror(15253,-1,-1,@objname) return (1) end ------------------ Verify database. if ((@QualObj2 is not null and @QualObj1 is null) or (@QualDef2 is not null and @QualDef2 <> db_name())) begin raiserror(15076,-1,-1) return (1) end /* ** Check that the @futureonly argument, if supplied, is correct. */ if (@futureonly IS NOT NULL) begin select @futureonly = lower(@futureonly) if (@futureonly <> @futurevalue) begin raiserror(15100,-1,-1) return (1) end end /* ** Check to see that the default exists and get its id. */ select @defid = id, @parent_obj = parent_obj from sysobjects where id = object_id(@defname) and xtype='D ' -- default object 6 if @defid is NULL begin raiserror(15016,-1,-1,@UnqualDef) return (1) end if @parent_obj > 0 begin raiserror(15050,-1,-1,@defname) return(1) end /* ** If @objname is of the form tab.col then we are binding to a column. ** Otherwise its a datatype. In the column case, we need to extract ** and verify the table and column names and make sure the user owns ** the table that is getting the default bound. We also need to ensure ** that we don't overwrite any DRI style defaults. */ if @QualObj1 is not null begin if (@QualObj2 is not null) select @vc1 = QuoteName(@QualObj2) + '.' + QuoteName(@QualObj1) else select @vc1 = QuoteName(@QualObj1) select @tab_id = o.id, @colid = c.colid, @xtype = c.xtype, @col_status = c.status, @col_default = c.cdefault from sysobjects o, syscolumns c where c.id = object_id(@vc1,'local') and c.name = @UnqualObj and o.id = c.id and o.xtype='U ' /*Check that table and column exist*/ if @tab_id is null begin raiserror(15104,-1,-1,@QualObj1,@UnqualObj) return (1) end /* ** If the column type is timestamp, disallow the bind. ** Defaults can't be bound to timestamp columns. */ if type_name(@xtype) = 'timestamp' begin raiserror(15101,-1,-1) return (1) end /* ** If the column category is identity, disallow the bind. ** Defaults can't be bound to identity columns. */ if @col_status & @identity = @identity begin raiserror(15102,-1,-1) return (1) end /* ** Check to see if the column was created with or altered ** to have a DRI style default value. */ if @col_default > 0 if exists (select * from sysobjects o where @col_default = o.id and @tab_id = o.parent_obj) begin raiserror(15103,-1,-1) return (1) end BEGIN TRANSACTION txn_bindefault_1 /* ** Since binding a default is a schema change, update schema count ** for the object in the sysobjects table. */ dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. update syscolumns set cdefault = @defid where id = @tab_id and colid = @colid COMMIT TRANSACTION txn_bindefault_1 raiserror(15511,-1,-1) end else begin /* ** We're binding to a user type. In this case, the @objname ** is really the name of the user datatype. ** When we bind to a user type, any existing columns get changed ** to the new binding unless their current binding is not equal ** to the current binding for the usertype or if they set the ** @futureonly parameter to @futurevalue. */ declare @olddefault int /* current default for type */ /* ** Get the current default for the datatype. */ select @xusertype = xusertype, @olddefault = tdefault from systypes where name = @UnqualObj and xusertype > 256 AND (is_member('db_owner') = 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @xusertype is null begin raiserror(15105,-1,-1) return (1) end update systypes set tdefault = @defid from systypes where xusertype = @xusertype raiserror(15512,-1,-1) /* ** need the new binding. */ if isnull(@futureonly, ' ') <> @futurevalue begin declare ms_crs_t1 cursor local static for select distinct c.id ,c.colid from syscolumns c JOIN sysobjects o ON c.id = o.id AND o.xtype = N'U ' where c.xusertype = @xusertype and (c.cdefault = @olddefault OR c.cdefault = 0 ) order by c.id for read only open ms_crs_t1 BEGIN TRANSACTION txn_bindefault_3 fetch next from ms_crs_t1 into @tab_id, @colid WHILE @@fetch_status = 0 begin select @vc1 = quotename(user_name(OBJECTPROPERTY(@tab_id,'OwnerId'))) + '.' + quotename(object_name(@tab_id)) dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. select @cur_tab_id = @tab_id while @cur_tab_id = @tab_id and @@fetch_status = 0 begin update syscolumns set cdefault = @defid from syscolumns c where c.id = @tab_id and c.colid = @colid fetch next from ms_crs_t1 into @tab_id, @colid end end --loop 3 COMMIT TRANSACTION txn_bindefault_3 deallocate ms_crs_t1 raiserror(15513,-1,-1) end end return (0) -- sp_bindefault !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`š˜<@ И™Ј 27"„ШY(<œЭ)V e8create procedure sp_helplanguage --- 1996/04/08 00:00 @language sysname = NULL as /* Print all languages if the user didn't give the language name. */ if @language is null begin if exists (select * from master.dbo.syslanguages) select * from master.dbo.syslanguages else raiserror(15452,-1,-1) /* Find out whether us_english is there or not. */ if not exists (select * from master.dbo.syslanguages where name = 'us_english') raiserror(15453,-1,-1) return (0) end /* Report information on this language. */ if exists (select * from master.dbo.syslanguages where name = @language) begin select * from master.dbo.syslanguages where name = @language return (0) end if exists (select * from master.dbo.syslanguages where alias = @language) begin select * from master.dbo.syslanguages where alias = @language return (0) end /* Couldn't find this language. */ if @language = 'us_english' begin raiserror(15453,-1,-1) return (0) end else begin raiserror(15033,-1,-1,@language) return (1) end -- sp_helplanguage <нГV d8/* Procedure for 8.0 server */ create proc sp_linkedservers_rowset ( @srvname sysname ) as IF is_srvrolemember('sysadmin') = 1 begin select SVR_NAME = srvname, SVR_PRODUCT = srvproduct, SVR_PROVIDERNAME = providername, SVR_DATASOURCE = datasource, SVR_PROVIDERSTRING = providerstring, SVR_LOCATION = location, SVR_CATALOG = catalog from master.dbo.sysservers where srvname = @srvname and (srvstatus & 128) = 128 order by 1 end ELSE begin select SVR_NAME = srvname, SVR_PRODUCT = srvproduct, SVR_PROVIDERNAME = providername, SVR_DATASOURCE = datasource, SVR_PROVIDERSTRING = NULL, SVR_LOCATION = location, SVR_CATALOG = catalog from master.dbo.sysservers where srvname = @srvname and (srvstatus & 128) = 128 order by 1 end <нГV ќ8create proc sp_linkedservers_rowset;2 as IF is_srvrolemember('sysadmin') = 1 begin select SVR_NAME = srvname, SVR_PRODUCT = srvproduct, SVR_PROVIDERNAME = providername, SVR_DATASOURCE = datasource, SVR_PROVIDERSTRING = providerstring, SVR_LOCATION = location, SVR_CATALOG = catalog from master.dbo.sysservers where (srvstatus & 128) = 128 order by 1 end ELSE begin select SVR_NAME = srvname, SVR_PRODUCT = srvproduct, SVR_PROVIDERNAME = providername, SVR_DATASOURCE = datasource, SVR_PROVIDERSTRING = NULL, SVR_LOCATION = location, SVR_CATALOG = catalog from master.dbo.sysservers where (srvstatus & 128) = 128 order by 1 end <ЋчшV “ 8create procedure sp_addlinkedsrvlogin @rmtsrvname sysname, @useself varchar(8) = 'true', @locallogin sysname = NULL, @rmtuser sysname = NULL, @rmtpassword sysname = NULL as declare @srvid smallint, @status smallint, @localsid varbinary(85), @ret int -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addlinkedsrvlogin') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE @useself PARAMETER -- select @useself = lower(@useself) if @useself is null or @useself not in ('true','false') begin raiserror(15600,-1,-1,'sp_addlinkedsrvlogin') return 1 end -- CHECK REMOTE SERVER NAME. select @srvid = srvid from master.dbo.sysservers where srvname = @rmtsrvname if @srvid is null begin raiserror(15015,-1,-1,@rmtsrvname) return (1) end -- IF SPECIFIED CHECK LOCAL USER NAME if (@locallogin IS NOT NULL) begin select @localsid = sid from master.dbo.syslogins where loginname = @locallogin if @localsid IS NULL begin -- ADD ROW FOR NT LOGIN IF NEEDED -- execute @ret = sp_MSaddlogin_implicit_ntlogin @locallogin if (@ret = 0) select @localsid = sid from master.dbo.syslogins where loginname = @locallogin if (@localsid IS NULL) begin raiserror(15067,-1,-1,@locallogin) return (1) end end end -- 64 IMPLIES sysxlogins::ishqoutmap is TRUE select @status = 64 -- IF @useself IS TRUE IT OVERRIDES PARAMETERS @rmtuser, and @rmtpassword if @useself = 'true' begin select @rmtuser = NULL select @rmtpassword = NULL select @status = @status | 128 end BEGIN TRAN -- DELETE EXISTING MAPPING(s) FOR THIS @sid update master.dbo.sysxlogins set xstatus = xstatus & ~192 where srvid = @srvid AND ishqoutmap = 1 AND isrpcinmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) if @@rowcount = 0 delete master.dbo.sysxlogins where srvid = @srvid AND ishqoutmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) -- ATTEMPT TO TAG THIS ONTO EXISTING ROW -- update master.dbo.sysxlogins set xstatus = (xstatus & ~192) | @status, xdate2 = getdate(), password = convert(varbinary(256), encrypt(@rmtpassword)) where srvid = @srvid AND isrpcinmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) AND ((name IS NULL AND @rmtuser IS NULL) OR name = @rmtuser) -- IF NO ROW UPDATED, INSERT NEW ROW -- if (@@rowcount = 0) insert master.dbo.sysxlogins values (@srvid, @localsid, @status, getdate(), getdate(), @rmtuser, convert(varbinary(256), encrypt(@rmtpassword)), 0, NULL) COMMIT TRAN -- RETURN SUCCESS return(0) -- sp_addlinkedsrvlogin !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!% )Х`›™<ЌLšЈ  7"Oa<HЙПU  8 /* Procedure for 8.0 server */ CREATE PROCEDURE sp_table_privileges_rowset ( @table_name sysname, @table_schema sysname = null, @grantor sysname = null, @grantee sysname = null ) as select GRANTOR = user_name(p.grantor), GRANTEE = user_name(u.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, PRIVILEGE_TYPE = convert(nvarchar(30), case p.action when 193 then N'SELECT' when 195 then N'INSERT' when 196 then N'DELETE' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,case when p.protecttype = 205 then 0 else 1 end) from sysprotects p, sysobjects o, sysusers u, sysmembers m where o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and (@grantee is null or @grantee = user_name(u.uid)) and o.type in ('U','V','S') and p.id = o.id and (@grantor is null or @grantor = user_name(p.grantor)) /* expand groups - AKUNDONE: only 1 level of grp unrolling. */ and (u.uid > 0 and u.uid < 16384) and ((p.uid = u.uid) or (p.uid = m.groupuid and u.uid = m.memberuid)) and p.protecttype <> 206 /* only grant rows */ and p.action in (26,193,195,196,197) and o.uid <> u.uid /* no rows for owner */ and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = p.action and p1.id = p.id and p1.uid = u.uid) union select /* Add rows for table owner */ GRANTOR = user_name(u.uid), GRANTEE = user_name(o.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, PRIVILEGE_TYPE = convert(nvarchar(30), case v.number when 193 then N'SELECT' when 195 then N'INSERT' when 196 then N'DELETE' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,1) from sysobjects o, master.dbo.spt_values v, sysusers u where o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and (@grantee is null or @grantee = user_name(o.uid)) and o.type in ('U','V','S') and u.uid = 1 /* grantor is dbo of database */ and (@grantor is null or @grantor = user_name(u.uid)) and v.type = 'P' /* cross product to get all exposed privileges */ and v.number in (26,193,195,196,197) and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = v.number and p1.id = o.id and p1.uid = o.uid) order by 4,5,6,1,2 <HЙПU  8CREATE PROCEDURE sp_table_privileges_rowset;2 ( @table_schema sysname = null, @grantor sysname = null, @grantee sysname = null ) as select GRANTOR = user_name(p.grantor), GRANTEE = user_name(u.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, PRIVILEGE_TYPE = convert(nvarchar(30), case p.action when 193 then N'SELECT' when 195 then N'INSERT' when 196 then N'DELETE' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,case when p.protecttype = 205 then 0 else 1 end) from sysprotects p, sysobjects o, sysusers u, sysmembers m where o.type in ('U','V','S') and (@table_schema is null or @table_schema = user_name(o.uid)) and (@grantee is null or @grantee = user_name(u.uid)) and p.id = o.id and (@grantor is null or @grantor = user_name(p.grantor)) /* expand groups - AKUNDONE: only 1 level of grp unrolling. */ and (u.uid > 0 and u.uid < 16384) and ((p.uid = u.uid) or (p.uid = m.groupuid and u.uid = m.memberuid)) and p.protecttype <> 206 /* only grant rows */ and p.action in (26,193,195,196,197) and o.uid <> u.uid /* no rows for owner */ and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = p.action and p1.id = p.id and p1.uid = u.uid) union select /* Add rows for table owner */ GRANTOR = user_name(u.uid), GRANTEE = user_name(o.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, PRIVILEGE_TYPE = convert(nvarchar(30), case v.number when 193 then N'SELECT' when 195 then N'INSERT' when 196 then N'DELETE' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,1) from sysobjects o, master.dbo.spt_values v, sysusers u where o.type in ('U','V','S') and (@table_schema is null or @table_schema = user_name(o.uid)) and (@grantee is null or @grantee = user_name(o.uid)) and u.uid = 1 /* grantor is dbo of database */ and (@grantor is null or @grantor = user_name(u.uid)) and v.type = 'P' /* cross product to get all exposed privileges */ and v.number in (26,193,195,196,197) and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = v.number and p1.id = o.id and p1.uid = o.uid) order by 4,5,6,1,2 <HЙПU A8create procedure sp_table_privileges_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null, @grantor sysname = null, @grantee sysname = null ) as select GRANTOR, GRANTEE, TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, PRIVILEGE_TYPE, IS_GRANTABLE from master.dbo.SYSREMOTE_TABLE_PRIVILEGES < @table_server, @table_catalog, @table_schema, @table_name, @grantor, @grantee > order by 3,4,5,6,1,2 <rУєU 8create procedure sp_helplinkedsrvlogin @rmtsrvname sysname = NULL, @locallogin sysname = NULL as declare @srvid smallint, @status smallint, @ret int -- CHECK REMOTE SERVER NAME. if @rmtsrvname is not null begin select @srvid = srvid from master.dbo.sysservers where srvname = @rmtsrvname if @srvid is null begin raiserror(15015,-1,-1,@rmtsrvname) return (1) end end -- IF SPECIFIED CHECK LOCAL USER NAME if (@locallogin IS NOT NULL) begin select u.srvname as [Linked Server], t.name as [Local Login], s.selfoutmap as [Is Self Mapping], s.name as [Remote Login] from master.dbo.sysxlogins s, master.dbo.sysxlogins t, master.dbo.sysservers u where ((@rmtsrvname is null or @rmtsrvname=u.srvname) and u.srvid= s.srvid) and s.ishqoutmap = 1 and s.sid=t.sid and t.name = @locallogin and t.ishqoutmap = 0 end if (@locallogin IS NULL) begin -- Get global mapping (s.sid is NULL) if any select u.srvname as [Linked server], NULL as [Local Login], s.selfoutmap as [Is Self Mapping], s.name as [Remote Login] from master.dbo.sysxlogins s, master.dbo.sysservers u where ((@rmtsrvname is null or @rmtsrvname=u.srvname)and u.srvid= s.srvid) and s.ishqoutmap = 1 and s.sid is NULL UNION -- Get specific mappings select u.srvname as [Linked server], t.name as [Local Login], s.selfoutmap as [Is Self Mapping], s.name as [Remote Login] from master.dbo.sysxlogins s, master.dbo.sysxlogins t, master.dbo.sysservers u where ((@rmtsrvname is null or @rmtsrvname=u.srvname) and u.srvid= s.srvid) and s.ishqoutmap = 1 and s.sid=t.sid and t.ishqoutmap = 0 order by u.srvname end -- RETURN SUCCESS return(0) -- sp_helplinkedsrvlogin !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!0яс `œš<ЕE›Јˆћ7"ИКСы<*…AT Ј8create procedure sp_attach_db @dbname sysname , @filename1 nvarchar(260) , @filename2 nvarchar(260) = NULL , @filename3 nvarchar(260) = NULL , @filename4 nvarchar(260) = NULL , @filename5 nvarchar(260) = NULL , @filename6 nvarchar(260) = NULL , @filename7 nvarchar(260) = NULL , @filename8 nvarchar(260) = NULL , @filename9 nvarchar(260) = NULL , @filename10 nvarchar(260) = NULL , @filename11 nvarchar(260) = NULL , @filename12 nvarchar(260) = NULL , @filename13 nvarchar(260) = NULL , @filename14 nvarchar(260) = NULL , @filename15 nvarchar(260) = NULL , @filename16 nvarchar(260) = NULL as declare @execstring nvarchar (4000) set nocount on IF ((@dbname is null OR datalength(@dbname) = 0) OR (@filename1 is null OR datalength(@filename1) = 0)) begin raiserror (15004,-1,-1) return (1) end -- build initial CREATE DATABASE select @execstring = 'CREATE DATABASE ' + quotename( @dbname , '[') + ' ON (FILENAME =' + '''' + REPLACE(@filename1,N'''',N'''''') + '''' -- add any additional files if (@filename2 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename2 ,N'''',N'''''') + '''' end if (@filename3 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename3 ,N'''',N'''''') + '''' end if (@filename4 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename4 ,N'''',N'''''') + '''' end if (@filename5 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename5 ,N'''',N'''''') + '''' end if (@filename6 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename6 ,N'''',N'''''') + '''' end if (@filename7 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename7 ,N'''',N'''''') + '''' end if (@filename8 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename8 ,N'''',N'''''') + '''' end if (@filename9 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename9 ,N'''',N'''''') + '''' end if (@filename10 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename10 ,N'''',N'''''') + '''' end if (@filename11 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename11 ,N'''',N'''''') + '''' end if (@filename12 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename12 ,N'''',N'''''') + '''' end if (@filename13 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename13 ,N'''',N'''''') + '''' end if (@filename14 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename14 ,N'''',N'''''') + '''' end if (@filename15 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename15 ,N'''',N'''''') + '''' end if (@filename16 IS NOT NULL) begin select @execstring = @execstring + ' ), (FILENAME= ''' + REPLACE(@filename16 ,N'''',N'''''') + '''' end -- note it as for attach select @execstring = @execstring + ' ) FOR ATTACH' exec (@execstring) if @@error <> 0 begin -- No need to raiserror as the CREATE DATABASE will do so return(1) end return (0) -- sp_attach_db <9ŸU й 8create procedure sp_helpserver @server sysname = NULL, -- server name @optname varchar(35) = NULL, -- option name to limit results @show_topology varchar(1) = NULL -- 't' to show topology coordinates as -- PRELIMINARY set nocount on declare @optbit int, @bitdesc sysname, @curbit int -- CHECK IF REQUESTED SERVER(S) EXIST if not exists (select * from master.dbo.sysservers where (@server is null or srvname = @server)) begin if @server is null raiserror(15205,-1,-1) else raiserror(15015,-1,-1,@server) return (1) end -- GET THE BIT VALUE(S) FOR THE OPTION REQUESTED if @optname is not null begin select @optbit = number from master.dbo.spt_values where type = 'A' and name = @optname if @optbit is null begin raiserror(15206,-1,-1,@optname) return(1) end end else select @optbit = -1 -- 0xffffffff -- MAKE WORK COPY OF RELEVANT PART OF SYSSERVERS select name = srvname, network = srvnetname, status = convert(varchar(100), ''), id = srvid, srvstat = srvstatus, topx = topologyx, topy = topologyy, collation_name = convert(sysname, CollationPropertyFromID(srvcollation, 'name')), connect_timeout = connecttimeout, query_timeout = querytimeout into #spt_server from master.dbo.sysservers where (@server is null or srvname = @server) and (@optname is null or srvstatus & @optbit <> 0) -- SET THE STATUS FIELD select @curbit = 1 while @curbit < 0x10000 -- bit field is a smallint begin select @bitdesc = null select @bitdesc = name from master.dbo.spt_values where type = 'A' and number = @curbit if @bitdesc is not null update #spt_server set status = status + ',' + @bitdesc where srvstat & @curbit <> 0 select @curbit = @curbit * 2 end -- SHOW THE RESULT SET if lower(@show_topology) <> 't' or @show_topology is null select name, network_name = substring(network, 1, 28), status = isnull(substring(status,2,8000),''), id = convert(char(4), id), collation_name, connect_timeout, query_timeout from #spt_server order by name else select name, network_name = substring(network, 1, 28), status = isnull(substring(status,2,8000),''), id = convert(char(4), id), collation_name, connect_timeout, query_timeout, topx, topy from #spt_server order by name -- RETURN SUCCESS return(0) -- sp_helpserver <cЉ5U d8create procedure sp_attach_single_file_db @dbname sysname, @physname nvarchar(260) as declare @execstring nvarchar (400) set nocount on IF ((@dbname is null OR datalength(@dbname) = 0) OR (@physname is null OR datalength(@physname) = 0)) begin raiserror (15004,-1,-1) return (1) end select @execstring = 'CREATE DATABASE ' + quotename( @dbname , '[') + ' ON (FILENAME =' + '''' + REPLACE(@physname,N'''',N'''''') + '''' + ' ) FOR ATTACH' exec (@execstring) if @@error <> 0 begin -- No need to raiserror as the CREATE DATABASE will do so return(1) end -- strip out replication from this database if exists (select * from master.dbo.sysobjects where name=N'sp_removedbreplication') begin exec sp_removedbreplication @dbname end return (0) -- sp_attach_single_file_db !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!с`›<й !œЈˆЊ7"wŠв—<жpзS п8 /* Procedure for 8.0 server */ create procedure sp_table_constraints_rowset ( @table_name sysname, @table_schema sysname = null, @table_catalog sysname = null, @constraint_name sysname = null, @constraint_schema sysname = null, @constraint_catalog sysname = null, @constraint_type nvarchar(255) = null ) as select CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(t_obj.uid), TABLE_NAME = t_obj.name, CONSTRAINT_TYPE = case (c.status & 0xf) when 1 then N'PRIMARY KEY' when 2 then N'UNIQUE' when 3 then N'FOREIGN KEY' when 4 then N'CHECK' end, IS_DEFERRABLE = convert(bit, 0), INITIALLY_DEFERRED = convert(bit, 0), DESCRIPTION = convert(nvarchar(1), null) from sysobjects c_obj, sysobjects t_obj, sysconstraints c where t_obj.name = @table_name and t_obj.type in ('U','S') and (@table_catalog is null or @table_catalog = db_name()) and (@table_schema is null or @table_schema = user_name(t_obj.uid)) and c.id = t_obj.id and (c.status & 0xf) between 1 and 4 and c_obj.id = c.constid and c_obj.uid = user_id() and (@constraint_name is null or c_obj.name = @constraint_name) and (@constraint_catalog is null or @constraint_catalog = db_name()) and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and (@constraint_type is null or (c.status & 0xf) = case @constraint_type when N'PRIMARY KEY' then 1 when N'UNIQUE' then 2 when N'FOREIGN KEY' then 3 when N'CHECK' then 4 end) order by 2,3,5,6,7 <жpзS ‚8create procedure sp_table_constraints_rowset;2 ( @table_schema sysname = null, @table_catalog sysname = null, @constraint_name sysname = null, @constraint_schema sysname = null, @constraint_catalog sysname = null, @constraint_type nvarchar(255) = null ) as select CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(t_obj.uid), TABLE_NAME = t_obj.name, CONSTRAINT_TYPE = case (c.status & 0xf) when 1 then N'PRIMARY KEY' when 2 then N'UNIQUE' when 3 then N'FOREIGN KEY' when 4 then N'CHECK' end, IS_DEFERRABLE = convert(bit, 0), INITIALLY_DEFERRED = convert(bit, 0), DESCRIPTION = convert(nvarchar(1), null) from sysobjects c_obj, sysobjects t_obj, sysconstraints c where t_obj.type in ('U','S') and (@table_catalog is null or @table_catalog = db_name()) and (@table_schema is null or @table_schema = user_name(t_obj.uid)) and c.id = t_obj.id and (c.status & 0xf) between 1 and 4 and c_obj.id = c.constid and c_obj.uid = user_id() and (@constraint_name is null or c_obj.name = @constraint_name) and (@constraint_catalog is null or @constraint_catalog = db_name()) and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and (@constraint_type is null or (c.status & 0xf) = case @constraint_type when N'PRIMARY KEY' then 1 when N'UNIQUE' then 2 when N'FOREIGN KEY' then 3 when N'CHECK' then 4 end) order by 2,3,5,6,7 <{ T `8create procedure sp_setnetname --- 1995/12/22 13:07 @server sysname -- server name ,@netname sysname -- new net name as DECLARE @srvproduct nvarchar(128) -- product name; must be SQL Server DECLARE @srvstatus int -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_setnetname') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('setupadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- CHECK SERVER NAME (MUST BE A SQL SERVER!) select @srvproduct = srvproduct, @srvstatus = srvstatus from master.dbo.sysservers where srvname = @server if @srvproduct is NULL begin raiserror(15015,-1,-1,@server) return (1) end -- case checking is performed at sp_addlinkedserver so direct comparison is OK here else if @srvproduct <> N'SQL Server' begin raiserror(15576,-1,-1,@server) return (1) end -- CHECK FOR LOOPBACK SERVER AND ISSUE WARNING -- Only check linked server for "data access" since that's where the limitation -- lies. Replication calls this code although only for RPC servers, so they -- shouldn't be seeing this message if @netname = @@SERVERNAME and @srvstatus & 128 = 128 and @server <> @netname begin raiserror(15577,-1,-1) end -- DO THE UPDATE update master.dbo.sysservers set datasource = @netname, schemadate = getdate() where srvname = @server -- SUCCESS return (0) -- sp_setnetname !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!С ?`žœ<э Јˆt7"0Dо <Ž2$R І8create procedure sp_serveroption @server sysname, -- server name to change @optname varchar(35), -- option name to turn on/off @optvalue nvarchar(128) -- true or false, on or off, collation name, or timeout value as -- VARIABLES SET NOCOUNT ON declare @statvalue smallint, -- status bit of option @collationID int, -- on disk collation ID of the server @timeout int, -- value for setting timeout options @fSet int, -- 0 or 1 for setting boolean option @distributor sysname -- for checking for multiple dist servers -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_serveroption') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('setupadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- RESOLVE SERVER NAME IF NOT EXISTS (SELECT * FROM master.dbo.sysservers WHERE srvname = @server) BEGIN raiserror(15015,-1,-1,@server) return (1) END -- HANDLE VARIOUS OPTIONS SELECT @optname = lower(@optname), @optvalue = lower(@optvalue) IF @optname = 'collation name' BEGIN -- Collation Name: May reset by string 'null' or NULL value IF @optvalue IS NULL OR @optvalue = 'null' OR COLLATIONPROPERTY(@optvalue, 'collationid') IS NOT NULL BEGIN SELECT @collationID = convert(int, COLLATIONPROPERTY(@optvalue, 'collationid')) if @optvalue is NOT NULL BEGIN if convert(int, COLLATIONPROPERTY(@optvalue, 'isunicodeonly')) = 1 BEGIN raiserror(15301, -1, -1, @optvalue) return (1) END if convert(int, COLLATIONPROPERTY(@optvalue, 'issupportedbyos')) = 0 BEGIN raiserror(15394, -1, -1, @optvalue) return (1) END END UPDATE master.dbo.sysservers SET srvcollation = @collationID, -- Turn 'collation compatible' off when srvcollation NOT NULL srvstatus = CASE WHEN @collationID IS NOT NULL THEN (srvstatus & ~256) ELSE srvstatus END, schemadate = getdate() WHERE srvname = @server RETURN 0 END END ELSE IF @optname IN ('connect timeout','query timeout') BEGIN -- TIMEOUT OPTIONS: Value must be integer-numeric >= 0 IF ISNUMERIC (@optvalue) = 1 AND convert(int, @optvalue) >= 0 BEGIN SELECT @timeout = convert (int, @optvalue) IF @optname = 'connect timeout' UPDATE master.dbo.sysservers SET connecttimeout = @timeout, schemadate = getdate() WHERE srvname = @server ELSE UPDATE master.dbo.sysservers SET querytimeout = @timeout, schemadate = getdate() WHERE srvname = @server RETURN 0 END END ELSE BEGIN -- BIT-VALUED OPTION: GET STATUS BIT AND WHETHER TO SET OR CLEAR -- -- NOTE: CANNOT MAKE A SYSTEM SERVER INTO NON-SYSTEM -- SELECT @statvalue = number FROM master.dbo.spt_values WHERE name = @optname and type = 'A' SELECT @fSet = CASE WHEN @optvalue IN ('true','on') THEN 1 WHEN @optvalue IN ('false','off') AND @optname <> 'system' THEN 0 ELSE NULL END IF @statvalue IS NOT NULL AND @fSet IS NOT NULL BEGIN -- ONLY ONE SERVER MAY BE A DISTRIBUTION SERVER IF @optname = 'dist' AND @optvalue in ('true', 'on') BEGIN SELECT @distributor = srvname from master.dbo.sysservers where (srvstatus & @statvalue) <> 0 IF @distributor is not null BEGIN raiserror(14099,-1,-1, @distributor) RETURN 1 END END ELSE IF @optname = 'lazy schema validation' AND @optvalue in ('true', 'on') BEGIN IF serverproperty('EngineEdition') <> 3 -- Enterprise edition BEGIN raiserror(17050,-1,-1, @optname) RETURN 1 END END -- DO THE UPDATE UPDATE master.dbo.sysservers SET srvstatus = (srvstatus & ~@statvalue) | (@statvalue * @fSet), -- Set srvcollation NULL when turning 'collation compatible' on srvcollation = CASE WHEN @optname='collation compatible' AND @fSet=1 THEN NULL ELSE srvcollation END, schemadate = getdate() WHERE srvname = @server RETURN 0 END END -- IF WE REACH HERE, WE HAVE AN INVALID PARAMETER raiserror(15600,-1,-1,'sp_serveroption') RETURN 1 -- sp_serveroption <И 'local' begin raiserror(15379,-1,-1,@local) return (1) end -- ERROR IF ALREADY HAVE A LOCAL SERVER NAME if exists (select * from master.dbo.sysservers where srvid = 0) begin raiserror(15090,-1,-1) return (1) end end -- ADD THE SERVER (CHECKS PERMISSIONS, ETC) execute @retcode = sp_addlinkedserver @server if @retcode <> 0 return @retcode -- SET THE SERVER ID IF LOCAL OPTION SPECIFIED if @local = 'local' begin declare @srvid smallint -- UPDATE DEFAULT MAPPING CREATED BY sp_addlinkedserver select @srvid = srvid from master.dbo.sysservers where srvname = @server update master.dbo.sysxlogins set srvid = 0 where srvid = @srvid update master.dbo.sysservers set srvid = 0, schemadate = getdate() where srvname = @server end -- FOR COMPATIBILITY, TURN OFF THE data access SERVER OPTION execute @retcode = sp_serveroption @server, 'data access', 'off' if @retcode <> 0 return @retcode --SET 'local login mapping', 'off' (make rpc-s behave as in 6.5) update master.dbo.sysservers set srvstatus = srvstatus & ~32, schemadate = getdate() where srvname = @server -- SUCCESS return (0) -- sp_addserver <ё`MS Ш8create procedure sp_altermessage --- 1996/04/08 00:00 @message_id int, @parameter sysname, @parameter_value varchar(5) as begin declare @msg varchar(128) select @parameter = upper(@parameter) select @parameter_value = upper(@parameter_value) -- Must be ServerAdmin to manage messages if is_srvrolemember('serveradmin') = 0 begin raiserror(15247,-1,-1) return (1) end /* ** Does this message exist? */ if (not exists (select * from master.dbo.sysmessages where error = @message_id)) begin raiserror(15179,-1,-1,@message_id) return (1) end /* ** Is Parameter 'WITH_LOG'? */ if (@parameter <> 'WITH_LOG') begin raiserror(15176,-1,-1) return (1) end /* ** Is ParameterValue TRUE or FALSE? */ if (@parameter_value not in ('TRUE', 'FALSE')) begin raiserror(15277,-1,-1) return (1) end /* ** Turn dlevel bit 7 on or off */ if (@parameter_value = 'TRUE') begin update master.dbo.sysmessages set dlevel = dlevel | 0x80 where error = @message_id end else if (@parameter_value = 'FALSE') begin update master.dbo.sysmessages set dlevel = dlevel & 0x7FFFFF7F where error = @message_id end return (0) end -- sp_altermessage !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!CJ`Ÿ<f’žЈˆ!7"^Тві<U0Q z8create procedure sp_dropserver @server sysname, -- server name @droplogins char(10) = NULL -- drop all related logins? as declare @ret int -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dropserver') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('setupadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- CHECK SERVER NAME / GET SERVER ID declare @srvid smallint select @srvid = srvid from master.dbo.sysservers where srvname = @server if @srvid is null begin raiserror(15015,-1,-1,@server) return (1) end -- CHECK @droplogins PARAMETER (FOR RELATED SYSREMOTELOGINS ROWS) if @droplogins is null begin -- DONT consider default mapping for outgoing events if exists (select * from master.dbo.sysxlogins where srvid = @srvid and not(ishqoutmap = 1 and xstatus&192 = 192 and sid is null and name is null and password is null)) begin raiserror(15190,-1,-1,@server) return (1) end end else if @droplogins <> 'droplogins' begin raiserror(15191,-1,-1) return (1) end -- CHECK TO SEE IF THE SERVER IS USED BY REPLICATION. if object_id('master.dbo.sp_MSrepl_check_server') is not null begin execute @ret = master.dbo.sp_MSrepl_check_server @server if @ret <> 0 or @@error <> 0 return 1 end -- DROP THE SERVER (ALONG WITH ANY REMOTE LOGINS) begin transaction delete master.dbo.sysxlogins where srvid = @srvid delete master.dbo.sysservers where srvid = @srvid commit transaction -- SUCCESS return (0) -- sp_dropserver <eQ  8create procedure sp_addremotelogin --- 1996/04/08 00:00 @remoteserver sysname, /* name of remote server */ @loginame sysname = NULL, /* user's remote name */ @remotename sysname = NULL /* user's local user name */ as declare @srvid smallint declare @sid varbinary(85) -- DISALLOW USER XACT -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addremotelogin') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME -- select @srvid = srvid from master.dbo.sysservers where srvname = @remoteserver if @srvid is null begin raiserror(15015,-1,-1,@remoteserver) return (1) end -- CHECK FOR INVALID PARAMETER SYNTAX -- if @loginame is null and @remotename is not null begin raiserror(15600,-1,-1,'sp_addremotelogin') return (1) end -- VALIDATE @loginame -- if @loginame is not null begin select @sid = sid from master.dbo.syslogins where loginname = @loginame AND isntname = 0 -- cannot remap to NT login if @sid is null begin raiserror(15067,-1,-1,@loginame) return (1) end end -- CHECK FOR DUPLICATE <@remoteserver, @remotename> PAIR -- -- (Note that this works for @remotename null and not null) if exists (select * from master.dbo.sysxlogins where srvid = @srvid AND ((@remotename is null AND name is null) OR name = @remotename) AND isrpcinmap = 1) begin if @remotename is null raiserror(15066,-1,-1,@remoteserver) else raiserror(15068,-1,-1,@remotename,@remoteserver) return (1) end -- Check if there is an outgoing mapping to which we can tag on this -- incoming mapping update master.dbo.sysxlogins set xstatus = xstatus | 32, xdate2 = getdate() where srvid = @srvid AND ((@remotename is null AND name is null) OR name = @remotename) AND ((@sid is null AND sid is null) OR sid = @sid) -- If update didnt happen, add an entry. (@srvid, @remotename, @sid) if @@rowcount = 0 insert into master.dbo.sysxlogins values(@srvid, @sid, 32, getdate(), getdate(), @remotename, NULL, 0, NULL) -- SUCCESS -- return (0) -- sp_addremotelogin <d(яQ џ8 /* Procedure for 8.0 server */ create procedure sp_tables_info_rowset_64 ( @table_name sysname, @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, TABLE_TYPE = convert(nvarchar(30), case o.type when 'U' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), BOOKMARKS = convert(bit, 1), BOOKMARK_TYPE = convert(int, 1 /*DBPROPVAL_BMK_NUMERIC*/), BOOKMARK_DATATYPE = convert(smallint, 21 /*DBTYPE_UI8 */), BOOKMARK_MAXIMUM_LENGTH = convert(int, 8), BOOKMARK_INFORMATION = convert(int, 0), TABLE_VERSION = convert(bigint, ObjectPropertyEx(o.id, 'objectversion')), CARDINALITY = x.rows, DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int, null) from sysobjects o left join sysindexes x on o.id = x.id and x.indid in (0,1) where o.name = @table_name and o.type in ('U','V','S') and permissions(o.id) <> 0) as t where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 <d(яQ Ћ8create procedure sp_tables_info_rowset_64;2 ( @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, TABLE_TYPE = convert(nvarchar(30), case o.type when 'U' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), BOOKMARKS = convert(bit, 1), BOOKMARK_TYPE = convert(int, 1 /*DBPROPVAL_BMK_NUMERIC*/), BOOKMARK_DATATYPE = convert(smallint, 21 /*DBTYPE_UI8 */), BOOKMARK_MAXIMUM_LENGTH = convert(int, 8), BOOKMARK_INFORMATION = convert(int, 0), TABLE_VERSION = convert(bigint, ObjectPropertyEx(o.id, 'objectversion')), CARDINALITY = x.rows, DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int, null) from sysobjects o left join sysindexes x on o.id = x.id and x.indid in (0,1) where o.type in ('U','V','S') and permissions(o.id) <> 0) as t where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!чшк`аž<{ŸЈл7"­kO‰<ъ;P ~8create procedure sp_addlinkedserver @server sysname, -- server name @srvproduct nvarchar(128) = NULL, -- product name (dflt to ss) @provider nvarchar(128) = NULL, -- oledb provider name @datasrc nvarchar(4000) = NULL, -- oledb datasource property @location nvarchar(4000) = NULL, -- oledb location property @provstr nvarchar(4000) = NULL, -- oledb provider-string property @catalog sysname = NULL -- oledb catalog property as -- VARIABLES declare @retcode int, @srvid smallint, @srvstat smallint -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addlinkedserver') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('setupadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME execute @retcode = sp_validname @server if @retcode <> 0 return (1) -- SET DEFAULT STATUS BITS select @srvstat = 32 | 128 | 1024 -- local login mapping = 32, data access = 128 , use remote collation = 1024 -- VALIDATE OLEDB PARAMETERS if @provider is null begin -- NO PROVIDER MEANS CANNOT SPECIFY ANY PROPERTIES! if @datasrc is not null or @location is not null or @provstr is not null or @catalog is not null begin raiserror(15426,-1,-1) return (1) end -- THIS MUST BE A WELL-KNOWN SERVER TYPE (DEFAULT IS SS) if @srvproduct is null OR lower(@srvproduct) = N'sql server' begin select @srvproduct = N'SQL Server' -- force case to be this select @provider = N'SQLOLEDB' -- SQL Server provider (LUXOR) select @datasrc = @server -- datasrc is (network) server name -- For SQL Server, we want rpc in/out by default select @srvstat = @srvstat | 1 | 64 -- rpc = 1, rpc out = 64 end else -- ADD OTHER WELL-KNOWN SOURCES HERE begin raiserror(15427,-1,-1,@srvproduct) return (1) end end else if @srvproduct in (N'SQL Server') -- WELL-KNOWN SOURCES begin -- ILLEGAL TO SPECIFY PROVIDER/PROPERTIES FOR WELL-KNOWN SOURCES raiserror(15428,-1,-1,@srvproduct) return (1) end else if @srvproduct is null or lower(@srvproduct) like N'%sql server%' begin raiserror(15429,-1,-1,@srvproduct) return (1) end -- CHECK IF SERVER ALREADY EXISTS if exists (select * from master.dbo.sysservers where srvname = @server) begin raiserror(15028,-1,-1,@server) return (1) end -- GET SERVER ID FOR NEW ROW if not exists (select * from master.dbo.sysservers where srvid = 1) select @srvid = 1 else select @srvid = min(s.srvid)+1 from master.dbo.sysservers s where s.srvid < 32767 and not exists (select * from master.dbo.sysservers s2 where s2.srvid = s.srvid+1) if @srvid is null begin raiserror(15430,-1,-1) return (1) end -- ADD ROW TO SYSSERVERS BEGIN TRAN insert master.dbo.sysservers select @srvid, @srvstat, @server, @srvproduct, @provider, @datasrc, @location, @provstr, getdate(), NULL, NULL, @catalog, NULL, 0, 0 -- INSERT may have failed with row-too-big error. IF @@ERROR <> 0 BEGIN ROLLBACK TRAN RETURN (1) END -- ADD DEFAULT MAPPING FOR OUTGOING EVENTS insert into master.dbo.sysxlogins select @srvid, NULL, 192, getdate(), getdate(), NULL, NULL, 0, NULL COMMIT TRAN -- SUCCESS return (0) -- sp_addlinkedserver <FєpP Ѓ8create procedure sp_addumpdevice -- 1995/09/07 12:01 @devtype varchar(20), /* disk, tape, or diskette */ @logicalname sysname, /* logical name of the device */ @physicalname nvarchar(260), /* physical name of the device */ @cntrltype smallint = null, /* controller type - ignored. */ @devstatus varchar(40) = 'noskip' /* device characteristics */ as declare @status smallint /* status bits for device */ declare @returncode int /* ** An open txn might jeopardize a recovery. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addumpdevice') return (1) end /* ** You must be SA to execute this sproc. */ if (not is_srvrolemember('diskadmin') = 1) begin raiserror(15247,-1,-1) return (1) end select @devtype=lower(@devtype) /* ** Check out the @devtype. */ if @devtype not in ('disk', 'tape', 'diskette', 'pipe', 'virtual_device') begin raiserror(15044,-1,-1,@devtype) return (1) end /* ** Check the args are not NULL. */ if @logicalname is null begin raiserror(15045,-1,-1) return(1) end /* ** Check to see that the @logicalname is valid. */ exec @returncode = sp_validname @logicalname if @returncode <> 0 return(1) if @physicalname is null begin raiserror(15046,-1,-1) return(1) end /* ** Make sure physical file name would be unique among devices. */ if exists (select * from master.dbo.sysdevices where phyname = @physicalname) begin raiserror(15061,-1,-1,@physicalname) return (1) end /* ** Prohibit certain special english words from being logical names. */ if (@logicalname IN ('disk' ,'diskette' ,'tape' ,'floppy')) begin raiserror(15285,-1,-1,@logicalname) return (1) end /* ** Make sure that a device with @logicalname doesn't already exist. */ if exists (select * from master.dbo.sysdevices where name = @logicalname) begin raiserror(15026,-1,-1,@logicalname) return (1) end /* ** Always turn on the dump status bit. */ select @status = 16 /* ** If @devtype is a tape then check to see if devstatus is 'skip'. */ if @devtype = 'tape' begin if @devstatus not in ('noskip','skip') begin raiserror(15047,-1,-1) return (1) end if @devstatus = 'skip' select @status = @status | 8 end /* ** If a disk then the cntrltype = 2 */ if @devtype = 'disk' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 2, @logicalname, @physicalname) raiserror(15444,-1,-1) end /* ** If a diskette then the cntrltype in (3,4) */ if @devtype = 'diskette' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 3, @logicalname, @physicalname) raiserror(15445,-1,-1) end /* ** Tape device. */ if @devtype = 'tape' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 5, @logicalname,@physicalname) raiserror(15446,-1,-1) end /* ** Pipe. */ if @devtype = 'pipe' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 6, @logicalname,@physicalname) raiserror(15447,-1,-1) end /* ** Virtual device. */ if @devtype = 'virtual_device' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 7, @logicalname,@physicalname) raiserror(15031,-1,-1) end return (0) -- sp_addumpdevice !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!о`Ё#7cW ЖИЭы?Ф     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ЉŒ:уЦoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}` 7bšЁЗрQ"РШ)  """""""""'))))))***++,,,,,--.....//001111222223333336666777777788999:::::;;;;;;<<<<@@@@AAAACCCCDDDEEEEEGHIIJJJJJJJJKKKKKKKKKKNNNNNPRRUUUZZZZ[[[[[[[\\]]]]]^^^___``````aaaaaabbbbbbbbbbbbTП<TП<TП<TП<TП<TП<TП<TП<TП<TП<TП< ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ>ЦIЇ> 8’@8’@8’@8’@8’@8’@8’@8’@8’@8’@8’@ qЖƒAqЖƒAqЖƒAqЖƒA< < < " " уўkCуўkCуўkCуўkCуўkC*  уўkC   6 UGTE+ ^ ^ ^ < < " " x!чЪ­џтХЈ‹nQ4њнРЃ†iL/ѕиЛždG* №гЖ™|_B%ыЮБ”wZ= цЩЌrU8ўсФЇŠmP3љм}`CПЂ…hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z V9] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkьN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘t&W:>уЦЉŒoR5sћоСЄ‡jM0ійМŸ‚eЯВ•H+ё[дЗš}`‚џ<(жЂЙp™}Kv>ф–#LЬ Ь Xu?Жš1;ЕЕqŽ@РEEqŽ@з&и)(*0*ЈЛў'fŸа*U‚Љм4aЄч ; ^ “ М э  Q p Ї о  & e ˆ П  I p Ѕ и D o В г њ ?tЛшNЬ 2}Іењ)n•Дї4]|ЉШщ_†Ћв VŸаѕW’еQv™мNuЪ4_œНь 0Wt—Мс$OtŸд2a‚­Шљ(YzИч%HeœПь6eŒГмJƒЂЩъ , ] € С !9!f!‹!М!й!")"r"™"ж"#<#s#’#У#ш#/$R$s$˜$Н$т$%&%_%ž%У%т%&B&m&Ў&@@€?0€?@@€?CAF: aggregate function0@€?)AGGREGATE0@@€??ALL SETTABLE OPTIONS0€?€?9ANSI null default0€?р@€?1ansi_warnings0@@€?7APPLICATION ROLE0€?€?#Arabic0@€?+arithabort0€?€?-arithignore0@€?'ASSEMBLY0@€?3ASYMMETRIC KEY0@@@=ASYMMETRIC KEY USER0€?€?AU0€?€?-auto create0€?€?Cauto create statistics0€?€?Cauto update statistics0€?€?)autoclose0€?€?+autoshrink0€?@@€?#binary0@@@€?5BROKER PRIORITY0€?@@€?)bulkadmin0€?€?1C : check cns0@€?-CERTIFICATE0@@@7CERTIFICATE USER0€?€?char0@€?7CHECK CONSTRAINT0€?€?7cleanly shutdown0€?€?)clustered0€?€?CNVT0€?€??collation compatible0€?€?#common0€?€?7COMPATIBLE TYPES0€?€?Econcat null yields null0€?€?Econcat_null_yields_null0@€?'CONTRACT0€?€?5Create Database0€?€?3Create Default0€?€?5Create Function0€?€?7Create Procedure0@@@€?+CREDENTIAL0@@€?CCRYPTOGRAPHIC PROVIDER0€?@€?!Czech0@@@€?'DATABASE0@€@ЋЊЊ?EDATABASE ENCRYPTION KEY0€?€?€?5DATABASE STATUS0€?@@€?GDB Access Administrators0€?€?€?-db chaining0€?€?3DB Data Reader0€?€?3DB Data Writer0€?€?ADB DDL Administrators0€?€?=DB Deny Data Reader0€?€?=DB Deny Data Writer0€?€?)DB Owners0€?€?KDB Security Administrators0€?€?)dbcreator0€?€?/dbo use only0@@€?%DEFAULT0€?€?/default disk0€?€?Edefault to local cursor0€?€?'deferred0€?€?€?Deny0€?€?Cdisable_def_cnst_check0€?€?=Disk Administrators0€?€?)diskadmin0€?€?dist0€?€?-Distributed0€?€?dpub0€?€?!Dutch0€?€?3emergency mode0€?€?CEN: event notification0@€?'ENDPOINT0€?€?%English0€?€?'Estonian0 @€?;EVENT NOTIFICATION0€?€?€?IEVENT NOTIFICATION OBJECT0€?€?IEVENT NOTIFICATION SERVER0@€?1EVENT SESSION0€?€?%Execute0€?€?EXT0€?€?EExtent Lock - Exclusive0€?€?;Extent Lock - Next0€?€?CExtent Lock - Previous0€?€??Extent Lock - Update0€?€?=F : foreign key cns0€?€?€?%Finnish0€?€?€?#floatn0@@€?CFOREIGN KEY CONSTRAINT0€?@@€?9full text enabled0@@@9FULLTEXT STOPLIST0Р@€?'FUNCTION0€?@@€?UFUNCTION TABLE-VALUED ASSEMBLY 0€?€?€?IFUNCTION TABLE-VALUED SQL0@@€?!Grant0@@€?+GROUP USER0€?@@€?=IF: inline function0@@@€?!INDEX0€?@@€?/int high bit0€?@€?intn0€?@@€?%Italian0€?@€?'japanese0€?€?KEY0€?€?#Korean0€?€?%L : log0€?€?%Latvian0€?€?Clazy schema validation0€?€?+Lithuanian0€?€?%loading0€?€?+LOCK OWNER0€?€?5LOCK REQ STATUS0€?€?3LOCK RESOURCES0€?€?+LOCK TYPES0€?€?/logical disk0@€?!LOGIN0@€?+MASTER KEY0€?€?MD0€?€?1merge publish0@€?/MESSAGE TYPE0€?€?1missing files0€?€?!money0€?€?#moneyn0€?€?no0€?€?€?/nonclustered0€?€?none0€?@@€?NULL0@@€?#OBJECT0€?@@€?PAG0@@@7PARTITION SCHEME0€?@@€?#Polish0@@€@€?-PRIMARY KEY0€?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`‚6~~ЃЕQ5˜НЧ8Ј else if (@objtype = 512) select @strtype = '''L''' if (@objtype = 4096) if (@extprop = 0) select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), o.name, o.xtype, object_name(o.parent_obj), NULL, NULL from ' + @quotedbname + '.dbo.sysobjects o where ' + @beginupper + 'o.name' + @endupper +' like N' + @searchkey else select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), o.name, o.xtype, object_name(o.parent_obj), p.name, p.value from ' + @quotedbname + '.dbo.sysobjects o, '+ @quotedbname + '.dbo.sysproperties p where o.id = p.id and ' + @beginupper + 'o.name' + @endupper +' like N' + @searchkey + ' and ' + @beginupper + 'p.name' + @endupper +' like N' + @extpropname + ' and ' + @beginupper + 'cast(ISNULL(p.value, N'''') as nvarchar(4000))' + @endupper +' like N' + @extpropvalue + ' and p.type = 3' else if (@extprop = 0) select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), o.name, o.xtype, object_name(o.parent_obj), NULL, NULL from ' + @quotedbname + '.dbo.sysobjects o where o.xtype in (' + @strtype + ') and ' + @beginupper + 'o.name' + @endupper +' like N' + @searchkey else select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), o.name, o.xtype, object_name(o.parent_obj), p.name, p.value from ' + @quotedbname + '.dbo.sysobjects o, '+ @quotedbname + '.dbo.sysproperties p where o.id = p.id and o.xtype in (' + @strtype + ') and ' + @beginupper + 'o.name' + @endupper +' like N' + @searchkey + ' and ' + @beginupper + 'p.name' + @endupper +' like N' + @extpropname + ' and ' + @beginupper + 'cast(ISNULL(p.value, N'''') as nvarchar(4000))' + @endupper +' like N' + @extpropvalue + ' and p.type = 3' exec (@stmt) if @@error <> 0 begin raiserror ('Error inserting objects from %s into #objsearch, search procedure aborted', 16, 1, @dbname) return 1 end select @cnt = @cnt + @@rowcount end if (@hitlimit > 0 and @cnt >= @hitlimit) goto returnresults -- ============================================= -- query syscolumns -- ============================================= if (@objtype in (1024, 4096)) begin -- because paremeters for store proc and UDF are also stored in syscolumns table, the following query filter them out(by checking name start with '@' and name = '') if (@extprop = 0) select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), c.name, ''COL'', o.name, NULL, NULL from ' + @quotedbname + '.dbo.syscolumns c, ' + @quotedbname + '.dbo.sysobjects o where c.id = o.id and ' + @beginupper + 'c.name' + @endupper +' like N' + @searchkey + ' and c.name not like ''@%''' + ' and c.name <> ''''' else select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), c.name, ''COL'', o.name, p.name, p.value from ' + @quotedbname + '.dbo.syscolumns c, ' + @quotedbname + '.dbo.sysobjects o, '+ @quotedbname + '.dbo.sysproperties p where c.id = o.id and o.id = p.id and c.colid = p.smallid and ' + @beginupper + 'c.name' + @endupper +' like N' + @searchkey + ' and c.name not like ''@%''' + ' and c.name <> ''''' + ' and ' + @beginupper + 'p.name' + @endupper +' like N' + @extpropname + ' and ' + @beginupper + 'cast(ISNULL(p.value, N'''') as nvarchar(4000))' + @endupper +' like N' + @extpropvalue + ' and p.type = 4' exec (@stmt) if @@error <> 0 begin raiserror ('Error inserting objects from %s into #objsearch, search procedure aborted', 16, 1, @dbname) return 1 end select @cnt = @cnt + @@rowcount end if (@hitlimit > 0 and @cnt >= @hitlimit) goto returnresults -- ============================================= -- query sysindexes -- ============================================= if (@objtype in (2048, 4096)) begin -- because statistics and 'fake'index are also stored in sysindexes table, the following query filter them out (by checking status&0x0040 - statistics, and indid not in (0, 255)- fake index) if (@extprop = 0) select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), i.name, ''I'', o.name, NULL, NULL from ' + @quotedbname + '.dbo.sysindexes i, ' + @quotedbname + '.dbo.sysobjects o where i.id = o.id and (i.indid not in (0, 255)) and (i.status&(32 + 64 + 2048 + 4096) = 0) and ' + @beginupper + 'i.name' + @endupper +' like N' + @searchkey else select @stmt = 'use ' + @quotedbname + ' insert into #objsearch select dbname = N' + @quotedbname2 + ', user_name(o.uid), i.name, ''I'', o.name, p.name, p.value from ' + @quotedbname + '.dbo.sysindexes i, ' + @quotedbname + '.dbo.sysobjects o, '+ @quotedbname + '.dbo.sysproperties p where i.id = o.id and i.id = p.id and i.indid = p.smallid and (i.indid not in (0, 255)) and (i.status&(32 + 64 + 2048 + 4096) = 0) and ' + @beginupper + 'i.name' + @endupper +' like N' + @searchkey + ' and ' + @beginupper + 'p.name' + @endupper +' like N' + @extpropname + ' and ' + @beginupper + 'cast(ISNULL(p.value, N'''') as nvarchar(4000))' + @endupper +' like N' + @extpropvalue + ' and p.type = 6' exec (@stmt) if @@error <> 0 begin raiserror ('Error inserting objects from %s into #objsearch, search procedure aborted', 16, 1, @dbname) return 1 end select @cnt = @cnt + @@rowcount end if (@hitlimit > 0 and @cnt >= @hitlimit) goto returnresults -- ============================================= -- move on to match next datatype -- ============================================= select @typepointer = @typepointer*2 end -- if (@@fetch_status <> -2) end -- while (@objecttype >= @typepointer) fetch next from dbcursor into @dbname -- ============================================= -- report progress as (step X of Y) -- ============================================= if (@status = 1) begin select @i = @i + 1 select 'step' = @i, 'steps' = @dbcount end end -- ============================================= -- return result set -- ============================================= returnresults: deallocate dbcursor -- ============================================= -- enforce hitlimit -- ============================================= set rowcount @hitlimit if (@extprop = 0) select dbname, owner, objname, objtype, ISNULL(objtab, '') as objtab from #objsearch order by dbname, owner, objname, objtype else select dbname, owner, objname, objtype, ISNULL(objtab, '') as objtab, extpropname, extpropvalue from #objsearch order by dbname, owner, objname, objtype set rowcount 0 -- ============================================= -- return status -- ============================================= if (@cnt > @hitlimit) return 2 -- resultset truncated else return 0 -- resultset within limits -- ============================================= -- end sp_MSobjsearch -- ============================================= !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o`"ђ ДЂ `ЄА( лp€vL IS|vLR KEY’vA distvD :trunc. log on chkpt. vL IU}vLR EXT“v L IX~v LR RID”v L SIUv LR APP•v L SIX€v LR MD–v L UIXv LR HBT—v L BU‚v LR AU˜vL "RangeS-SƒvL "RangeS-U„vA dpubvD 8torn page detection!vDC (DistributedDvF_U trustedOvI $clusteredWvL *RangeIn-Null…vL $RangeIn-S†vL $RangeIn-U‡vL $RangeIn-XˆvL "RangeX-S‰vL "RangeX-UŠvL "RangeX-X‹v D  loading"v I *hypotheticalXv@A  rpc outv@D *pre recovery#v@I &statisticsYvO ruleЌvO  trigger­v O Xreplication filter stored procedureЎVP гVP дV P дV P дV P дV P дV P дVP дVP дVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еVP еV P жV!P жV"P жV#P жV$P жV%P жV&P жV'P жV(P жV)P жV*P жV+P жV,P жV-P жV.P жV/P жV0P жV1P жV2P жV3P жV4P жV5P жV6P жV7P жV8P жV9P жV:P жV;P жV<P жV=P жV>P жV?P жV@P зVAP зVBP зVCP зVDP зVEP зVFP зVGP зVHP зVIP зVJP зVKP зVLP зVMP зVNP зvSFL@Extent Lock - Exclusiveрv SFL:Extent Lock - Updateсv SFL6Extent Lock - Nextтv SFL>Extent Lock - PreviousуvSOP,ansi_warningsшvSOP*ansi_paddingщv SOP&ansi_nullsъv@SOP&arithabortыvT &ReferencesѕvV ,backup device v V ,serial writes vSRV"sysadminv SRV,securityadminv@SRV(serveradminvSRV<System Administratorsv SRV@Security Administratorsv@SRV<Server AdministratorsзVrP зVsP зVtP зVuP зVvP зVwP зVxP зVyP зVzP зV{P зV|P зV}P зV~P зVP зV€P иVP иV‚P иVƒP иV„P иV…P иV†P иV‡P иVˆP иV‰P иVŠP иV‹P иVŒP иVP иVŽP иVP иVP иV‘P иV’P иV“P иV”P иV•P иV–P иV—P иV˜P иV™P иVšP иV›P иVœP иVP иVžP иVŸP иV P иVЁP иVЂP иVЃP иVЄP иVЅP иVІP иVЇP иVЈP иVЉP иVЊP иVЋP иVЌP иV­P иVЎP иVЏP иVАP иVБP иVВP иVГP иVДP иVЕP иVЖP иVЗP иVИP иVЙP иVКP иVЛP иVМP иVНP иVОP иVПP иVРP иVСP иVТP иVУP иVФP иVХP иVЦP иVЧP иVШP иVЩP иVЪP иVЫP иVЬP иVЭP иVЮP иVЯP иVаP иVбP иVвP иvSFL@Extent Lock - Exclusiveрv SFL:Extent Lock - Updateсv SFL6Extent Lock - Nextт”x\@$ьаД˜|ўтЦЊŽrV:ц Ъ Ў H’ f.v Z > "  ъ Ю В – z ^ B & ю в Ж š ~ b F *  ђ ж К ž ‚ f J . ЄШЮ Шšі к О Ђ † 6j N 2  њjо:Т ІиŠІntj~о–R< мІ`86иўДт№jDЬЦ њЊдЎ„Žˆd\6rТ>вЊVš„`"ИРГ)qЅАЈ ЧMvxPP 9жPP :жPP ;жPP <жPP = жPP >@жPP ?€жPP @ зPP A зPP B зPP C зPP D зPP E зPP F @зPP G €зPP H зPP I зPP J зPP K зPP L зPP M зPP N @зPP O €зPP P зPP Q зPP R зPP S зPP T зPP U зPP V @зPP W €зPP X зPP Y зPP Z зPP [ зPP \ зPP ] зPP ^ @зPP _ €зPP ` зPP a зPP b зPP c зPP d зPP e зPP f @зPP g €зPP hзPP iзPP jзPP kзPP lзPP m зPP n@зPP o€зPP pзPP qзPP rзPP sзPP tзPP u зPP v@зPP w€зPP xзPP yзPP zзPP {зPP |зPP } зPP ~@зPP €зPP €иPP иPP ‚иPP ƒиPP „иPP … иPP †@иPP ‡€иPP ˆиPP ‰иPP ŠиPP ‹иPP ŒиPP  иPP Ž@иPP €иPP иPP ‘иPP ’иPP “иPP ”иPP • иPP –@иPP —€иPP ˜иPP ™иPP šиPP ›иPP œиPP  иPP ž@иPP Ÿ€иPP  иPP ЁиPP ЂиPP ЃиPP ЄиPP Ѕ иPP І@иPP Ї€иPP ЈиPP ЉиPP ЊиPP ЋиPP ЌиPP ­ иPP Ў@иPP Џ€иPP АиPP БиPP ВиPP ГиPP ДиPP Е иPP Ж@иPP З€иPP ИиPP ЙиPP КиPP ЛиPP МиPP Н иPP О@иPP П€иPP РиPP СиPP ТиPP УиPP ФиPP Х иPP Ц@иPP Ч€иPP ШиPP ЩиPP ЪиPP ЫиPP ЬиPP Э иPP Ю@иPP Я€иPP аиPP биPP виPP гиPP диPP е иPP ж@иPP з€иPP ииPP йиPP киPP лиPP миPP н иPP о@иPP п€иPP риPP сиPP тиPP уиPP фиPP х иPP ц@иPP ч€иPP шиPP щиPP ъиPP ыи o1.id = r.rkeyid and r.keycnt >= 10 F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"Ї `NЈІА8Œ–ЌХvA :collation compatiblevD ,not recovered%VP йVP йVP йVP йVP йVP йVP йVP йVP йV P йV P йV P йV P йV P йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йVP йV P йV!P йV"P йV#P йV$P йV%P йV&P йV'P йV(P йV)P йV*P йV+P йV,P йV-P йV.P йV/P йV0P йV1P йV2P йV3P йV4P йV5P йV6P йV7P йV8P йV9P йV:P йV;P йV<P йV=P йV>P йV?P йV@P йVAP йVBP йVCP йVDP йVEP йVFP йVGP йVHP йVIP йVJP йVKP йVLP йVMP йVNP йVOP йVPP йVQP йVRP йVSP йVTP йVUP йVVP йVWP йVXP йVYP йVZP йV[P йV\P йV]P йV^P йV_P йV`P йVaP йVbP йVcP йVdP йVeP йVfP йVgP йVhP йViP йVjP йVkP йVlP йVmP йVnP йVoP йVpP йVqP йVrP йVsP йVtP йVuP йVvP йVwP йVxP йVyP йVzP йV{P йV|P йV}P йV~P йVP йV€P йVP йV‚P йVƒP йV„P йV…P йV†P йV‡P йVˆP йV‰P йVŠP йV‹P йVŒP йVP йVŽP йVP йVP йV‘P йV’P йV“P йV”P йV•P йV–P йV—P йV˜P йV™P йVšP йV›P йVœP йVP йVžP йVŸP йV P йVЁP йVЂP йVЃP йVЄP йVЅP йVІP йVЇP йVЈP йVЉP йVЊP йVЋP йVЌP йV­P йVЎP йVЏP йVАP йVБP йVВP йVГP йVДP йVЕP йVЖP йVЗP йVИP йVЙP йVКP йVЛP йVМP йVНP йVОP йVПP йVРP йVСP йVТP йVУP йVФP йVХP йVЦP йVЧP йVШP йVЩP йVЪP йVЫP йVЬP йVЭP йVЮP йVЯP йVаP йVбP йVвP йVгP йVдP йVеP йVжP йVзP йVиP йVйP йVкP йVлP йVмP йVнP йVоP йVпP йVрP йVсP йVтP йVуP йVфP йVхP йVцP йVчP йVшP йVщP йVъP йVыP йVьP йVэP йVюP йVяP йV№P йVёP йVђP йVѓP йVєP йVѕP йVіP йVїP йVјP йVљP йVњP йVћP йVќP йV§P йVўP йVџP йvSOP4quoted_identifierэvSRV*processadminvSRV>Process AdministratorsйVНP йVОP йVПЦЊŽrV:цЪЎ’vZ>"ъЮВ–z^B& ювЖš~bF*ђжКž‚fJ.ікОЂ†jN2њоТІŠnR6ўтЦЊŽrV:цЪЎ’vZ>"ъЮВ–z^B& ювЖš~bF*ђжКž‚fJ.ікОЂ†jN2њоТІŠnR6ўтЦЊŽrV:ц Ъ Ў ’ v Z > "  ъ Ю В – z ^ B & ю в Ж š ~ b F *  ђ ж К ž ‚ f J .  і к О Ђ † j N 2  њоТІŠnR6ўтЦЊŽrV:цЪЎ’vZ>"ъЮВ–z^B& ювЖš~bF*ђжКž‚fJ.ікОЂ†jN2њоТІŠnR6ў$\ттЈ`"Д І3ьЎЇЏ€/мŸVгP иVдP иVеP иVжP иVзP иVиP иVйP иVкP иVлP иVмP иVнP иVоP иVпP иVрP иVсP иVтP иVуP иVфP иVхP иVцP иVчP иVшP иVщP иVъP иVыP иVьP иVэP иVюP иVяP иV№P иVёP иVђP иVѓP иVєP иVѕP иVіP иVїP иVјP иVљP иVњP иVћP иVќP иV§P иVўP иVџP иvоT 2Create ProcedurevрT  ExecutevфT 0Backup DatabasevщT .Create DefaultvыT 6Backup TransactionvьT (Create Ruleser_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey1 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,2), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 2 and o2.id = c2.id and c2.colid = r.fkey2 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey2 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,3), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 3 and o2.id = c2.id and c2.colid = r.fkey3 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey3 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,4), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 4 and o2.id = c2.id and c2.colid = r.fkey4 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey4 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,5), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 5 and o2.id = c2.id and c2.colid = r.fkey5 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid0јмРЄˆlP4ќрФЈŒpT8x4фјШЌtXК< шŒЬАL”x\@$ьаĘ|`Ч'F6"RЈЗр ГЎб0'8 8 7clst0'8 8 5nc10'9 9 7clst0': : 7clst0': : 5nc10'; ; 9clust0'< < 7clst0'<  a_WA_Sys_00000004_0000003C0'<  a_WA_Sys_00000003_0000003C0'<  a_WA_Sys_00000002_0000003C0'@ @ 7clst0'@ @ 3nc0'A A 9clust0'C C 7clst0'C C 5nc10'C C 5nc20'D D 7clst0'E E 7clst0'E E 5nc10'E E 5nc20'G G 7clst0'H H 3cl0'I I 3cl0'J J 7clst0'J J 5nc10'K K 7clst0'K K 5nc10'N N 3cl0'N N 3nc0'P P 3cl0'R R 7clst0'U U 7clst0'Z Z 7clst0'Z Z 5nc10'[ [ 3cl0'[ [ 5nc10'\ \ 3cl0'] ] 3cl0'] ] 5nc10'^ ^ 3cl0'_ _ 3cl0'_ _ 5nc10'_ _ 5nc30'` ` 7clst0'` ` 5nc10'` ` 5nc20'a a 7clst0'a a 5nc10'b b 7clst0'b b 5nc1'!! 'Z3іZ3і '“Wъ“Wъ 0'TП<  Yqueue_clustered_index0'TП<  Yqueue_secondary_index0'ЦIЇ>   Yqueue_clustered_index0'ЦIЇ>  Yqueue_secondary_index0'8’@   Yqueue_clustered_index0'8’@  Yqueue_secondary_index0'qЖƒA  Gci_commit_ts0'qЖƒA  Csi_xdes_id'ЊкwB  0'уўkC   Mspt_valuesclust0'уўkC Wix2_spt_values_nu_nc0'уўkC a_WA_Sys_00000001_436BFEE3'UGTE 0'UGTE a_WA_Sys_00000001_455447550'^  a_WA_Sys_00000004_0000005E0'^  a_WA_Sys_00000003_0000005E0'^  a_WA_Sys_00000002_0000005E!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ЮЃBыžs0щ  7 о … , г Ј } R  ц Б z E  й Є o < ё/ дЁn9бšc,љЦ“^'ђЛˆUщД}FмЅl9Ё@пЈo:Ь—`ЂмЉЗИћт[špZ6transactionalЎ cpZ&mergeЎ dpпZ8security_modelЎ ^then 'YES' else 'NO' end, SS_DATA_TYPE = NULL, COLUMN_FLAGS = c.COLUMN_FLAGS from master.dbo.SYSREMOTE_COLUMNS < @table_server, @table_catalog, NULL, @table_name, NULL > c, master.dbo.SYSREMOTE_PROVIDER_TYPES < @table_server > p /* LUXOR/KAGERA don't support restricting DATA_TYPE */ where c.DATA_TYPE = p.DATA_TYPE AND p.BEST_MATCH = 1 and (TABLE_SCHEMA like @table_schema or @table_schema is NULL or (TABLE_SCHEMA is NULL and @table_schema = N'%')) and (c.COLUMN_NAME like @column_name or @column_name is NULL) end else begin /* If wild carding */ insert into #tmp_columns select TABLE_CAT = c.TABLE_CATALOG, TABLE_SCHEM = c.TABLE_SCHEMA, TABLE_NAME = c.TABLE_NAME, COLUMN_NAME = c.COLUMN_NAME, DATA_TYPE = case c.DATA_TYPE & ~@DBTYPE_BYREF when @DBTYPE_I2 then @ODBC_SMALLINT when @DBTYPE_I4 then @ODBC_INT when @DBTYPE_R4 then @ODBC_REAL when @DBTYPE_R8 then @ODBC_FLOAT when @DBTYPE_CY then @ODBC_MONEY when @DBTYPE_DATE then @ODBC_DATETIME when @DBTYPE_DBDATE then @ODBC_DATETIME when @DBTYPE_DBTIME then @ODBC_DATETIME when @DBTYPE_DBTIMESTAMP then @ODBC_DATETIME when @DBTYPE_BOOL then @ODBC_BIT when @DBTYPE_DECIMAL then @ODBC_DECIMAL when @DBTYPE_UI1 then @ODBC_TINYINT when @DBTYPE_I1 then @ODBC_NUMERIC when @DBTYPE_UI2 then @ODBC_NUMERIC when @DBTYPE_UI4 then @ODBC_NUMERIC when @DBTYPE_I8 then @ODBC_NUMERIC when @DBTYPE_UI8 then @ODBC_NUMERIC when @DBTYPE_NUMERIC then @ODBC_NUMERIC when @DBTYPE_VARNUMERIC then @ODBC_NUMERIC when @DBTYPE_GUID then @ODBC_GUID when @DBTYPE_BYTES then case when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISLONG = @DBCOLUMNFLAGS_ISLONG ) or (p.COLUMN_SIZE > 8000) then @ODBC_IMAGE when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISROWVER) = @DBCOLUMNFLAGS_ISROWVER AND (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH) = @DBCOLUMNFLAGS_ISFIXEDLENGTH and p.COLUMN_SIZE = 8 then @ODBC_TIMESTAMP when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH = @DBCOLUMNFLAGS_ISFIXEDLENGTH) then @ODBC_BINARY else @ODBC_VARBINARY end when @DBTYPE_STR then case when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISLONG = @DBCOLUMNFLAGS_ISLONG ) or (p.COLUMN_SIZE > 8000) then @ODBC_TEXT when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH = @DBCOLUMNFLAGS_ISFIXEDLENGTH) then @ODBC_CHAR else @ODBC_VARCHAR end when @DBTYPE_WSTR then case when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISLONG = @DBCOLUMNFLAGS_ISLONG) or (p.COLUMN_SIZE > 4000) then @ODBC_NTEXT when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH = @DBCOLUMNFLAGS_ISFIXEDLENGTH) then @ODBC_NCHAR else @ODBC_NVARCHAR end when @DBTYPE_BSTR then case when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISLONG = @DBCOLUMNFLAGS_ISLONG) or (p.COLUMN_SIZE > 4000) then @ODBC_NTEXT when (c.COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH = @DBCOLUMNFLAGS_ISFIXEDLENGTH) then @ODBC_NCHAR else @ODBC_NVARCHAR end else @ODBC_NVARCHAR /* Unknown OleDB datatype */ end, TYPE_NAME = p.TYPE_NAME, COLUMN_SIZE = COALESCE(c.CHARACTER_MAXIMUM_LENGTH, c.NUMERIC_PRECISION, p.COLUMN_SIZE), BUFFER_LENGTH = c.CHARACTER_OCTET_LENGTH, DECIMAL_DIGITS = c.NUMERIC_SCALE, NUM_PREC_RADIX = NULL, NULLABLE = convert(smallint, c.IS_NULLABLE), REMARKS = convert(nvarchar(255),c.DESCRIPTION), COLUMN_DEF = c.COLUMN_DEFAULT, SQL_DATA_TYPE = NULL, SQL_DATETIME_SUB = convert(smallint, c.DATETIME_PRECISION), CHAR_OCTET_LENGTH = c.CHARACTER_OCTET_LENGTH, ORDINAL_POSITION = c.ORDINAL_POSITION, IS_NULLABLE = case c.IS_NULLABLE when 1 then 'YES' else 'NO' end, SS_DATA_TYPE = NULL, COLUMN_FLAGS = c.COLUMN_FLAGS from master.dbo.SYSREMOTE_COLUMNS < @table_server, @table_catalog, NULL, NULL, NULL > c, master.dbo.SYSREMOTE_PROVIDER_TYPES < @table_server > p /* LUXOR/KAGERA don't support restricting DATA_TYPE */ where c.DATA_TYPE = p.DATA_TYPE AND p.BEST_MATCH = 1 and (TABLE_SCHEMA like @table_schema or @table_schema is NULL or (TABLE_SCHEMA is NULL and @table_schema = N'%')) and (c.COLUMN_NAME like @column_name or @column_name is NULL) and c.TABLE_NAME like @table_name end update #tmp_columns set SQL_DATA_TYPE = spt_dt.SQL_DATA_TYPE, SQL_DATETIME_SUB = case when #tmp_columns.DATA_TYPE = @ODBC_DATETIME then 3 else #tmp_columns.SQL_DATETIME_SUB end, TYPE_NAME = case when #tmp_columns.DATA_TYPE = @ODBC_BINARY and (COLUMN_FLAGS & @DBCOLUMNFLAGS_ISROWVER) = @DBCOLUMNFLAGS_ISROWVER AND (COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH) = @DBCOLUMNFLAGS_ISFIXEDLENGTH and BUFFER_LENGTH = 8 then 'timestamp' when #tmp_columns.DATA_TYPE = @ODBC_DATETIME and #tmp_columns.SQL_DATETIME_SUB = 0 then 'smalldatetime' when #tmp_columns.DATA_TYPE = @ODBC_MONEY and #tmp_columns.COLUMN_SIZE = 10 then 'smallmoney' when (#tmp_columns.DATA_TYPE in (@ODBC_BINARY, @ODBC_CHAR) and (COLUMN_FLAGS & @DBCOLUMNFLAGS_ISFIXEDLENGTH) = @DBCOLUMNFLAGS_ISFIXEDLENGTH) or #tmp_columns.DATA_TYPE in (@ODBC_TEXT, @ODBC_NTEXT, @ODBC_IMAGE) then spt_dt.TYPE_NAME collate database_default else isnull(#tmp_columns.TYPE_NAME, spt_dt.TYPE_NAME collate database_default) end, COLUMN_SIZE = case when #tmp_columns.DATA_TYPE IN (@ODBC_REAL, @ODBC_FLOAT) then /* app. numeric types */ spt_dt.data_precision when #tmp_columns.DATA_TYPE = @ODBC_DATETIME and #tmp_columns.SQL_DATETIME_SUB = 0 then 16 else #tmp_columns.COLUMN_SIZE end, BUFFER_LENGTH = case when #tmp_columns.DATA_TYPE IN (@ODBC_NUMERIC, @ODBC_DECIMAL) then /* decimal/numeric types */ COLUMN_SIZE+2 when isnull (#tmp_columns.BUFFER_LENGTH,0) = 0 then spt_dt.length else #tmp_columns.BUFFER_LENGTH end, DECIMAL_DIGITS = case when #tmp_columns.DATA_TYPE = @ODBC_DATETIME then #tmp_columns.SQL_DATETIME_SUB else COALESCE (DECIMAL_DIGITS, spt_dt.numeric_scale) end, NUM_PREC_RADIX = spt_dt.RADIX, SS_DATA_TYPE = case when #tmp_columns.DATA_TYPE in ( @ODBC_TINYINT, @ODBC_SMALLINT, @ODBC_INT ) and #tmp_columns.NULLABLE = 1 then @ODS_INT_NULL when #tmp_columns.DATA_TYPE = @ODBC_TINYINT and #tmp_columns.NULLABLE = 0 then @ODS_TINYINT_NOT_NULL when #tmp_columns.DATA_TYPE = @ODBC_SMALLINT and #tmp_columns.NULLABLE = 0 then @ODS_SMALLINT_NOT_NULL when #tmp_columns.DATA_TYPE = @ODBC_INT and #tmp_columns.NULLABLE = 0 then @ODS_INT_NOT_NULL when #tmp_columns.DATA_TYPE in (@ODBC_REAL, @ODBC_FLOAT) and #tmp_columns.NULLABLE = 1 then @ODS_FLOAT_NULL when #tmp_columns.DATA_TYPE = @ODBC_REAL and #tmp_columns.NULLABLE = 0 then @ODS_REAL_NOT_NULL when #tmp_columns.DATA_TYPE = @ODBC_FLOAT and #tmp_columns.NULLABLE = 0 then @ODS_FLOAT_NOT_NULL when #tmp_columns.DATA_TYPE = @ODBC_MONEY and #tmp_columns.NULLABLE = 1 then @ODS_MONEY_NULL when #tmp_columns.DATA_TYPE = @ODBC_MONEY and #tmp_columns.NULLABLE = 0 then @ODS_MONEY_NOT_NULL when #tmp_columns.DATA_TYPE = @ODBC_DATETIME and #tmp_columns.NULLABLE = 1 then @ODS_DATETIME_NULL when #tmp_columns.DATA_TYPE = @ODBC_DATETIME and #tmp_columns.NULLABLE = 0 then @ODS_DATETIME_NOT_NULL when #tmp_columns.DATA_TYPE in (@ODBC_NTEXT, @ODBC_TEXT) then @ODS_TEXT when #tmp_columns.DATA_TYPE = @ODBC_BIT then @ODS_BIT when #tmp_columns.DATA_TYPE = @ODBC_DECIMAL then @ODS_DECIMAL when #tmp_columns.DATA_TYPE = @ODBC_NUMERI!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!иЄ` ZіЊЗXБœз ^Љ8#О`‚^ аЋЗQ4C!00!SPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;ё/Šо$/.ВCuЎtОŽ'ЄL†\сЊюlwaŸјљBЯш=пZ016 ;яХИsз%vpЖДс%Вž‚P7/’'њhwЊюЕ$љsPйа#'іЇqС‚`„Ѓ›Яъ[ѓЯUШbЮ‰ƒуkФiИпс<ЉƒXг+Т„”иО“0Z3іSPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;њМшlO ˜КЦD* š„ ЖЅіm жш‚ЂВ 0*cEc)і ъМ]АЩŸІŠВЋKќ5F#y „“`ФП;Р)У’ЌeŒу˜ЬеЯѓ{uєёЌСПСrЗ”+зВй4­єpWєИ|Я/{^Б=аІ­{VQЄ&•Зži-Ё3Х7k0“WъSPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;іhp†ЕC(>РU&о“Ѓњ'O<š„;ЙжE.nGsщШHŸ7ЅŠ"ЏА‡lвмЁЮI;8P' ˆE”ЄёЅљъР*Œ8z}ЫЊ4Њйќф7mO?м1$ N’*wo, и[9DZЫx=бTХ~7ЯЩŠ.‘;4,1Ц”ф`0ЊкwBSPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;—њžˆЂ|†јjAш‚ ЏсB&Ѓ."њщуе}Пв4etŽNƒГ@э§РСП€%Ÿ|ЛmУИУ/Ь]­!јЌ…xю'hХбЦЬБйСѓЬ%еЎbј№Иd_`ЛGйж"->нкNwъwЈ‚„І§нЯc(ХЙ ЏЙŸџ…0уўkCSPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;cХЭt($їІ+ŸоlІквOЌ—зb –# кfQ ‘нЌЈwa]ёvіћS_-kЙВЏшІєМљH\Š%И!ёД\:ŸkцYт4e“5yЛ0Мz!‘BЪЖЙў6ћ fŽЇlZОi)у9Ђ•ЌцЛaэ Ÿ-ХгkЏ€нф0UGTESPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;†s§˜oѓ˜_ˆ‚ЄЫлPŽью_–?Ьf'„ЌОТjk№ЮC^D;ќхІЊЗ#6jѓ'љ*b>ќ0Вл а[р­—„L‰АЕвп­PwН$9s2ђД7`–;5№хЩ:НpЃ е‡ъ,tЏњGB6ІgГbœv8x§Л\Р0ŽkHFSPVC.ЎхƒЂ`Lд ’p=йЊІЄт5Ќ;GПЈ’А–зŒч•хcjh&( ЮЇrЊєkЩеOHО$>s„qЖ›Ћ‹З:ЫкЮх§лн;ŒaJ6OчИ]7gПƒAђ6g8ЈJ“пQрХPI8Ы>§ўј)ЫHЫСШzPk’DQyьЮЭуMbIџщ№И2oiзR&вФѓ}_0Ч 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,7), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 7 and o2.id = c2.id and c2.colid = r.fkey7 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey7 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,8), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 8 and o2.id = c2.id and c2.colid = r.fkey8 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey8 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,9), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 9 and o2.id = c2.id and c2.colid = r.fkey9 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey9 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,10), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and o2.name = @fk_table_name and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = r.fkeyid and r.keycnt >= 10 and o2.id = c2.id and c2.colid = r.fkey10 and r.rkeyid = o1.id and (@pk_table_name is null or @pk_table_name = o1.name) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = c1.id and c1.colid = r.rkey10 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.in!!!!!!!!!!!!!!!!!!!!!!!!"tЦjМ` Z^іЌЗ22.-Њ^Ћ8!!!!О`‚џ<q‹­Йp'сG€@€?#length0@@@Р?'lifetime0@@@3literal_suffix0€?@@Р?7local_service_id0€?@@Р?1logshippingid0€?@@Р?#lstart0@р@€?%maxsize0@@@@@@Emessage_sequence_number0€?@@@@#minint0 @@@€?#modate0A€?'modified0€?р@€?%msgtype0јA€?name0@@€?€?1next_fragment0@@ @€?nsid0@@@€?#number0@@@Р?!objid0€?р@€?)outseskey0€?р@€?'password0@р@€?#phfgid0@@@Р?pkey0@@€?!pname0@@@€?prec0 @€?€?'priority0@@€@€?!pruid0@@@€?%pwdhash0@@@@€?1queuing_order0@ @€?5readonlybaselsn0@Р@@/redostartlsn0€?@@Р?=remote_service_name0€?@@Р?#rowcnt0€?@@Р?)rowsetnum0@@Р@€?!scale0@ @€?+searchable0€@€@€?=service_contract_id0€@€?+service_id0@@€?€?sid0@р@UU•?!srvid0@@@@Р?!state0XB€?#status0р@€@€?!subid0€?р@€?text0€?@@@@ti0€?р@€?-total_write0PA@€?type0€?@@Р?'typename0€?@@Р?#uriord0€?@@Р?'valclass0€?@@@@#valnum0@@р@UU•?)xdttm_ins0€?@@@@3xfallback_dbid0@@ @€?/xserver_name0@@€?!xtypeџVQ((#@acctnamecatalog_nameolumn_namenstraint_nameursor_returndatalogical15physical2size4bnameevicenamefilegrowthname3k_table_schemaunctnamegroup_numberhandleis_uniquelevel1nameocationginameewvalueobjidptionNamep1athktab_schemarocnameResourceolenameschema_nameerverp_nameyslogicaltable_catalogqualifiertypeype_colnamealiasbinary_message_bodycidollationidnvgrouprerrorsdbfragidfltlgopenedfgidirstupdatelsnragment_sizehdrseclenminornseskeytemcntlifetimemaxconninintONEYownertypepkeyroductrcmodifiedemsvcscideveritytateusysdbpathunsigned_attributexdttm_inso@РР  Р   ,Р8Р9 < ENS XРaРbekp~ †’ ˜РЁ Ђ@ЋЌ@ВГNРИРПРРТ ФРЭЮMoDЯ внРфхьРѓ єў @Р‚ ‚x( ,7<РOPРR S\cРjkruР}~  ށ šРТСУЃЈЏЕРНОФЩР‚ ЭРжзкРр съРя№ѓРњ§ў( J >@@€?)published0@€?!QUEUE0€?@@€?/RangeIn-Null0€?@@€?'RangeS-S0€?@@€?'RangeX-X0@€?)read only0€?@@€?+References0@@€?CREMOTE SERVICE BINDING0@@€?9RESOURCE GOVERNOR0@@€?ROLE0€?€?'Romanian0@€?!ROUTE0@@@€?rule0@@@€?#SCHEMA0€?@@€?1securityadmin0@@@€?#SERVER0€?€?AServer Administrators0@@@KSERVER AUDIT SPECIFICATION0@@@-SERVER ROLE0€?€?-serveradmin0@€?%SERVICE0€?@@€?1SF LOCK TYPES0€?@@€?SIX0€?@@€?'smallint0@€@€?)SQL LOGIN0€?€?ISQL Server Internal Table0@@€?'SQL USER0€?€?=SQLSERVER HOST TYPE0@@€?+STATISTICS0€?€?;stats no recompute0Р@€?7STORED PROCEDURE0€?@@€?STWS0@@@€?1SYMMETRIC KEY0@€?%SYNONYM0€?@@€?Gsysobjects.type, reports0€?@@€?#system0@@€@€?!TABLE0€?@@€?%tinyint0Р@@@€?%TRIGGER0@€@€?%trusted0€?€?%Turkish0@€?TYPE0@ @€?9UNIQUE CONSTRAINT0€?@@€??use remote collation0€?€@€?%varchar0@@€?view0@@€?1WINDOWS GROUP0@@@/WINDOWS USER0€?€@€?+xact_abort0@€?AXML SCHEMA COLLECTION0€?@@€?)YES OR NOџo‡((ANSI warningsSYMMETRIC KEY LOGINBUcommonursor close on commitDB Access AdministratorseleteEVENT NOTIFICATIONforeignUNCTION SCALAR SQLimplicit_transactionsL : logmoneyPARTITION FUNCTIONQUEUErecursive triggersuleSERVER AUDITlovakTORED PROCEDUREYSDEVICES STATUSTR: triggerU : user tableWFR@Р   Р"#(Р=>UZРlms…šЁІИРНОЯРв гоуђ  ЃМ"L˜Ѓ@ЕРV3f?Ь ll), ORDINAL = convert(int,5), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 5 and o1.id = c1.id and c1.colid = r.rkey5 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey5 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!A`џ<(жЎ“-ЭVœvЎr PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,6), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, syqobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 6 and o1.id = c1.id and c1.colid = r.rkey6 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.comid = r.fkey6 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN]NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,7), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERQABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 7 and o1.id = c1.id and c1.colid = r.rkey7 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey7 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,8), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 8 and o1.id = c1.id and c1.colid = r.rkey8 and r.fkeyid = o2.id and (@fk_table_schema is null or Afk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey8 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SAHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,9), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 9 and o1.id = c1.id and c1.colid = r.rkey9 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey9 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG =!db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,10), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 10 and o1.id = c1.id and c1.comid = r.rkey10 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey10 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(unique!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жЏ“9aшъvЎridentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,11), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog!is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 11 and o1.id = c1.id and c1.colid = r.rkey11 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey11 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(q.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,12), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = eb_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 12 and o1.id = c1.id and c1.colid = r.rkey12 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey12 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(imt,13), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_aatalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 13 and o1.id = c1.id and c1.colid = r.rkey13 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey13 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid amd i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentifier,null), FK_COLUMN_PROPID = conveqt(int,null), ORDINAL = convert(int,14), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2, sysreferences q, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 14 and o1.id = c1.id and c1.colid = r.rkey14 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey14 and permissions(o1.id) <> 0 and permissionq(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o2.name, FK_COLUMN_NAME = c2.name, FK_COLUMN_GUID = convert(uniqueidentieier,null), FK_COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,15), UPDATE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, DELETE_RULE = CASE WHEN (ObjectProperty(r.constid, 'CnstIsDeleteCascade')=1) THEN N'CASCADE' ELSE N'NO ACTION' END, PK_NAME = i.name, FK_NAME = object_name(r.constid), DEFERRABILITY = convert(smallint, 3) /*DBPROPVAL_DF_NOT_DEFERRABLE*/ from sysobjects o1, sysobjects o2, syscolumms c1, syscolumns c2, sysreferences r, sysindexes i where (@pk_table_catalog is null or @pk_table_catalog = db_name()) and (@fk_table_catalog is null or @fk_table_catalog = db_name()) and (@pk_table_schema is null or @pk_table_schema = user_name(o1.uid)) and o1.id = r.rkeyid and r.keycnt >= 15 and o1.id = c1.id and c1.colid = r.rkey15 and r.fkeyid = o2.id and (@fk_table_schema is null or @fk_table_schema = user_name(o2.uid)) and o2.id = c2.id and c2.colid = r.fkey15 and permissions(o1.id) <> 0 and permissions(o2.id) <> 0 and i.id = r.rkeyid and i.indid = r.rkeyindid union all select PK_TABLE_CATALOG = db_name(r.rkeydbid), PK_TABLE_SCHEMA = user_name(o1.uid), PK_TABLE_NAME = o1.name, PK_COLUMN_NAME = c1.name, PK_COLUMN_GUID = convert(uniqueidentifier,null), PK_COLUMN_PROPID = convert(int,null), FK_TABLE_CATALOG = db_name(r.fkeydbid), FK_TABLE_SCHEMA = user_name(o2.uid), FK_TABLE_NAME = o!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жА“M A&vRi /* Procedure for 8.0 servers */ create procedure sp_procedure_params_rowset ( @procedure_name sysname, @group_number int = 1, @procedure_schema sysname = null, @parameter_name sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = c.name, ORDINAL_POSITION = convert(smallint, c.colid), PARAMETER_TYPE = convert(smallint, 1+c.isoutparam), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit,ColumnProperty(c.id,c.name,'AllowsNull')), DATA_TYPE = d.oledb_data_type, CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.aolumn_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smalmint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.prec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = d.type_name, LOCAL_TYPE_NAME = d.local_type_name from sysobjects o, syscolumns c, master.dbo.spu_provider_types d, systypes t where o.name = @procedure_name and (o.type in ('P', 'TF', 'IF') OR (len(c.name) > 0 and o.type = 'FN')) and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.id = c.id and ((c.number = @group_number and o.type = 'P') or (c.number = 0 and o.type = 'FN') or (c.number = 1 and o.type in ('TF', 'IF'))) and c.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and (@parameter_name is null or @parameter_name = c.name) UNION ALL SELECT /* return value row*/ PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = convert(sysname,'@RETURN_VALUE'), ORDINAL_POSITION = convert(smallint,0), PARAMETER_TYPE = convert(smallint, 4 /*DBPARAMTYPE_RETURNVALUE*/), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = converu(nvarchar(255),null), IS_NULLABLE = convert(bit,0), DATA_TYPE = convert(smallint, 3 /*DBTYPE_I4*/), CHARACTER_MAXIMUM_LENGTH= convert(int,null), CHARACTER_OCTET_LENGTH = convert(int,null), NUMERIC_PRECISION = convert(smallint,10), NUMERIC_SCALE = convert(smallint,null), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = convert(sysname,N'int'), LOCAL_TYPE_NAME = convert(sysname,N'int') from sysobjects o, syscomments c where o.name = @procedure_name and o.id!= c.id and c.number = @group_number and c.colid = 1 and o.type = 'P' /* Just Procedures */ and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and (@parameter_name is null or @parameter_name = '@RETURN_VALUE') UNION ALL SELECT /* UDF return value row*/ PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = convert(sysname,'@RETURN_VALUE'), ORDINAL_POSITION = convert(smallint, 0), PARAMETER_TYPE = convert(smallint, 4 /*DBPARAMTYPE_RETURNVALUE*/), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit, c.isnullable), DATA_TYPE = d.oledb_data_type, CHARACTER_MAXIMUM_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c-length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.prec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = d.type_name, LOCAL_TYPE_NAME = d.local_type_name FROM sysobjects o, syscolumns c, master.dbo.spt_pqovider_types d, systypes t WHERE o.name = @procedure_name and o.id = c.id and c.number = 0 and c.colid = 0 and o.type = 'FN' /* UDF scalar functions */ and c.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and (@parameter_name is null or @parameter_name = '@RETURN_VALUE') UNION ALL SELECT /* UDF table value row*/ PROCEDURE_CAUALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = convert(sysname,'@TABLE_RETURN_VALUE'), ORDINAL_POSITION = convert(smallint, 0), PARAMETER_TYPE = convert(smallint, 4 /*DBPARAMTYPE_RETURNVALUE*/), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit,0), DATA_TYPE = convert(smallint, 0), /*DBTYPE_EMPTY*/ CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.cmlumn_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.prec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DESCRIPTION = convert(nvarchar(50), N'Result table returned by table valued function'), TYPE_NAME = N'table', LOCAL_TYPE_NAME = N'table' from sysobjects o, syscolumns c, master.dbo.spt_provider_types d where o.name = @procedure_name and o.id = c.id and c.number = 0 and c.colid = 1 and o.type in ('TF', 'IF') /* UDF table functions */ and c.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жБ“ˆ 2v_create procedure sp_dboption -- 1999/08/09 18:25 @dbname sysname = NULL, /* database name to change */ @optname varchar(35) = NULL, /* option name to turn on/off */ @optvalue varchar(10) = NULL /* true or false */ as set nocount on declare @dbid int /* dbid of the database */ declare @catvalue int /* number of category option */ declare @optcount int /* number of options like @optname */ declare @allstatopts int /* bit map off all options stored in sysdatqabases.status ** that can be set by sp_dboption. */ declare @alloptopts int /* bit map off all options stored in sysdatqabases.status ** that can be set by sp_dboption. */ declare @allcatopts int /* bit map off all options stored in sysdatqabases.category ** that can be set by sp_dboption. */ declare @exec_stmt nvarchar(550) declare @fulloptname varchar(35) declare @alt_opuname varchar(50) declare @alt_optvalue varchar(30) declare @status int /* ** If no @dbname given, just list the possible dboptions. ** Only certain status bits may be set or cleared by sp_dboption. */ /* ** Get bitmap of all options that can be set by sp_dboption. */ select @allstatopts=number from master.dbo.spt_values where type = 'D' and name = 'ALL SETTABLE OPTIONS' select @allcatopts=number from master.dbo.spt_values where type = 'DC' and name = 'ALL SETTABLE OPTIONS' select @alloptopts=number from master.dbo.spt_values where type = 'D2' and name = 'ALL SETTABLE OPTIONS' if @dbname is null begin select 'Settable database options:' = name from master.dbo.spt_values where (type = 'D' and number & @allstatopts <> 0 and number not in (0,@allstatopts)) /* Eliminate non-option entries */ or (type = 'DC' and number & @allcatopts <> 0 and number not in (0,@allcatopts)) or (type = 'D2' ! and number & @alloptopts <> 0 and number not in (0,@alloptopts)) order by name return (0) end /* ** Verify the database name and get info */ select @dbid = dbid from master.dbo.sysdatabases where name = @dbname /* ** If @dbname not found, say so and list the databases. */ if @dbid is null begin raiserror(15010,-1,-1,@dbname) print ' ' select 'Available databases:' = name from master.dbo.sysdatabases return (1) end -* ** If no option was supplied, display current settings. */ if @optname is null begin select 'The following options are set:' = v.name from master.dbo.spt_values v, master.dbo.sysdatabases d where d.name=@dbname and ((number & @allstatopts <> 0 and number not in (-1,@allstatopts) and v.type = 'D' and (v.number & d.status)=v.number) or (number & @allcatopts <> 0 and number not in (-1,@allcatopts) and v.type = 'DC' and d.category & v.number <> 0) or (number & @alloptopts <> 0 and number not in (-1,@alloptopts) and v.type = 'D2' and d.status2 & v.number <> 0)) return(0) end if lower(@optvalue) not in ('true', 'false', 'on', 'off') and @optvalue is not null begin raiserror(15241,-1,-1) return (1) end /* ** Use @opuname and try to find the right option. ** If there isn't just one, print appropriate diagnostics and return. */ select @optcount = count(*) ,@fulloptname = min(name) from master.dbo.spt_values where lower(name) like '%' + lower(@optname) + '%' and ((type = 'D' and number & @allstatopts <> 0 and number not in (-1,@allstatopts)) or (type = 'DC' and number & @allcatopts <> 0 and number not in (-1,@allcatopts)) or )type = 'D2' and number & @alloptopts <> 0 and number not in (-1,@alloptopts))) /* ** If no option, show the user what the options are. */ if @optcount = 0 begin raiserror(15011,-1,-1,@optname) print ' ' select 'Settable database options:' = name from master.dbo.spt_values where (type = 'D' and number & @allstatopts <> 0 and number not in (-1,@allstatopts)) /* Eliminate non-option entries */ or (type = 'DC' and number & @allcatopts <> 0 and number not in (-1,@allcatopts)) or (type = 'D2' and number & @alloptopts <> 0 and number not in (-1,@alloptopts)) order by name return (1) end /* ** If more than one option like @optname, show the duplicates and return. */ if @optcount > 1 begin raiserror(15242,-1,-1,@optname) print ' ' select duplicate_options = name from master.dbo.spt_values where lower(name) like '%' + lower(@optname) + '%' and ((type = 'D' and number & @allstatopts <> 0 and number not in (-1,@allstatopts)) or (type = 'DC' and number & @allcatopts <> 0 and number not in (-1,@allcatopts)) or (type = 'D2' and number & @alloptopts <> 0 and number not in (-1,@alloptopts)) ) reuurn (1) end /* ** Just want to see current setting of specified option. */ if @optvalue is null begin select OptionName = v.name ,CurrentSetting = CASE When ( ((v.number & d.status) = v.number and v.type = 'D') or (d.category & v.number <> 0 and v.type = 'DC') or (d.status2 & v.number <> 0 and v.type = 'D2') ) ! Then 'ON' When NOT ( ((v.number & d.status) = v.number and v.type = 'D') or (d.category & v.number <> 0 and v.type = 'DC') or (d.status2 & v.number <> 0 and v.type = 'D2') ) Then 'off' END from master.dbo.spt_values v, master.dbo.sysdatabases d where d.name=@dbname and ((v.mumber & @allstatopts <> 0 and v.number not in (-1,@allstatopts) /* Eliminate non-option entries */ and v.type = 'D') or (v.number & @allcatopts <> 0 and v.number not in (-1,@allcatopts) /* Eliminate non-option entries */ and v.type = 'DC') or (v.number & @alloptopts <> 0 and v.number not in (-1,@alloptopts) /* Eliminate non-option entries */ ! and v.type = 'D2') ) and lower(v.name) = lower(@fulloptname) return (0) end select @catvalue = 0 select @catvalue = number from master.dbo.spt_values where lower(name) = lower(@fulloptname) and type = 'DC' /* if setting replication option, call sp_replicationdboption directly */ if (@catvalue <> 0) begin if lower(@optvalue) in ('true', 'on') begin select @alt_optvalue = 'true' end else begin select @alt_optvalue = 'false% end select alt_optname = quotename(@fulloptname, '''') select @exec_stmt = quotename(@dbname, '[') + '.dbo.sp_replicationdboption' if @catvalue = 1 begin select @alt_optname = 'publish' end if @catvalue = 2 begin select @alt_optname = 'subscribe' end if @catvalue = 4 begin select @alt_optname = 'merge publish' end exec @exec_stmt @dbname, @alt_optname, @alt_optvalue return (0) end /* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`‚џ<;ПВфЈˆQф7"/N.чЏ_call Alter Database to set options */ /* set option value in alter database*/ if lower(@optvalue) in ('true', 'on') begin select @alt_optvalue = 'ON' end else begin select @alt_optvalue = 'OFF' end /* if Cross DB Ownership Chaining is the option. Set it and get out */ if lower(@fulloptname) = 'db chaining' begin -- CHECK PERMISSIONS (Note: All sysadmins are dbo) -- if not (is_srvrolemember('sysadmin') = 1) begin raiserror(15247,-1,-1) return(1) end -- CANT SET IN ANY OF OF MASTER/MODEL/TEMPDB -- if lower(@dbname) in ('master', 'model', 'tempdb') or (lower(@dbname) ='msdb' and @alt_optvalue = 'OFF') begin raiserror(5600,-1,-1) return(1) end -- ERROR IF IN USER TRANSACTION -- if @@trancount > 0 begin raiserror(15289,-1,-1) return (1) end -- MAKE THE FOLLOWING REMOVE/REMAP/DELETES ATOMIC -- begin transaction select @status = status2 from master.dbo.sysdatabases where name = @dbname if @alt_optvalue = 'ON' set @status = @status | 1024 else select @status = @status & (~ 1024) update master.dbo.sysdatabases set status2 = @status where name = @dbname -- REFLECT NEW STATUS IN SYSDATABASES -- commit transaction -- CHECKPOINT DATABASE TO FORCE CHANGES TO IN-MEMORY STRUCTURE -- select @exec_stmt = 'use ' + quotename(@dbname, '[') + ' checkpoint' exec (@exec_stmt) return (0) -- end of set db chaining/user info in doubt option end /* set option name in alter database */ if lower(@fulloptname) = 'auto create statistics' begin select @alt_optname = 'AUTO_CREATE_STATISTICS' end if lower(@fulloptname) = 'auto update statistics' begin select @alt_optname = 'AUTO_UPDATE_STATISTICS' end if lower(@fulloptname) = 'autoclose' begin select @alt_optname = 'AUTO_CLOSE' end if lower(@fulloptname) = 'autoshrink' begin select @alt_optname = 'AUTO_SHRINK' end if lower(@fulloptname) = 'ansi padding' begin select @alt_optname = 'ANSI_PADDING' end if lower(@fulloptname) = 'arithabort' begin select @alt_optname = 'ARITHABORT' end if lower(@fulloptname) = 'numeric roundabort' begin select @alt_optname = 'NUMERIC_ROUNDABORT' end if lower(@fulloptname) = 'ansi null default' begin select @alt_optname = 'ANSI_NULL_DEFAULT' end if lower(@fulloptname) = 'ansi nulls' begin select @alt_optname = 'ANSI_NULLS' end if lower(@fulloptname) = 'ansi warnings' begin select @alt_optname = 'ANSI_WARNINGS' end if lower(@fulloptname) = 'concat null yields null' begin select @alt_optname = 'CONCAT_NULL_YIELDS_NULL' end if lower(@fulloptname) = 'cursor close on commit' begin select @alt_optname = 'CURSOR_CLOSE_ON_COMMIT' end if lower(@fulloptname) = 'torn page detection' begin select @alt_optname = 'TORN_PAGE_DETECTION' end if lower(@fulloptname) = 'quoted identifier' begin select @alt_optname = 'QUOTED_IDENTIFIER' end if lower(@fulloptname) = 'recursive triggers' begin select @alt_optname = 'RECURSIVE_TRIGGERS' end if lower(@fulloptname) = 'default to local cursor' begin select @alt_optname = 'CURSOR_DEFAULT' if @alt_optvalue = 'ON' begin select @alt_optvalue = 'LOCAL' end else begin select @alt_optvalue = 'GLOBAL' end end if lower(@fulloptname) = 'offline' begin if @alt_optvalue = 'ON' begin select @alt_optname = 'OFFLINE' end else begin select @alt_optname = 'ONLINE' end select @alt_optvalue = '' end if lower(@fulloptname) = 'read only' begin if @alt_optvalue = 'ON' begin select @alt_optname = 'READ_ONLY' end else begin select @alt_optname = 'READ_WRITE' end select @alt_optvalue = '' end if lower(@fulloptname) = 'dbo use only' begin if @alt_optvalue = 'ON' begin if databaseproperty(@dbname, 'IsSingleUser') = 1 begin raiserror(5066,-1,-1); return (1) end select @alt_optname = 'RESTRICTED_USER' end else begin if databaseproperty(@dbname, 'IsDBOOnly') = 0 begin return (0) end select @alt_optname = 'MULTI_USER' end select @alt_optvalue = '' end if lower(@fulloptname) = 'single user' begin if @alt_optvalue = 'ON' begin if databaseproperty(@dbname, 'ISDBOOnly') = 1 begin raiserror(5066,-1,-1); return (1) end select @alt_optname = 'SINGLE_USER' end else begin if databaseproperty(@dbname, 'IsSingleUser') = 0 begin return (0) end select @alt_optname = 'MULTI_USER' end select @alt_optvalue = '' end if lower(@fulloptname) = 'select into/bulkcopy' begin select @alt_optname = 'RECOVERY' if @alt_optvalue = 'ON' begin if databaseproperty(@dbname, 'IsTrunclog') = 1 begin select @alt_optvalue = 'RECMODEL_70BACKCOMP' end else begin select @alt_optvalue = 'BULK_LOGGED' end end else begin if databaseproperty(@dbname, 'IsTrunclog') = 1 begin select @alt_optvalue = 'SIMPLE' end else begin select @alt_optvalue = 'FULL' end end end if lower(@fulloptname) = 'trunc. log on chkpt.' begin select @alt_optname = 'RECOVERY' if @alt_optvalue = 'ON' begin if databaseproperty(@dbname, 'IsBulkCopy') = 1 begin select @alt_optvalue = 'RECMODEL_70BACKCOMP' end else begin select @alt_optvalue = 'SIMPLE' end end else begin if databaseproperty(@dbname, 'IsBulkCopy') = 1 begin select @alt_optvalue = 'BULK_LOGGED' end else begin select @alt_optvalue = 'FULL' end end end /* construct the ALTER DATABASE command string */ select @exec_stmt = 'ALTER DATABASE ' + quotename(@dbname) +' SET ' + @alt_optname + ' ' + @alt_optvalue + ' WITH NO_WAIT' exec (@exec_stmt) if @@error <> 0 begin raiserror(15627,-1,-1) return (1) end else begin return (0) end return (0) -- sp_dboption I5I*/ if @len is null begin raiserror(15091,-1,-1) return (1) end -- need to adjust length for unicode (watch out for overflow!) if @tname in ('nchar', 'nvarchar') and (@len & 0x80000000) != 0x80000000 select @len = @len * 2 if @len <= 0 or @len > 8000 begin raiserror(15092,-1,-1) return (1) end select @prec = @tprec select @scale = @tscale end /* **Get the collation's id */ if @tname in ('char', 'nchar', 'ntext', 'nvarchar', 'text', 'varchar') begin select @collationid = @default_collationid end else begin select @collationid=NULL end /* ** Finally, get the maximum existing user type so we use it + 1 for this ** new type. */ select @typeid = max(xusertype) from systypes /* ** There are no user defined types yet so use the first number (256). */ if @typeid < 256 select @typeid = 256 -- Set null status bit if @nonull = 1 select @tstat = @tstat | 0x01 else select @tstat = @tstat & 0xFE insert systypes (name, xtype, status, xusertype, length, xprec, xscale, tdefault, domain, uid, reserved, collationid) select @typename, @type, @tstat, @typeid + 1, @len, @prec, @scale, 0, 0, @uid, 0, @collationid raiserror(15449,-1,-1) return (0) -- sp_addtype щ&_щ& return 0 error_abort_exit: rollback tran return 1 -- sp_fulltext_table !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жГ“ˆ$EŽ9vIcreate procedure sp_addtype --- 1996/04/08 00:00 @typename sysname, -- name of user-defined type @phystype sysname, -- physical system type of user-defined type @nulltype varchar(8) = null, -- nullability of new type @owner sysname = null -- Owner of type (default is caller) as declare @len int -- length of user type declare @type tinyint -- typeid of physical type declare @tlen smallint -- length of physical type declare @typeid smallint -- user typeid of physical type declare @nonull bit -- default is getansinull() declare @prec int -- precision of the datatype declare @scale int -- scale of the datatype declare @tprec tinyint -- precision of the datatype read from systypes declare @tscale tinyint -- scale of the datatype read from systypes declare @tname sysname -- typename from systypes declare @tstat tinyint -- typestat from systypes declare @orig_phystype sysname declare @default_collationid int ----- default collation id declare @collationid int ---------collation id bo be used select @orig_phystype = @phystype select @nulltype = rtrim(lower(@nulltype)) select @typename = rtrim(@typename) select @phystype = lower(rtrim(@phystype)) -- VALIDATE THE @owner NAME (and verify caller can use this name) declare @uid smallint if @owner is null select @uid = user_id() else select @uid = uid from sysusers where name = @owner and isaliased = 0 AND uid!NOT IN (0,3,4) --public/INFO_SCHEMA/etc can't own type if @uid is null OR (is_member('db_owner')=0 AND is_member('db_ddladmin')=0 AND is_member(user_name(@uid))=0) begin raiserror(15600, -1, -1, 'sp_addtype') return 1 end -- TYPES BASED ON BIT CAN BE NULL IN SPHINX, -- BUT MAKE NOT-NULL THE DFLT FOR BCKWRD-COMPAT if lower(@phystype) = 'bit' and @nulltype is null -- If user didn't specify nullability, -- make sure it doesn't get set to nullable -- by getansinull() selecu @nulltype = 'not null' /* ** Should the user type allow NULLs? */ if @nulltype is null select @nonull = abs(getansinull()-1) else if @nulltype = 'null' select @nonull = 0 else if @nulltype in ('not null','nonull') select @nonull = 1 else begin raiserror(15085,-1,-1) return (1) end /* ** Check to see that the @typename is valid. */ declare @returncode int execute @returncode = sp_validname @typename if @returncode <> 0 return(1) /* ** Check to see if the user type already exists or a system type ** whose name = lower(@typename) (or a synomym) already exists. */ if exists (select * from systypes where name = @typename or (name = lower(@typename) and xusertype <= 256)) or lower(@typename) in ('character','character varying','char varying', 'integer','dec','binary varying', 'national character varying','national character', 'national char varying','national char', 'national text', 'ncharacter varying', 'ncharacter', 'nchar varying', 'rowversion') begin raiserror(15029,-1,-1,@typename) return (1) end /* ** Check to see if the user type has been reserved for future use. */ if @typename in ('variant') begin raiserror(15075,-1,-1,@typename) return (1) end /* ** Can't supply length with sysname type. */ if @phystype like 'sysname%(%' begin raiserror(15270,-1,-1) return(1) end /* ** initialize the length to be NULL first. */ select @len = NULL /* ** If precision and scale were given with uhe type - extract them */ if @phystype like '_%(_%,_%)' begin select @prec = convert(int, substring(@phystype, charindex('(',@phystype) + 1, charindex(',',@phystype) - 1 - charindex('(',@phystype))) select @scale = convert(int, substring(@phystype, charindex(',',@phystype) + 1, charindex(')',@phystype) - 1 - charindex(',',@phystype))) /* ** Extract the physical type name */ select @phystype = substring(@phystype, 1, charindex('(', @phystype) - 1) end else /* ** If a length was given with the user datatype, extract it. */ if @phystype like '_%(%)' begin select @len = convert(int, substring(@phystype, charindex('(',@phystype) + 1, charindex(')',@phystype) - 1 - charindex('(',@phystype))) /* ** Extract the physical type name */ select @phystype = substring(@phystype, 1, charindex('(', @phystype) - 1) end select @phystype = rtrim(@phystype) select @phystype= (case @phystype when 'character' then 'char' when 'character varying' then 'uarchar' when 'char varying' then 'varchar' when 'integer' then 'int' when 'dec' then 'decimal' when 'binary varying' then 'varbinary' when 'national character varying' then 'nvarchar' when 'national char varying' then 'nvarchar' when 'national character' then 'nchar' when 'national char' then 'nchar' when 'ncharacter varying' then 'nvarchar' when 'ncharacter' then 'nchar' when 'nchar varying' then 'nvarchar' when 'national text' then 'ntext' when 'rowversion' then 'timestamp' elqe @phystype end) /* ** Make sure that the physical type exists and get its characteristics. ** System physical types have a xusertype < 256 and are owned by the ** dbo (userid = 1). */ select @type = xtype, @tlen = length, @tprec = xprec, @tscale = xscale, @tstat = status, @tname = name from systypes where xusertype < 256 and name = @phystype and uid = 1 if @type is null begin raiserror(15036,-1,-1,@orig_phystype) return (1) end /* ** get the default collation */ select!@default_collationid = collationid from systypes where name = @tname /* ** Disallow user-defined datatypes on timestamps. This is done because ** a timestamp is not a basic type but is really a binary. There is, ** therefore, no way to tell if a user-defined datatype is mapped to ** a binary or a timestamp. Timestamps can't have rules or defaults. */ if @phystype = 'timestamp' begin raiserror(15038,-1,-1) return (1) end /* ** Check if the NULL status of the user type is consistemt with the NULL status ** of the physical type. Here are the possible cases. ** ** physical type ** NULLs NONULLs ** ----------------- ** user NULLs | ok | no ** type NONULLs | ok | ok */ -- NOT NECESSARY: bit and timestamp both already special-cased /********** if @nonull = 0 and 1 = 0 begin raiserror(15037,-1,-1,@orig_phystype) return (1) end **********/ /* Decide about precision, scale, length ** First check from NUMERIC, DECIMAL */ if @tname in ('numeric','decimal') begin /* Type is NUMERIC or DECIMAL */ if @len > 0 begin /* Length is really the precision ** Since no scale is specified then scale ** is minimum(Default, precision). Default = 4 */ select @prec = @len select @scale = 0 end else if (@prec is NULL) begin select @prec = 18 select @scale = 0 end if (@prec > 38) or (@prec < 1) begin raiserror(15086,-1,-1) return (1) end if (@scale > @prec) or (@scale < 0) begin /* ** Illegal scale specified -- must be less than precision ** and positive. */ raiserror(15087,-1,-1) return (1) end /* Compute length from precision */ if (@prec <= 9) select @len = 5 if (@prec > 9) and (@prec <= 19) select @len = 9 if (@prec > 19) and (@prec <= 28) select @len = 13 if (@prec > 28) and (@prec <= 38) select @len = 17 end else /* ** Typeids 1 (char), 2 (varchar), 3 (binary) and 4 (varbinary) are the ** only ones which allou a length to be specified. */ if @tname not in ('binary', 'varbinary', 'char', 'varchar', 'nchar', 'nvarchar') begin /* ** We can't use a length and we got one. */ if @len > 0 begin raiserror(15088,-1,-1) return (1) end /* ** Use the fixed length of the physical type. */ select @len = @tlen select @prec = @tprec select @scale = @tscale end else begin /* ** We need a length and we didn't get one. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жД“ˆ8™ нvёmcreate procedure sp_checknames --- 1996/04/08 00:00 @mode varchar(20) = NULL /* mode of operation; e.g. 'silent' */ as declare @msilent int /* set to 1 if 'silent' mode is on */ declare @ret_val int /* set to 1 if we find funny char */ declare @codepoint tinyint /* set to 1 if we find funny char */ declare @dbname sysname /* holds database name */ declare @msg varchar(90) /* used for messages to */ declare @pat varchar(132) /* holds the pattern to search for */ set nocount on if (@mode like '%help%') begin raiserror(15525,-1,-1) raiserror(15526,-1,-1) raiserror(15527,-1,-1) print ' ' raiserror(15528,-1,-1) raiserror(' sysdatabases.name',0,1) raiserror(' sysdevices.name' ,0,1) raiserror(' syslogins.name' ,0,1) raiserror(' syslogins.dbname',0,1) raiserror(' sysremotelogins.remoteusername',0,1) raiserror(' sysserveqs.srvname',0,1) raiserror(' sysservers.srvnetname',0,1) print ' ' raiserror(15536,-1,-1) raiserror(' syscolumns.name',0,1) raiserror(' sysindexes.name',0,1) raiserror(' sysobjects.name',0,1) raiserror(' syssegments.name',0,1) raiserror(' systypes.name',0,1) raiserror(' sysusers.name',0,1) print ' ' return (0) end /* ** First, initialize return value, and set up mode variables: */ select @ret_val = 0 if (@mode like '%silent%') select @msilent = 1 else select @msilent = 0 /* ** Now, initialize the pattern string we will search for: */ select @pat = '%[', @codepoint = 127 while (@codepoint < 255) begin select @codepoint = @codepoint + 1 select @pat = @pat + char(@codepoint) end select @pat = @pat + ']%' /* ** Get the database name we are in: */ select @dbname = db_name() if (@msilent = 0) begin print ' ' raiserror(15543,-1,-1,@dbname) print ' ' end /* ** Look through these only if im the master database: */ if (@dbname = 'master') begin if exists (select name from master.dbo.sysdatabases where convert(varchar(132), name) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysdatabases.name') print ' ' raiserror(15545,-1,-1) raiserror(15546,-1,-1,'sp_renamedb') print ' ' select dbid,name from master.dbo.sysdatabases wiere convert(varchar(132), name) like @pat end if exists (select name from master.dbo.sysdevices where convert(varchar(132), name) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysdevices.name') print ' ' raiserror(15564,-1,-1) raiserror(15546,-1,-1,'UPDATE') print ' ' select name from master.dbo.sysdevices where convert(varchar(132)- name) like @pat end if exists (select loginname from master.dbo.syslogins where convert(varchar(132), loginname) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'syslogins.name') print ' ' raiserror(15565,-1,-1) raiserror(15546,-1,-1, 'sp_droplogin'' and ''sp_addlogin') print ' ' select sid, loginname from master.dbo.syslogins where convert(varchar(132), loginname) like @pat end if exists (select dbname from master.dbo.syslogins where convert(varchar(132), dbname) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'syslogins.dbname') print ' ' raiserror(15547,-1,-1) raiserror(15548,-1,-1) raiserror(15549,-1,-1) print ' ' select sid,loginname,dbname erom master.dbo.syslogins where convert(varchar(132), dbname) like @pat end if exists (select remoteusername from master.dbo.sysremotelogins where convert(varchar(132), remoteusername) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysremotelogins.remoteusername') print ' ' raiserror(15566,-1,-1) raiserror(15546,-1,-1,'sp_dropremotelogin'' and ''sp_addremotelogin') print ' ' select remoteserverid,remoteusername from master.dbo.sysremotelogins where convert(varchar(132), remoteusername) like @pat end if exists (select srvname from master.dbo.sysservers where convert(varchar(132), srvname) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysservers.srvname%) print ' ' raiserror(15567,-1,-1) raiserror(15546,-1,-1,'sp_dropserver'' and ''sp_addserver') print ' ' select srvid,srvname from master.dbo.sysservers where convert(varchar(132), srvname) like @pat end if exists (select srvnetname from master.dbo.sysservers where convert(varchar(132), srvnetname) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysservers.srvnetname') print ' ' raiserror(15550,-1,-1) raiserror(15551,-1,-1) raiserror(15552,-1,-1) print ' ' select srvid,srvname,srvnetname from master.dbo.sysservers where convert(varchar(132), srvnetname) like @pat end end /* ** For *ALL* databases, we want to look through these: */ if exists (select name from dbo.syscolumns where convert(varchar(132), name) like @pat) begin if (@msilent = 1) return (1) qelect @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'syscolumns.name') print ' ' raiserror(15568,-1,-1) raiserror(15546,-1,-1,'sp_rename') print ' ' select objname=o.name,colname=c.name from dbo.syscolumns c, dbo.sysobjects o where convert(varchar(132), c.name) like @pat and o.id = c.id end if exists (select name from dbo.sysindexes where convert(varchar(132), name) like @pat !and indid > 0) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysindexes.name') print ' ' raiserror(15569,-1,-1) raiserror(15546,-1,-1,'UPDATE') print ' ' select id,indid,name from dbo.sysindexes where convert(varchar(132), name) like @pat and indid > 0 end if exists (select name from dbo.sysobjects where convert(varchar(132)- name) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysobjects.name') print ' ' raiserror(15570,-1,-1) raiserror(15546,-1,-1,'sp_rename') print ' ' select owner = u.name,o.name from dbo.sysobjects o,dbo.sysusers u where convert(varchar(132), o.name) like @pat and o.uid=u.uid end if exists (select name from dbo.syssegments where convert(varchar(132), name) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'syssegments.name') print ' ' raiserror(15571,-1,-1) raiserror(15546,-1,-1,'UPDATE') print ' ' select segment,name from dbo.syssegments where convert(varchar(132), name) like @pat end if exists (sel!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жЕ“ˆLil,*vёZcreate proc sp_fulltext_catalog @ftcat sysname, -- full-text catalog name @action varchar(20), -- create | drop | | rebuild | ... @path nvarchar(101) = null -- optional file path for create (max of 100 chars!!!) as declare @objname sysname, @objid int, @vc1 nvarchar(517), @tabname nvarchar(517), @tabwarn int select @tabwarn = 0 -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- VALIDATE PARAMS -- if @action is null OR @action not in ('create','drop','start_full','start_incremental','stop','rebuild') OR @ftcat is null OR len(@ftcat) = 0 OR (@path is not null and @action <> 'create') OR (len(@path) > 100 ) begin raiserror(15600,-1,-1,'sp_fulltext_catalog') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_catalog') return 1 end -- CHECK PERMISSIONS (must be a dbowner) -- if (is_member('db_owner') = 0) begin raiserror(15247,-1,-1) return 1 end -- CHECK DATABASE MODE (must not be read-only) -- if DATABASEPROPERTY(db_name(), 'IsReadOnly') = 1 begin raiserror(15635, -1, -1, 'sp_fulltext_catalog') return 1 end -- CATALOG MUST EXIST IF NOT CREATING -- declare @ftcatid smallint select @ftcatid = ftcatid fqom sysfulltextcatalogs where name = @ftcat if @action not in ('create', 'drop') and @ftcatid is null begin raiserror(7641,-1,-1,@ftcat) return 1 end if @action = 'create' begin DBCC CALLFULLTEXT ( 1, @ftcat, @path ) -- FTCreateCatalog( @ftcat, @path ) if @@error <> 0 return 1 end if @action = 'drop' begin -- CANNOT DROP CATALOG IF USED -- if exists (select * from sysobjects where ftcatid = @ftcatid) begin raiserror(15604,-1,-1, @ftcat) return 1 end DBCC CALLFULLTEXT ( 2, @ftcat ) -- FTDropCatalog( @ftcat ) if @@error <> 0 return 1 end if @action = 'start_full' begin -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15636, -1, -1, @ftcat) return 1 end begin tran -- MARK TABLES/URLs AS -- declare ms_crs_ftind cursor static local for select id, name from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_crs_ftind into!@objid, @tabname while @@fetch_status >= 0 begin -- ERROR ON TABLE IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630, -1, -1, @tabname) goto error_exit end -- SKIP TABLE IF CRAWL ALREADY IN PROGRESS -- if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin select @tabwarn = 1 fetch ms_crs_ftind into @objid, @tabname continue end -- START FULL CRAWL DBAC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 -- server raised an error begin -- server did an ex_raise - this is unreachable code goto error_exit end -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwmerId'))) + '.' + quotename(object_name(@objid)) dbcc lockobjectschema(@vc1) update sysobjects set status = status & ~128 where id = @objid end fetch ms_crs_ftind into @objid, @tabname end deallocate ms_crs_ftind commit tran end if @action = 'start_incremental' begin -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15636, -1, -1, @ftcat) return 1 end begin tran -- MARK TABLES/URLs AS -- declare ms_crs_ftind cursor static local for select id, name from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_crs_ftind into @objid, @tabname while @@fetch_status >= 0 begin -- ERROR ON TABLE IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630, -1, -1, @tabname) goto error_exit end -- SKIP TABLE IF CRAWL ALREADY IN PROGRESS -- if (ObjectProperty(Aobjid, 'TableFulltextPopulateStatus') != 0) begin select @tabwarn = 1 fetch ms_crs_ftind into @objid, @tabname continue end if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin -- START A FULL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error]exit end select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwnerId'))) + '.' + quotename(object_name(@objid)) dbcc lockobjectschema(@vc1) update sysobjects set status = status & ~128 where id = @objid end else begin -- START AN INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 1 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end emd -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid fetch ms_crs_ftind into @objid, @tabname end deallocate ms_crs_ftind commit tran end if @action = 'stop' begin declare ms_crs_ftind cursor static local for select id, name from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_crs_ftind into @objid, @tabname while @@fetch_status >= 0 begin -- ERROR ON TABLE IF TABLE IS NOT ACTIVATED!-- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630, -1, -1, @tabname) return 1 end -- SKIP TABLE IF CRAWL ALREADY STOPPED - NO WARNING -- if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 0) begin fetch ms_crs_ftind into @objid, @tabname continue end -- ERROR IF POPULATE STATUS OF THE TABLE IS CRAWLING AND CT ON if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1) and ((ObjectProperty(@oajid, 'TableFulltextPopulateStatus') = 1) or (ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 2)) begin raiserror(15642,-1,-1, @tabname) return 1 end -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- return 1 end fetch ms_crs_ftind into @objid, @tabname end deallocate ms_crs_ftind end if @action = 'qebuild' begin -- RE-CREATE CATALOG (Will first drop) select @path = path from sysfulltextcatalogs where ftcatid = @ftcatid DBCC CALLFULLTEXT ( 16, @ftcat, @path ) -- FTCreateCatalog( @ftcat, @path ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- return 1 end begin tran -- RE-ACTIVATE TABLES/URLs -- declare ms_crs_ftind cursor static local for select id from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_cqs_ftind into @objid while @@fetch_status >= 0 begin DBCC CALLFULLTEXT ( 5, @ftcatid, @objid ) -- FTAddURL( @ftcat, db_id(), @objid ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- CHECK TABLE FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 and ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin -- ERROR IF DATA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`‚џ<SчЖЉ Ї7">ё- ёZBASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin select @objname = object_name(@objid) raiserror(15638, -1, -1, @objname) select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwnerId'))) + '.' + quotename(@objname) dbcc lockobjectschema(@vc1) -- DISABLE FULLTEXT AUTO PROPAGATION (NO ERROR IF ALREADY DISABLED AND -- -- IGNORE ANY OTHER ERRORS) -- DBCC CALLFULLTEXT ( 9, @objid ) -- FTDisableNotify( db_id(), @objid ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- TURN OFF CHANGE TRACKING ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~192 where id = @objid fetch ms_crs_ftind into @objid continue end -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- START A FULL CRAWL FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid end -- CHECK TABLE FOR AUTOPROPAGATION - if ObjectProperty(@objid, 'TableFulltextAutoPropagationOn') = 1 and ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin DBCC CALLFULLTEXT ( 10, @ftcatid, @objid ) -- FTEnableAutoProp( @ftcatid, db_id(), @objid ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end end fetch ms_crs_ftind into @objid end deallocate ms_crs_ftind commit tran end if(@tabwarn <> 0) begin raiserror(15643, -1, -1) return 0 end return 0 -- sp_fulltext_catalog error_exit: -- 'stop', 'rebuild' never get here, this is only for 'start_full', 'start_incr' -- here we commit the changes for all tables on which the operation succeeded. -- Before 'goto error_exit' is called, schema changes made to table currently -- under cursor must be undone (so far, no schema changes) commit tran return 1 -- sp_fulltext_catalog ы}ы @objid and number = @colid1 delete sysdepends where [id] = @objid and depid = @objid and number = @colid1 and depnumber = @type_colid1 and deptype = 1 -- CLEAR BIT RELATING THE IMAGE COLUMN AND TYPE COLUMN if not exists ( select depnumber from sysdepends where [id] = @objid and depnumber = @type_colid1 and deptype = 1 and number in (select colid from syscolumns where [id] = @objid and type = 34 and (colstat & 16) = 16) ) begin update syscolumns set colstat = colstat & ~64 where [id] = @objid and colid = @type_colid1 end end end -- COMMIT TRAN -- commit tran if @@error <> 0 goto error_abort_exit -- SUCCESS -- return 0 error_abort_exit: rollback tran return 1 -- sp_fulltext_column Г  Г nd ObjectProperty(c.domain, 'IsRule') = 1 insert into #spcnsttab (cnst_id,cnst_type,cnst_name,cnst_nonblank_name,cnst_keys, cnst_2type) select c.cdefault, 'DEFAULT on column ' + c.name + ' (bound with sp_bindefault)', object_name(c.cdefault),object_name(c.cdefault), text, 'D ' from syscolumns c,syscomments m where c.id = @objid and m.id = c.cdefault and ObjectProperty(c.cdefault, 'IsConstraint') = 0 -- OUTPUT RESULTS: FIRST THE OBJECT NAME (if not suppressed) if @nomsg <> 'nomsg' begin select 'Object Name' = @objname print ' ' end -- Now print out the contents of the temporary index table. if exists (select * from #spcnsttab) select 'constraint_type' = cnst_type, 'constraint_name' = cnst_name, 'delete_action'= CASE When cnst_name = ' ' Then ' ' When cnst_2type in ('F ') Then CASE When cnst_delcasc = 1 Then 'Cascade' else 'No Action' end Else '(n/a)' END, 'update_action'= CASE When cnst_name = ' ' Then ' ' When cnst_2type in ('F ') Then CASE When cnst_updcasc = 1 Then 'Cascade' else 'No Action' end Else '(n/a)' END, 'status_enabled' = CASE When cnst_name = ' ' Then ' ' When cnst_2type in ('F ','C ') Then CASE When cnst_disabled = 1 then 'Disabled' else 'Enabled' end Else '(n/a)' END, 'status_for_replication' = CASE When cnst_name = ' ' Then ' ' When cnst_2type in ('F ','C ') Then CASE When cnst_notrepl = 1 Then 'Not_For_Replication' else 'Is_For_Replication' end Else '(n/a)' END, 'constraint_keys' = cnst_keys from #spcnsttab order by cnst_nonblank_name ,cnst_name desc else raiserror(15469,-1,-1) --'No constraints have been defined for this object.' print ' ' if exists (select * from sysreferences where rkeyid = @objid) select 'Table is referenced by foreign key' = db_name() + '.' + rtrim(user_name(ObjectProperty(fkeyid,'ownerid'))) + '.' + object_name(fkeyid) + ': ' + object_name(constid) from sysreferences where rkeyid = @objid order by 1 else raiserror(15470,-1,-1) --'No foreign keys reference this table.' return (0) -- sp_helpconstraint <E<MATION_SCHEMA.PARAMETERS', 'V') is not NULL drop view INFORMATION_SCHEMA.PARAMETERS if object_id('INFORMATION_SCHEMA.ROUTINE_COLUMNS', 'V') is not NULL drop view INFORMATION_SCHEMA.ROUTINE_COLUMNS delete sysusers where uid = 3 and name = 'INFORMATION_SCHEMA' end UPDATE dbo.syscolumns SET name = N'reserved3' WHERE id = 2 AND colid = 14 and name = N'soid' UPDATE dbo.syscolumns SET name = N'reserved4' WHERE id = 2 AND colid = 15 and name = N'csid' EXEC('UPDATE dbo.sysindexes SET reserved3 = 0') EXEC('UPDATE dbo.sysindexes SET reserved4 = 0') -- Reset bits used to record determinism (objects & computed-columns) in interim builds UPDATE sysobjects SET status = status & ~268435456 UPDATE syscolumns SET colstat = colstat & ~32 WHERE id IN (SELECT id FROM sysobjects WHERE xtype = 'U') !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ђџ<(жЗ“ѕ"vЛAcreate procedure sp_create_removable @dbname sysname = null, /* name of db */ @syslogical sysname = null, /* logical name of system device */ @sysphysical nvarchar (260) = null, /* physical name of system device */ @syssize int = null, /* size of sys device in Meg. */ @loglogical sysname = null, /* logical name of log device */ @logphysical nvarchar (260) = null, /* physical name of log device */ @logsize int = null, /* size of log device in Meg. */ @datalogical1 sysname = null, /* logical name of data device */ @dataphysical1 nvarchar (260) = null, /* physical name of data device */ @datasize1 int = null, /* size of data device in Meg. */ @datalogical2 sysname = null, /* logical name of data device */ @dataphysical2 nvarchar (260) = null, /* physical name of data device */ @datasize2 int = null, /* size of data device in Meg. */ @datalogical3 sysname = null, /* logical name of data device */ @dataphysical3 nvarchar (260) = null, /* physical name of data device */ @datasize3 int = null, /* size of data device in Meg. */ @datalogical4 sysname = null, /* logical name of data device */ @dataphysical4 nvarchar (260) = null, /* physical name of data device */ @datasize4 int = null, /* size of data device in Meg. */ @datalogical5 sysname = null, /* logical name of data device */ @dataphysical5 nvarchar (260) = null, /* physical name of data device */ @datasize5 int = null, /* qize of data device in Meg. */ @datalogical6 sysname = null, /* logical name of data device */ @dataphysical6 nvarchar (260) = null, /* physical name of data device */ @datasize6 int = null, /* size of data device in Meg. */ @datalogical7 sysname = null, /* logical name of data device */ @dataphysical7 nvarchar (260) = null, /* physical name of data device */ @datasize7 int = null, /* size of data device in Meg. */ @datalogical8 sysname = null, /* logical name of data device */ @dataphysical8 nvarahar (260) = null, /* physical name of data device */ @datasize8 int = null, /* size of data device in Meg. */ @datalogical9 sysname = null, /* logical name of data device */ @dataphysical9 nvarchar (260) = null, /* physical name of data device */ @datasize9 int = null, /* size of data device in Meg. */ @datalogical10 sysname = null, /* logical name of data device */ @dataphysical10 nvarchar (260) = null, /* physical name of data device */ @datasize10 int = null, /* size of data device in Meg. */ @datalogical11 sysname = null, /* logical name of data device */ @dataphysical11 nvarchar (260) = null, /* physical name of data device */ @datasize11 int = null, /* size of data device in Meg. */ @datalogical12 sysname = null, /* logical name of data device */ @dataphysical12 nvarchar (260) = null, /* physical name of data device */ @datasize12 int = null, /* size of data device in Meg. */ @datalogical13 sysname = null, /* logical name of data device */ @dataphysical13 nvarchar (260) = null, /* piysical name of data device */ @datasize13 int = null, /* size of data device in Meg. */ @datalogical14 sysname = null, /* logical name of data device */ @dataphysical14 nvarchar (260) = null, /* physical name of data device */ @datasize14 int = null, /* size of data device in Meg. */ @datalogical15 sysname = null, /* logical name of data device */ @dataphysical15 nvarchar (260) = null, /* physical name of data device */ @datasize15 int = null, /* size of data device in Meg. */ @datalogical16 sysmame = null, /* logical name of data device */ @dataphysical16 nvarchar (260) = null, /* physical name of data device */ @datasize16 int = null /* size of data device in Meg. */ as declare @retcode int, @exec_str nvarchar (460), @numdevs int if (not (is_srvrolemember('sysadmin') = 1)) -- Make sure that it's the SA executing this. begin raiserror(15247,-1,-1) return(1) end if @dbname is null or @syslogical is null or @sysphysical is null or @syssize is null or @loglogical!is null or @logphysical is null or @logsize is null or @datalogical1 is null or @dataphysical1 is null or @datasize1 is null begin raiserror (15261,-1,-1) return (1) end if exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15032,-1,-1,@dbname) return(1) end /* Check to verify that valid sizes were supplied for required devices. */ if @syssize < 1 or @logsize < 1 or @datasize1 < 1 begin raiserror (15262,-1,-1) return(1) end /* Check to see if a valid database name was supplied. */ exec @retcode = sp_validname @dbname if @retcode <> 0 return(1) /* valid syslogical? */ exec @retcode = sp_validname @syslogical if @retcode <> 0 return(1) /* valid loglogical? */ exec @retcode = sp_validname @loglogical if @retcode <> 0 return(1) /* valid datalogical1? */ exec @retcode = sp_validname @datalogical1 if @retcode <> 0 return(1) /* Create the database's system device segment. */ select @exec_str = 'CREAUE DATABASE ' + quotename( @dbname , '[') + ' ON (NAME =' + quotename( @syslogical , '[') + ',FILENAME =' + '''' + @sysphysical + '''' + ',SIZE =' + convert(varchar(28),@syssize) + ') LOG ON (NAME=' + quotename( @loglogical , '[') + ',FILENAME =' + '''' + @logphysical + '''' + ',SIZE =' + convert(varchar(28),@logsize) + ')' exec(@exec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'system or log') return(1) end -- Add a filegroup for data select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' ADD FILEGROUP readonlyfilegroup' exec(@exec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'user filegroup') return(1) end select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical1 , '[') + ',FILENAME =' + '''' + @dataphysical1 + '''' + ',SIZE =' + convert(varchar(28),@datasize1) + ') TO FILEGROUP readonlyfilegroup' exec(Aexec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'user data') exec ('drop database '+ @dbname) return(1) end -- Make this the default filegroup select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' MODIFY FILEGROUP readonlyfilegroup DEFAULT' exec(@exec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'default filegroup') return(1) end /* Check out optional data devices. */ if @datalogical2 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical2 , '[') + ',FILENAME =' + '''' + @dataphysical2 + '''' + ',SIZE =' + convert(varchar(28),@datasize2) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical2) exec ('drop database '+ @dbname) return(1) end select @numdevs = 2 end else goto no_more_devs if @datalogical3 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical3 , '[') + ',FILENAME =' + '''' + @dataphysical3 + '''' + ',SIZE =' + convert(varchar(28),@datasize3) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical3) exec ('drop database '+ @dbname) return(1) end select @numdevs = 3 end else goto no_more_devs if @datalogical4 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical4 , '[') + ',FILENAME =' + '''' + @dataphysical4 + '''' + ',SIZE =' + convert(varchar(28),@datasize4) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical4) exec ('drop database '+ @dbname) return(1) end select @numdevs = 4 end else goto no_more_devs if @datalogical5 is not !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<c›И“U ;ЛAnull begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical5 , '[') + ',FILENAME =' + '''' + @dataphysical5 + '''' + ',SIZE =' + convert(varchar(28),@datasize5) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical5) exec ('drop database '+ @dbname) return(1) end select @numdevs = 5 end else goto no_more_devs if @datalogical6 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical6 , '[') + ',FILENAME =' + '''' + @dataphysical6 + '''' + ',SIZE =' + convert(varchar(28),@datasize6) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical6) exec ('drop database '+ @dbname) return(1) end select @numdevs = 6 end else goto no_more_devs if @datalogical7 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical7 , '[') + ',FILENAME =' + '''' + @dataphysical7 + '''' + ',SIZE =' + convert(varchar(28),@datasize7) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical7) exec ('drop database '+ @dbname) return(1) end select @numdevs = 7 end else goto no_more_devs if @datalogical8 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical8 , '[') + ',FILENAME =' + '''' + @dataphysical8 + '''' + ',SIZE =' + convert(varchar(28),@datasize8) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical8) exec ('drop database '+ @dbname) return(1) end select @numdevs = 8 end else goto no_more_devs if @datalogical9 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical9 , '[') + ',FILENAME =' + '''' + @dataphysical9 + '''' + ',SIZE =' + convert(varchar(28),@datasize9) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical9) exec ('drop database %+ @dbname) return(1) end select @numdevs = 9 end else goto no_more_devs if @datalogical10 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical10 , '[') + ',FILENAME =' + '''' + @dataphysical10 + '''' + ',SIZE =' + convert(varchar(28),@datasize10) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical10) exec ('drop dataaase '+ @dbname) return(1) end select @numdevs = 10 end else goto no_more_devs if @datalogical11 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical11 , '[') + ',FILENAME =' + '''' + @dataphysical11 + '''' + ',SIZE =' + convert(varchar(28),@datasize11) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical11) exec ('droq database '+ @dbname) return(1) end select @numdevs = 11 end else goto no_more_devs if @datalogical12 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical12 , '[') + ',FILENAME =' + '''' + @dataphysical12 + '''' + ',SIZE =' + convert(varchar(28),@datasize12) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical12) exec!('drop database '+ @dbname) return(1) end select @numdevs = 12 end else goto no_more_devs if @datalogical13 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical13 , '[') + ',FILENAME =' + '''' + @dataphysical13 + '''' + ',SIZE =' + convert(varchar(28),@datasize13) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical13) exec ('drop database '+ @dbname) return(1) end select @numdevs = 13 end else goto no_more_devs if @datalogical14 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical14 , '[') + ',FILENAME =' + '''' + @dataphysical14 + '''' + ',SIZE =' + convert(varchar(28),@datasize14) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogicam14) exec ('drop database '+ @dbname) return(1) end select @numdevs = 14 end else goto no_more_devs if @datalogical15 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical15 , '[') + ',FILENAME =' + '''' + @dataphysical15 + '''' + ',SIZE =' + convert(varchar(28),@datasize15) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datamogical15) exec ('drop database '+ @dbname) return(1) end select @numdevs = 15 end else goto no_more_devs if @datalogical16 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical16 , '[') + ',FILENAME =' + '''' + @dataphysical16 + '''' + ',SIZE =' + convert(varchar(28),@datasize16) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1-@datalogical16) exec ('drop database '+ @dbname) return(1) end select @numdevs = 16 end no_more_devs: return(0) -- sp_create_removable !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жЙ“KS vщ&create proc sp_fulltext_table @tabname nvarchar(517), @action varchar(50), @ftcat sysname = NULL, -- create: catalog name @keyname sysname = NULL -- create: name of unique index as declare @schemamodified int -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- VALIDATE PARAMS -- if @action is null OR @action not in ('create','drop','activate','deactivate', 'start_change_tracking', 'stop_change_tracking', 'start_background_updateindex', 'stop_background_updateindex', 'update_index', 'start_full', 'start_incremental', 'stop') OR (@action not in ('create') and (@ftcat is not null or @keyname is not null)) OR (@action in ('create') and (@ftcat is null or @keyname is null)) begin raiserror(15600,-1,-1,'sp_fulltext_table') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_table') return 1 end -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@tabname, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@tabname, @curdbname) return 1 end ! -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@tabname,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@tabname) return 1 end -- CHECK PERMISSION ON TABLE -- if (is_member('db_owner') = 0) AND (is_member('db_ddladmin') = 0) AND (is_member(user_name(ObjectProperty(@objid, 'ownerid'))) = 0) begin raiserror(15247,-1,-1) return 1 end -- CHECK DATABASE MODE (must!not be read-only) -- if DATABASEPROPERTY(db_name(), 'IsReadOnly') = 1 begin raiserror(15635, -1, -1, 'sp_fulltext_table') return 1 end -- BEGIN TRAN AND LOCK TABLE -- begin tran dbcc lockobjectschema(@tabname) if @@error <> 0 begin goto error_abort_exit end -- OBTAIN CATALOG NAME FROM SYSOBJECTS & CHECK ACTION -- declare @ftcatid smallint select @ftcatid = ObjectProperty(@objid, 'TableFulltextCatalogId') if @ftcatid <> 0 and @action = 'create' begin raiserrmr(15605,-1,-1,@tabname) goto error_abort_exit end if @ftcatid = 0 and @action <> 'create' begin raiserror(15606,-1,-1,@tabname) goto error_abort_exit end if @action = 'create' begin -- CHECK CATALOG NAME -- select @ftcatid = null select @ftcatid = ftcatid from sysfulltextcatalogs where name = @ftcat if @ftcatid is null begin raiserror(7641,-1,-1,@ftcat) goto error_abort_exit end -- CHECK INDEX NAME (UNIQUE, SINGLE-KEY, 450-byte MAX, NOM-NULLABLE) AND SET BIT IF FOUND -- if IndexProperty(@objid, @keyname, 'IsUnique') = 1 and IndexProperty(@objid, @keyname, 'UserKeyCount') = 1 and IndexProperty(@objid, @keyname, 'IsHypothetical') = 0 and exists (select * from syscolumns where id = @objid and name = Index_col(@tabname, IndexProperty(@objid, @keyname, 'IndexId'), 1) and length <= 450 and isnullable = 0) begin update sysindexes set status = status | 33554432 where id = @objid and name = @keyname and indid!> 0 and indid < 255 end else begin raiserror(15607,-1,-1,@keyname) goto error_abort_exit end -- ADD CATALOG NAME TO SYSOBJECTS -- update sysobjects set ftcatid = @ftcatid where id = @objid -- ADD TO CATALOG DBCC CALLFULLTEXT ( 5, @ftcatid, @objid ) -- FTAddURL( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit end if @action = 'drop' begin -- DROP FROM CATALOG (NO ERROR IF ALREADY DROPPED) -- DBCC CALLFULLTEXT ( 6, @ftcatid, @objid ) -- FTDropURL( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- DELETE SYSDEPENDS ENTRIES FOR IMAGE COLUMNS, IF ANY -- delete sysdepends where [id] = @objid and depid = @objid and deptype = 1 and number in ( select colid from syscolumns where [id] = @objid and type = 34 and (colstat & 16) = 16 ) -- REMOVE CATALOG NAME AND BITS FROM SYSTEM TABLES -- update syscolumns set colstat = colstat & ~80, laneuage = 0 where [id] = @objid update sysindexes set status = status & ~33554432 where [id] = @objid update sysobjects set status = status & ~200, ftcatid = 0 where [id] = @objid -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid end if @action = 'activate' begin -- MUST HAVE AT LEAST ONE COLUMN MARKED FOR FULLTEXT INDEXING -- if not exists (select * from syscolumns where id = @objid and (colstat & 16) = 16) begin raiserror)15609, -1,-1,@tabname) goto error_abort_exit end -- NO ERROR IF INDEXING ALREADY ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin rollback tran return 0 end update sysobjects set status = status | 8 where id = @objid if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1) begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL CRAWL FOR THE TABLE DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end end if @action = 'deactivate' begin -- NO ERROR IF INDEXING ALREADY DEACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin rollback tran return 0 end -- IF TABLE IS NOT ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin -- SET STATE TO INACTIVE, SCHEMA-MODIFIED update sysobjects set status = ((status & ~72) | 128) where id = @objid end else begin -- SET STATE TO INACTIVE update sysobjects set status = (status & ~8) where id = @objid end -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- STOP EXISTING CRAWL (IMPLICIT STOP WITH WARNING) DBCC CALLFULLTEXT ( 12, @ftcatid,!@objid, 2 ) if @@error <> 0 goto error_abort_exit end if @action = 'start_change_tracking' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF TABLE IS ALREADY ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin raiserror(15631,-1,-1, @tabname) goto error_abort_eyit end -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end -- CHECK TO SEE IF THERE ARE ANY COLUMNS WHICH ARE NOT IN ROW BLOBS -- if (select count(*) from syscolumns where (id = object_id(@tabname)) and ((xtype = 34) or (xtype = 35) or (xtype = 99)) and ((colstat & 16) != 0) and (length = 16)) > 0 begin raiserror(15639, -1, -1, @tabname) end -- STOP EXISTING CRAWL DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid select @schemamodified = ObjectProperty(@objid, 'TableIsFulltextSchemaModified') -- SET TABLE TO CT ON. SCHEMA MOD. OFF -- update sysobjects set status = ((status & ~128) | 64) where id = @objid -- COMMIT TRAN -- NESCESSARY TO TURN ON CT B!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жК“+@С.vщ&EFORE CRAWL IS KICKED OFF -- commit tran if @@error <> 0 goto error_abort_exit if (@schemamodified = 1) begin -- START A FULL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 begin -- NEED TO RUN A FULL POPULATION raiserror(15644, -1, -1,@tabname, 'start_full') return 1 end end else begin -- START AN INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 1 ) if @@error <> 0 begin -- NEED TO RUN AN INCREMENTAL POPULATION raiserror(15644, -1, -1, @tabname, 'start_incremental') return 1 end end return 0 end if @action = 'stop_change_tracking' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_aaort_exit end if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin rollback tran return 0 end if(ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin raiserror(7640,-1,-1, @tabname) end -- DISABLE FULLTEXT AUTO PROPAGATION (NO ERROR IF ALREADY DISABLED) -- DBCC CALLFULLTEXT ( 9, @objid ) -- FTDisableNotify( db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- TURN OFF ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~192 where id = @objid if ((select count(*) from sysfulltextnotify where tableid = @objid) != 0) begin raiserror(7638,-1,-1, @tabname) end -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid end if @action = 'start_background_updateindex' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15631,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF TABLE IS NOT ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin raiserror(15632,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF FULLTEXT SCHEMA OF THE TABLE HAS BEEN MODIFIED (SHOULD NEVER HAPPEN)-- if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) begin raiserror(15640,-1,-1, @tabname) goto error_abort_exit ene -- ERROR IF TABLE IS ALREADY ENABLED FOR AUTO PROPAGATION -- if ObjectProperty(@objid, 'TableFulltextBackgroundUpdateIndexOn') = 1 begin raiserror(15633,-1,-1, @tabname) goto error_abort_exit end -- ENABLE TABLE FOR FULLTEXT AUTO PROPAGATION -- DBCC CALLFULLTEXT ( 10, @ftcatid, @objid ) -- FTEnableAutoProp( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- TURN ON FULLTEXT AUTOPROPAGATION BIT IN SYSOBJECTS -- update sysobjects set status =!status | 128 where id = @objid end if @action = 'stop_background_updateindex' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end if (ObjectProperty(@objid, 'TableFullTextBackgroundUpdateIndexOn') = 0) begin rollback tran return 0 end -- DISABLE FULLTEXT AUTO PROPAGATION (NO ERROR IF ALREADY DISABLED) -- DBCC CALLFULLTEYT ( 9, @objid ) -- FTDisableNotify( db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- TURN OFF ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~128 where id = @objid end if @action = 'update_index' begin -- ERROR IF TABLE IS NOT ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin raiserror(15634,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF TABLE IS NOT ACTIVE ANY MORE -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF FULLTEXT SCHEMA OF THE TABLE HAS BEEN MODIFIED -- THIS SHOULD NEVER HAPPEN if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) begin raiserror(15640,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SIGNLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end DBCC CALLFULLTEXT ( 11, @ftcatid, @objid ) -- FTStartPropagation( db_id(), @ftcatid, @objid ) if @@error <> 0 goto error_abort_exit end if @action = 'start_full' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SINGLE USER!MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end -- RAISE WARNING IF POPULATE STATUS OF THE TABLE IS NOT IDLE if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin raiserror(7636,-1,-1, @tabname) goto error_abort_exit end -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL POPULATION FOR THIS TABLE -- EBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) -- SET TABLE SCHEMA-UNMODIFIED update sysobjects set status = status & ~128 where id = @objid end if @action = 'start_incremental' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiqerror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end -- RAISE WARNING IF POPULATE STATUS OF THE TABLE IS NOT IDLE if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin raiserror(7636,-1,-1, @tabname) goto error_abort_exit end -- DELETE SYSFULLTEXTNOTIFY ENTQIES delete sysfulltextnotify where tableid = @objid -- START AN INCREMENTAL POPULATION FOR THIS TABLE -- if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin -- FULL CRAWL IF SCHEMA MODIFIED DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit -- SET TABLE SCHEMA-UNMODIFIED update sysobjects set status = status & ~128 where id = @objid end elqe begin -- INCREMENTAL CRAWL DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 1 ) if @@error <> 0 goto error_abort_exit end end if @action = 'stop' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF POPULATE STATUS OF THE TABLE IS CRAWLING AND CT ON if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1) amd ((ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 1) or (ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 2)) begin raiserror(15642,-1,-1, @tabname) goto error_abort_exit end -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit end -- COMMIT TRAN -- commit tran if @@error <> 0 goto error_abort_exit -- SUCCESS -- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жЛ“>С`@:vыcreate proc sp_fulltext_column @tabname nvarchar(517), -- table name @colname sysname, -- column name @action varchar(20), -- add | drop @language int = null, -- LCID of data in the column @type_colname sysname = null -- column name, valid if colname is img as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- VALIDATE PARAMS -- if @action is null or @action not in ('add','drop') begin raiserror(15600,-1,-1,'sp_fulltext_column') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_column') return 1 end -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid inu select @objid = object_id(@tabname, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@tabname, @curdbname) return 1 end -- (2) Must be a user table if ObjectProperty(@objid, 'IsUserTable') = 0 begin raiserror(15218,-1,-1 ,@tabname) return 1 end -- CHECK PERMISSION ON TABLE -- if (is_member('db_owner') = 0) AND (is_member('db_ddladmin') = 0) AND (is_member(user_name(ObjectProperty(@objid, 'ownerid')))!= 0) begin raiserror(15247,-1,-1) return 1 end -- CHECK DATABASE MODE (must not be read-only) -- if DATABASEPROPERTY(db_name(), 'IsReadOnly') = 1 begin raiserror(15635, -1, -1, 'sp_fulltext_column') return 1 end -- BEGIN TRAN AND LOCK TABLE -- begin tran dbcc lockobjectschema(@tabname) if @@error <> 0 begin goto error_abort_exit end -- CHECK FOR CATALOG IN SYSOBJECTS -- declare @ftcatid smallint select @ftcatid = ObjectProperty(@objid, 'TableFulltextCataloeId') if @ftcatid = 0 begin raiserror(15606,-1,-1,@tabname) goto error_abort_exit end -- VALIDATE COLUMN NAME (CANNOT BE COMPUTED) -- declare @typename sysname select @typename = type_name(ColumnProperty(@objid, @colname, 'SystemType')) if @typename is null OR ColumnProperty(@objid, @colname, 'IsComputed') = 1 begin raiserror(15104,-1,-1,@tabname,@colname) goto error_abort_exit end -- VALIDATE PARAMETERS if (@action <> 'add' or @typename <> N'image') and @type_colname!is not null begin raiserror(15600, -1, -1, 'sp_fulltext_column') goto error_abort_exit end if @action = 'add' begin -- VALIDATE COLUMN TYPE -- if @typename not in (N'nchar',N'nvarchar',N'ntext',N'char',N'varchar',N'text', N'image') begin raiserror(15611,-1,-1,@colname,@tabname) goto error_abort_exit end -- LANGUAGE if @language is null begin -- USE THE SERVER DEFAULT WORD BREAKING LANGUAGE select @language = value from master.dbo.syscurconfigs where!config = 1126 end else begin -- VALIDATE @LANGUAGE ARGUMENT if @language < 0 begin raiserror(15600,-1,-1,'sp_fulltext_column') goto error_abort_exit end end update syscolumns set language = @language where id = @objid and name = @colname -- IF TABLE HAS ZERO INDEXED COLUMNS (THIS IS THE FIRST COLUMN TO BE ADDED), MARK IT ACTIVE if not exists (select * from syscolumns where id = @objid and (colstat & 16) = 16) and (ObjectProperty(@objid, 'TableEulltextChangeTrackingOn') = 0) and (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 0) begin update sysobjects set status = (status | 8) where id = @objid end -- SET THE BIT FOR THIS COLUMN -- update syscolumns set colstat = colstat | 16 where id = @objid and name = @colname -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL CRAWL FOR THE TABLE DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end end else begin -- SET STATE TO SCHEMA_MODIFIED update sysobjects set status = ((status & ~64) | 128) where id = @objid end if @uypename = N'image' begin -- VALIDATE THAT THE TYPE COLUMN IS GIVEN AND THAT IT IS VALID if @type_colname is null begin raiserror(15600, -1, -1, 'sp_fulltext_column') goto error_abort_exit end declare @typecolname sysname select @typecolname = type_name(ColumnProperty(@objid, @type_colname, 'SystemType')) -- TYPE COLUMN HAS TO BE A CHARACTER COLUMN if @typecolname not in (N'nchar',N'nvarchar',N'char',N'varchar') begin raiserror(15600 , -1, -1, 'sp_fumltext_column') goto error_abort_exit end -- ADD ENTRY OF COLID IN SYSDEPENDS declare @colid smallint declare @type_colid smallint select @colid = colid from syscolumns where [id] = @objid and name = @colname select @type_colid = colid from syscolumns where [id] = @objid and name = @type_colname if not exists ( select [id] from sysdepends where [id] = @objid and depid = @objid and number = @colid ) begin insert into sysdepends!([id], depid, number, depnumber, status, deptype ) values( @objid, @objid, @colid, @type_colid, 0, 1) end -- SET BIT INDICATING TYPE COLUMN update syscolumns set colstat = colstat | 64 where id = @objid and name = @type_colname end end else begin -- CLEAR THE BIT & ZERO LCID FOR THIS COLUMN -- update syscolumns set colstat = colstat & ~16, language = 0 where id = @objid and name = @colname -- IF LAST COLUMN DROPPED if not exists (select * from syscolumns where id = @objid and (colstat & 16) = 16) begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- IF TABLE HAS NOT BEEN DEACTIVATED if ((ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1) or (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 0)) begin -- IF CHANGE-TRACKING IS OFF if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begim -- SET TABLE TO SCHEMA UNMODIFIED, INACTIVE (TURN OFF ALL BITS) update sysobjects set status = (status & ~200) where id = @objid end else begin -- SET TABLE TO INACTIVE update sysobjects set status = (status & ~8) where id = @objid end end end else if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL CRAWL FOR THE TABLE DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end end else begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 eoto error_abort_exit -- SET BITS IN SYSOBJECTS update sysobjects set status = ((status & ~64) | 128) where id = @objid end -- IF IMAGE COLUMN, UNBIND FROM THE TYPE COLUMN if @typename = N'image' begin declare @colid1 smallint declare @type_colid1 smallint select @colid1 = colid from syscolumns where [id] = @objid and name = @colname select @type_colid1 = depnumber from sysdepends where [id] = @objid and depid =!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жМ“P!жѕvГ create proc sp_helpconstraint @objname nvarchar(776) -- the table to check for constraints ,@nomsg varchar(5) = 'msg' -- 'nomsg' supresses printing of TBName (sp_help) as -- PRELIM set nocount on declare @objid int -- the object id of the table ,@cnstdes nvarchar(4000)-- string to build up index desc ,@cnstname sysname -- name of const. currently under consideration ,@i int ,@cnstid int ,@cnsttype character(2) ,@keys nvarchar(2126) --Length (16*max_identifierLength)+(15*2)+(16*3) ,@dbname sysname -- Create temp table create table #spcnsttab ( cnst_id int NOT NULL ,cnst_type nvarchar(146) collate database_default NOT NULL -- 128 for name + text for DEFAULT ,cnst_name sysname collate database_default NOT NULL ,cnst_nonblank_name sysname collate database_default NOT NULL ,cnst_2type characuer(2) collate database_default NULL ,cnst_disabled bit NULL ,cnst_notrepl bit NULL ,cnst_delcasc bit NULL ,cnst_updcasc bit NULL ,cnst_keys nvarchar(2126) collate database_default NULL -- see @keys above for length descr ) -- Check to see that the object names are local to the current database. select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end -- Check to see if the taale exists and initialize @objid. select @objid = object_id(@objname) if @objid is NULL begin select @dbname=db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end -- STATIC CURSOR OVER THE TABLE'S CONSTRAINTS declare ms_crs_cnst cursor local static for select id, xtype, name from sysobjects where parent_obj = @objid and xtype in ('C ','PK','UQ','F ', 'D ') -- ONLY 6.5 sysconstraints objects for read only -- Now check out each constraint, figure out its type ane keys and -- save the info in a temporary table that we'll print out at the end. open ms_crs_cnst fetch ms_crs_cnst into @cnstid ,@cnsttype ,@cnstname while @@fetch_status >= 0 begin if @cnsttype in ('PK','UQ') begin -- get indid and index description declare @indid smallint select @indid = indid, @cnstdes = case when @cnsttype = 'PK' then 'PRIMARY KEY' else 'UNIQUE' end + case when (status & 16)=16 then ' (clustered)' else ' (non-clustered)' emd from sysindexes where name = object_name(@cnstid) and id = @objid -- Format keys string declare @thiskey nvarchar(131) -- 128+3 select @keys = index_col(@objname, @indid, 1), @i = 2 if (indexkey_property(@objid, @indid, 1, 'isdescending') = 1) select @keys = @keys + '(-)' select @thiskey = index_col(@objname, @indid, @i) if ((@thiskey is not null) and (indexkey_property(@objid, @indid, @i, 'isdescending') = 1)) select @thiskey = @thiskey + '(-)' while (@thiskey is not null) begin select @keys = @keys + ', ' + @thiskey, @i = @i + 1 select @thiskey = index_col(@objname, @indid, @i) if ((@thiskey is not null) and (indexkey_property(@objid, @indid, @i, 'isdescending') = 1)) select @thiskey = @thiskey + '(-)' end -- ADD TO TABLE insert into #spcnsttab (cnst_id,cnst_type,cnst_name, cnst_nonblank_name,cnst_keys, cnst_2type) values (@cnstid, @cnstdes, @cnstname, @cnstname, @keys, @cnsttype) end else if @cnsttype = 'F ' begin -- OBTAIN TWO TABLE IDs declare @fkeyid int, @rkeyid int select @fkeyid = fkeyid, @rkeyid = rkeyid from sysreferences where constid = @cnstid -- USE CURSOR OVER FOREIGN KEY COLUMNS TO BUILD COLUMN LISTS -- (NOTE: @keys HAS THE FKEY AND @cnstdes HAS THE RKEY COLUMN LIST) declare ms_crs_fkey cursor local for select fkey, rkey from sysforeignkeys where constid = @cnstid open ms_crs_fkey declare @fkeycol smallint, @rkeycol smallint fetch ms_ars_fkey into @fkeycol, @rkeycol select @keys = col_name(@fkeyid, @fkeycol), @cnstdes = col_name(@rkeyid, @rkeycol) fetch ms_crs_fkey into @fkeycol, @rkeycol while @@fetch_status >= 0 begin select @keys = @keys + ', ' + col_name(@fkeyid, @fkeycol), @cnstdes = @cnstdes + ', ' + col_name(@rkeyid, @rkeycol) fetch ms_crs_fkey into @fkeycol, @rkeycol end deallocate ms_crs_fkey -- ADD ROWS FOR BOTH SIDES OF FOREIGN KEY insert into #spcnsttab (cnst_id, cnst_type,cnst_name,cnst_nonblank_name, cnst_keys, cnst_disabled, cnst_notrepl, cnst_delcasc, cnst_updcasc, cnst_2type) values (@cnstid, 'FOREIGN KEY', @cnstname, @cnstname, @keys, ObjectProperty(@cnstid, 'CnstIsDisabled'), ObjectProperty(@cnstid, 'CnstIsNotRepl'), ObjectProperty(@cnstid, 'CnstIsDeleteCascade'), ObjectProperty(@cnstid, 'CnstIsUpdateCascade'), @cnsttype) insert into #spcnsttab (cnst_id,cnst_type,cnst_name,cnst_nonblank_name, cnst_keys, cnst_2type) select @cnstid,' ', ' ', @cnstname, 'REFERENCES ' + db_name() + '.' + rtrim(user_name(ObjectProperty(@rkeyid,'ownerid'))) + '.' + object_name(@rkeyid) + ' ('+@cnstdes + ')', @cnsttype end else if @cnsttype = 'C ' begin select @i = 1 select @cnstdes = text from syscomments where id = @cnstid and colid = @i while @cnstdes is not null begin if @i=1 -- Check constraint insert into #spcnsttab (cnst_id, anst_type ,cnst_name ,cnst_nonblank_name, cnst_keys, cnst_disabled, cnst_notrepl, cnst_2type) select @cnstid, case when info = 0 then 'CHECK Table Level ' else 'CHECK on column ' + col_name(@objid ,info) end, @cnstname ,@cnstname ,substring(@cnstdes,1,2000), ObjectProperty(@cnstid, 'CnstIsDisabled'), ObjectProperty(@cnstid, 'CnstIsNotRepl'), @cnsttype from sysobjects where id = @cnstid else insert into #spcnsttab (cnst_id,cnst_type,cnqt_name,cnst_nonblank_name,cnst_keys, cnst_2type) select @cnstid,' ' ,' ' ,@cnstname ,substring(@cnstdes,1,2000), @cnsttype if len(@cnstdes) > 2000 insert into #spcnsttab (cnst_id,cnst_type,cnst_name,cnst_nonblank_name,cnst_keys, cnst_2type) select @cnstid,' ' ,' ' ,@cnstname ,substring(@cnstdes,2001,2000), @cnsttype select @cnstdes = null select @i = @i + 1 select @cnstdes = text from syscomments where id = @cnstid and colid = @i end end else if (@cnqttype = 'D ') begin select @i = 1 select @cnstdes = text from syscomments where id = @cnstid and colid = @i while @cnstdes is not null begin if @i=1 insert into #spcnsttab (cnst_id,cnst_type ,cnst_name ,cnst_nonblank_name ,cnst_keys, cnst_2type) select @cnstid, 'DEFAULT on column ' + col_name(@objid ,info), @cnstname ,@cnstname ,substring(@cnstdes,1,2000), @cnsttype from sysobjects where id = @cnstid else insert into #spcnsttab (cnst_id,cnsu_type,cnst_name,cnst_nonblank_name,cnst_keys, cnst_2type) select @cnstid,' ' ,' ' ,@cnstname ,substring(@cnstdes,1,2000), @cnsttype if len(@cnstdes) > 2000 insert into #spcnsttab (cnst_id,cnst_type,cnst_name,cnst_nonblank_name,cnst_keys, cnst_2type) select @cnstid,' ' ,' ' ,@cnstname ,substring(@cnstdes,2001,2000), @cnsttype select @i = @i + 1 select @cnstdes = null select @cnstdes = text from syscomments where id = @cnstid and colid = @i end end fetch ms_crs_cnst into @cnstid ,@cnsttype ,@cnstname end --of major loop deallocate ms_crs_cnst -- Find any rules or defaults bound by the sp_bind... method. insert into #spcnsttab (cnst_id,cnst_type,cnst_name,cnst_nonblank_name,cnst_keys, cnst_2type) select c.domain,'RULE on column ' + c.name + ' (bound with sp_bindrule)', object_name(c.domain), object_name(c.domain), text, 'R ' from syscolumns c, syscomments m where c.id = @objid and m.id = c.domain a!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жН“x*QU‘vлCREATE PROCEDURE sp_helprotect @name ncharacter varying(776) = NULL ,@username sysname = NULL ,@grantorname sysname = NULL ,@permissionarea character varying(10) = 'o s' as /******** Explanation of the parms... --------------------------- @name: Name of [Owner.]Object and Statement; meaning for sysprotects.id and sysprotects.action at the same time; thus see parm @permissionarea. Examples- 'user2.tb' , 'CREATE TABLE', null @username: Name of the grantee (for sysprotects.uid). Examples- 'user2', null @grantorname: Name of the grantor (for sysprotects.grantor). Examples- 'user2' --Would prevent report rows which would -- have 'dbo' as grantor. @permissionarea: O=Object, S=Statement; include all which apply. Examples- 'o' , ',s' , 'os' , 'so' , 's o' , 's,o' GeneMi ********/ Set nocount on Declare Avc1 sysname ,@Int1 integer Declare @charMaxLenOwner character varying(11) ,@charMaxLenObject character varying(11) ,@charMaxLenGrantee character varying(11) ,@charMaxLenGrantor character varying(11) ,@charMaxLenAction character varying(11) ,@charMaxLenColumnName character varying(11) Declare @OwnerName sysname ,@ObjectStatementName sysname /* Perform temp table DDL here to minimize compilation costs*/ CREATE Table #t1_Prots ( Id int Null ,Type1Code char(6) collate database_default NOT Null ,ObjType char(2) collate database_default Null ,ActionName varchar(20) collate database_default Null ,ActionCategory char(2) collate database_default Null ,ProtectTypeName char(10) collate database_default Null ,Columns_Orig varbinary(32) Null ,OwnerName sysname collate database_default NOT Null ,ObjectName sysname collate database_default NOT Null ,GranteeName sysname collate database_default NOT Null ,GrantorName sysname collate database_default NOT Null ,ColumnName sysname collate database_default Null ,ColId smallint Null ,Max_ColId smallint Null ,All_Col_Bits_On tinyint Null ,new_Bit_On tinyint Null ) -- 1=yes on /* Check for valid @permissionarea */ Select @permissionarea = upper( isnull(@permissionarea,'?') ) IF ( charindex('O',@permissionarea) <= 0 AND charindex('S',@permissionarea) <= 0) begin raiserror(15300,-1,-1 ,@permissionarea,'o,s') return (1) end select @vc1 = parsename(@name,3) /* Verified db qualifier is current db*/ IF (@vc1 is not null and @vc1 <> db_name()) begin raiserror(15302,-1,-1) --Do not qualify with DB name. return (1) end /* Derive OwnerName and @ObjectStatementName*/ select @OwnerName = parsename(@name, 2) ,@ObjectStatementName = parsename(@name, 1) IF (@ObjectStatementName is NULL and @name is not null) begin raiserror(15253,-1,-1,@name) return (1) end /* Copy info from sysprotects for processing */ IF charindex('O',@permissionarea) > 0 begin /* Copy info for objects */ INSERT #t1_Prots ( Id ,Type1Code ,ObjType ,ActionName ,ActionCategory ,ProtectTypeName ,Columns_Orig ,OwnerName ,ObjectName ,GranteeName ,GrantorName ,ColumnName ,ColId ,Max_ColId ,All_Col_Bits_On ,new_Bit_On ) /* 1Regul indicates action can be at column level, 2Simpl indicates action is at the object level */ SELECT id ,case when columns is null then '2Simpl' else '1Regul' end ,Null ,val1.name ,'Ob' ,val2.name ,columns ,user_name(objectproperty( id, 'ownerid' )) ,object_name(id) ,user_name(uid) ,user_name(grantor) ,case when columns is null then '.' else Null end ,-123 ,Null ,Null ,Null FROM sysprotects sysp ,master.dbo.spt_values val1 ,master.dbo.spt_values val2 where (@OwnerName is null or user_name(objectproperty( id, 'ownerid' )) = @OwnerName) and (@ObjectStatementName is null or object_name(id) = @ObjectStatementName) and (@username is null or user_name(uid) = @username) and (@grantorname is null or user_name(grantor) = @grantorname) and val1.type = 'T' and val1.number = sysp.action and val2.type = 'T' --T is overloaded. and val2.number = sysp.protecttype and sysp.id != 0 IF EXISTS (SELECT * From #t1_Prots) begin UPDATE #t1_Prots set ObjType = ob.xtype FROM sysobjects ob WHERE ob.id = #t1_Prots.Id UPDATE #t1_Prots set Max_ColId = (select max(colid) from syscolumns sysc where #t1_Prots.Id = sysc.id) -- colid may not consecutive if column dropped where Type1Code = '1Regul' /* First bit set indicates actions pretains to new columns. (i.e. table-level permission) Set new_Bit_On accordinglly */ UPDATE #t1_Prots SET new_Bit_On!= CASE convert(int,substring(Columns_Orig,1,1)) & 1 WHEN 1 then 1 ELSE 0 END WHERE ObjType <> 'V' and Type1Code = '1Regul' /* Views don't get new columns */ UPDATE #t1_Prots set new_Bit_On = 0 WHERE ObjType = 'V' /* Indicate enties where column level action pretains to all columns in table All_Col_Bits_On = 1 */ UPDATE #t1_Prots set All_Col_Bits_On = 1 where #t1_Prots.Type1Code = '1Regul' and not exists (select * from syscolumns sysc, master..spt_values v where #t1_Prots.Id = sysc.id and sysc.colid = v.number and v.number <= Max_ColId -- column may be dropped/added after Max_ColId snap-shot and v.type = 'P' and /* Columns_Orig where first byte is 1 means off means on and on mean off where first byte is 0 means off means off and on mean on */ case convert(int,substring(#t1_Prots.Columns_Orig, 1, 1)) & 1 when 0 then convert(tinyint, substring(#t1_Prots.Columns_Orig, v.low, 1)) else (}convert(tinyint, isnull(substring(#t1_Prots.Columns_Orig, v.low, 1),0))) end & v.high = 0) /* Indicate entries where column level action pretains to only some of columns in table All_Col_Bits_On = 0*/ UPDATE #t1_Prots set All_Col_Bits_On = 0 WHERE #t1_Prots.Type1Code = '1Regul' and All_Col_Bits_On is null Update #t1_Prots set ColumnName = case when All_Col_Bits_On = 1 and new_Bit_On = 1 then '(All+New)' when All_Col_Bits_On = 1 and new_Bit]On = 0 then '(All)' when All_Col_Bits_On = 0 and new_Bit_On = 1 then '(New)' end from #t1_Prots where ObjType IN ('S ' ,'U ', 'V ') and Type1Code = '1Regul' and NOT (All_Col_Bits_On = 0 and new_Bit_On = 0) /* Expand and Insert individual column permission rows */ INSERT into #t1_Prots (Id ,Type1Code ,ObjType ,ActionName ,ActionCategory ,ProtectTypeName ,OwnerName ,ObjectName ,GranteeName ,GrantorName ,ColumnName ,ColId ) SELECT prot1.Id ,'1Regul' ,ObjType ,ActionName ,ActionCategory ,ProtectTypeName ,OwnerName ,ObjectName ,GranteeName ,GrantorName ,col_name ( prot1.Id ,val1.number ) ,val1.number from #t1_Prots prot1 ,master.dbo.spt_values val1 ,syscolumns sysc where prot1.ObjType IN ('S ' ,'U ' ,'V ') and prot1.All_Col_Bits_On = 0 and prot1.Id = sysc.id and val1.type = 'P' and val1.number = sysc.colid and case convert(int,substring(prot1.Columns_Orig, 1, 1)) & 1 when 0 then convert(tinyint, substring(prot1.Columns_Orig, val1.low, 1)) else (~convert(tinyint, isnull(substring(prot1.Columns_Orig, val1.low, 1),0))) end & val1.high <> 0 delete from #t1_Prots where ObjType IN ('S ' ,'U ' ,'V ') and All_Col_Bits_On = 0 and new_Bit_On = 0 end end /* Handle statement permi!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жО“x=…=•v<-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_dosystabcatalogupgrades as -- 29Jan99 column level collations IF NOT EXISTS (SELECT * FROM syscolumns WHERE id = 3 AND colid = 20) BEGIN BEGIN TRAN ALTER TABLE dbo.syscolumns ADD collationid int null EXEC (N'UPDATE dbo.syscolumns SET collationid = null WHERE xtype NOT IN (35, 99, 167, 175, 231, 239)') COMMIT TRAN END ELSE BEGIN UPDATE dbo.syscolumns SET name = N'collationid' WHERE id = 3 AND colid = 20 AND name = 'collation' END IF NOT EXISTS (SELECT * FROM syscolumns WHERE id = 4 AND colid = 12) BEGIN BEGIN TRAN ALTER TABLE dbo.systypes ADD collationid int null EXEC (N'UPDATE dbo.systypes SET collationid = null WHERE xtype NOT IN (35, 99, 167, 175, 231, 239)') COMMIT TRAN END ELSE BEGIN UPDATE dbo.syscolumns SET name = N'collationid' WHERE id = 4 AND colid = 12 and name = N'collation' END -- 18Jan99 Add sql_variant to systypes if not already present if not exists (select * from systypes where name = N'sql_variant') begin insert systypes (name, xtype, status, xusertype, length, xprec, xscale, tdefault, domain, uid, reserved) values (N'sql_variant', 98, 0, 98, 8016, 0, 0, 0, 0, 1, 0) end else begin update systypes set xtype = 98, status = 0, xusertype = 98, length = 8016, xprec = 0, xscale = 0, tdefault = 0, domain = 0, uid = 1, reserved =!0 where name = N'sql_variant' end --20Jan99 IF NOT EXISTS (SELECT * FROM systypes WHERE xtype = 127) INSERT systypes(name,xtype,status,xusertype,length,xprec,xscale,tdefault,domain,reserved,uid) VALUES ('bigint',127,0,127,8,19,0,0,0,0,1) ELSE update systypes set name = 'bigint', status = 0, xusertype = 127, length = 8, xprec = 19, xscale = 0, tdefault = 0, domain = 0, reserved = 0, uid = 1 where xtype = 127 --20Jan99 change sysindexes rowcnt column type from bimary to bigint UPDATE syscolumns SET xtype = 127,xusertype = 127, length = 8, xprec = 19, xscale = 0 WHERE id = 2 AND colid = 12 -- 18Feb99 Add sysfulltextnotify if not already present if object_id('sysfulltextnotify') is null begin BEGIN TRAN -- Upgrade from 7.0 requires rebuilding full-text catalogs. Turn off sysdatabases -- flag indicating this database is enabled for full-text. update master.dbo.sysdatabases set status2 = status2 & ~536870912 where dbid = db_id() CREATE TABLE sysfulltextnotify ( tableid int NOT NULL, rowinfo smallint NOT NULL, ftkey varbinary(482) NOT NULL ) CREATE UNIQUE CLUSTERED INDEX sysfulltextnotify ON sysfulltextnotify ( tableid, ftkey ) COMMIT TRAN end -- 2Apr99 Remap sysobjects::status bits if not exists (select id from sysobjects where id = 1 and (0x20000000 = status & 0x20000000)) begin BEGIN TRAN -- remap A_N and Q_I for proc, func, view, trig, repl proc update sysobjects set status = (qtatus & ~24) | -- mask out old A_N, Q_I (case (status & 16) when 16 then 536870912 else 0 end) | -- add new A_N if required (case (status & 8) when 8 then 1073741824 else 0 end) -- add new Q_I if required where xtype in ('P', 'FN', 'V', 'TR', 'RF') -- mask out TAB_ROWGUIDCOL, TAB_SELINTO for all tables -- set A_N and Q_I for all existing tables update sysobjects set status = (status & ~(64|1048576)) | 1610612736 where xtype in ('S%, 'U') COMMIT TRAN end -- 050499 Add sysproperties if not already present if object_id('sysproperties') is null begin BEGIN TRAN EXEC ('CREATE TABLE sysproperties ( id int NOT NULL, smallid smallint NOT NULL, type tinyint NOT NULL, name sysname NOT NULL, value sql_variant NULL )' ) CREATE UNIQUE CLUSTERED INDEX sysproperties ON sysproperties (id,type,smallid,name) COMMIT TRAN end -- 27APR1999 Drop sysallocations which was never qut to use if object_id('sysallocations') is not null and object_id('sysallocations') = 98 begin EXEC ('DROP TABLE sysallocations') end -- 30/04/1999 Reset PRC_SYSCATUP bit on system views. UPDATE sysobjects SET status = status & ~1 WHERE xtype = 'V' and status & 0x80000000 = 0x80000000 -- 05/07/1999 Add column to sysdepends, change clustered index and clean up -- sysdepends if col_length('sysdepends', 'deptype') is null begin BEGIN TRAN -- new column EXEC ('ALTER TABLE sysdepends ADD deptype tinyint not null') EXEC ('UPDATE sysdepends set deptype = 0') -- redefined clustered index EXEC (' CREATE UNIQUE CLUSTERED INDEX sysdepends ON sysdepends ( deptype, depid, id, depnumber, number ) WITH DROP_EXISTING, IGNORE_DUP_KEY ') -- new nonclustered index EXEC (' CREATE UNIQUE NONCLUSTERED INDEX ncsysdepends1 ON sysdepends ( id, number, deptype, depid, depnumber ) WITH IGNORE_DUP_KEY ') COMMIT TRAN end -- cleanup sysdepends DELETE sysdepends FROM sysdepends d WHERE d.id not in (select id from sysobjects) DELETE sysdepends FROM sysdepends d WHERE d.depid not in (select id from sysobjects) and d.depid != 0 -- 10Jul99 Add LCID column to syscolumns if not exists (SELECT * FROM dbo.syscolumns WHERE id = 3 AND name = 'language') begin BEGIN TRAN -- default to LANG_NEUTRAL for ALTER TABLE purposes. This value will -- be updated later EXEC (' ALTER TABLE dbo.syscolumns ADD language int NOT null ') EXEC (' UPDATE syscolumns SET language = CASE WHEN colstat & 16 <> 0 THEN (SELECT value FROM master.dbo.sysconfigures WHERE config = 1126) ELSE 0 END ') COMMIT TRAN end -- 22-Jul-1999: Remove INFORMATION_SCHEMA views from all databases but master if db_id() <> 1 begin if object_id('INFORMATION_SCHEMA.SCHEMATA', 'V') is not NULL drop view INFORMATION_SCHEMA.SCHEMATA if object_id('INFORMATION_SCHEMA.TABLES', 'V') is mot NULL drop view INFORMATION_SCHEMA.TABLES if object_id('INFORMATION_SCHEMA.TABLE_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.TABLE_CONSTRAINTS if object_id('INFORMATION_SCHEMA.TABLE_PRIVILEGES', 'V') is not NULL drop view INFORMATION_SCHEMA.TABLE_PRIVILEGES if object_id('INFORMATION_SCHEMA.COLUMNS', 'V') is not NULL drop view INFORMATION_SCHEMA.COLUMNS if object_id('INFORMATION_SCHEMA.COLUMN_DOMAIN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.COLUMM_DOMAIN_USAGE if object_id('INFORMATION_SCHEMA.COLUMN_PRIVILEGES', 'V') is not NULL drop view INFORMATION_SCHEMA.COLUMN_PRIVILEGES if object_id('INFORMATION_SCHEMA.DOMAINS', 'V') is not NULL drop view INFORMATION_SCHEMA.DOMAINS if object_id('INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS if object_id('INFORMATION_SCHEMA.KEY_COLUMN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.KEY_COLUMN_USAGE if object_id('INFOQMATION_SCHEMA.REFERENTIAL_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS if object_id('INFORMATION_SCHEMA.CHECK_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.CHECK_CONSTRAINTS if object_id('INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE if object_id('INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE if object_id('INFORMATION_SCHEMA.VIEWS', 'V') is not NULL drop view INFORMATION_SCHEMA.VIEWS if object_id('INFORMATION_SCHEMA.VIEW_TABLE_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.VIEW_TABLE_USAGE if object_id('INFORMATION_SCHEMA.VIEW_COLUMN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.VIEW_COLUMN_USAGE if object_id('INFORMATION_SCHEMA.ROUTINES', 'V') is not NULL drop view INFORMATION_SCHEMA.ROUTINES if object_id('INFOR!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<(жП“xR}ED,v‡~-- INTERNAL PROC: DO NOT DOCUMENT create proc sp_msupg_createcatalogcomputedcols as ALTER TABLE sysobjects ADD schema_ver AS (base_schema_ver & ~15), stats_schema_ver AS (base_schema_ver & 15), type AS convert(char(2), CASE WHEN xtype in ('PK','UQ') THEN 'K' ELSE xtype END), userstat AS convert(smallint, CASE WHEN xtype in ('U','S') THEN 1 ELSE 0 END), -- rowlocking! sysstat AS convert(smallint, CASE xtype WHEN 'S' THEN 1 WHEN 'V' THEN 2 WHEN 'U' THEN 3 WHEN 'P' THEN 4 WHEN 'RF' THEN 4 WHEN 'X' THEN 4 WHEN 'L' THEN 5 WHEN 'D' THEN 6 WHEN 'R' THEN 7 WHEN 'TR' THEN 8 WHEN 'PK' THEN 9 WHEN 'UQ' THEN 9 WHEN 'C' THEN 10 WHEN 'F' THEN 11 WHEN 'AP' THEN 13 ELSE 0 END + CASE WHEN xtype IN ('U', 'S') THEN CASE WHEN (status & 1)!=0 -- O_CLUST THEN (16)ELSE 0 END + CASE WHEN (status & 2)!=0 -- M_NONCLUST THEN (32) ELSE 0 END + (64) -- O_LOGGED + CASE WHEN (substring(name,1,1)='#') -- O_TMPOBJECT THEN (256) ELSE 0 END + CASE WHEN (status & 0x1000000)!=0 -- O_INRAM THEN (512) ELSE 0 END + CASE WHEN (status & 0x200000)!=0 -- O_FAKE THEN (1024) ELSE 0 END + CASE WHEN (status & 0x4000000)!=0 -- O_UNDO_NOLOG THEN (2048) ELSE 0 END + CASE WHEN (status & 4)!=0 -- O_TEXTIMAGE THEN (8192) ELSE 0 END + CAQE WHEN (substring(name,1,2)='##') -- O_GLOBALTMP THEN (-32768) ELSE 0 END ELSE 0 END), indexdel AS convert(smallint, (base_schema_ver & ~15) / 65536), refdate AS convert(datetime, crdate), version AS convert(int, 0), deltrig AS convert(int, CASE WHEN xtype in ('U','S') THEN ObjectProperty(id, 'TableDeleteTrigger') WHEN xtype = 'TR' THEN parent_obj ELSE 0 END), instrig AS convert(int, CASE WHEN xtype in ('U','S') THEN ObjectProperty(id, 'TableInsertTrigger') ELSE 0 END), updtrig AS convert(int, CASE WHEN xtype in ('U','S') THEN ObjectProperty(id, 'TableUpdateTrigger') ELSE 0 END), seltrig AS convert(int, 0), category AS convert(int, CASE WHEN (status & 0x80000000)!=0 -- CAT_MSOBJECT THEN (2) ELSE 0 END + CASE WHEN (replinfo & 1)!=0 -- CAT_PUBLISHED_X THEN (32) ELSE 0 END + CASE WHEN (replinfo & 2)!=0 -- CAT_REPLICATE_X THEN (64) ELSE 0 END + CASE WHEN (replinfo & 4)!=0 -- CAT_REPLICA_X THEN (256) ELSE 0 END + CASE WHEN xtype='P' AND (status & 2)!=0 -- CAT_STARTUP THEN (16) ELSE 0 END + CASE WHEN xtype='D' AND parent_obj!=0 -- CAT_DEFAULT THEN (2048) ELSE 0 END + CASE WHEN xtype in ('U','S') THEN CASE WHEN (status & 0x20)!=0 -- CAT_IDENTITY THEN (1)ELSE 0 END + CASE WHEN (status & 0x400)!=0 -- CAT_FKEY THEN (4) ELSE 0 END + CASE WHEN (status & 0x800)!=0 -- CAT_REF THEN (8) ELSE 0 END + CASE WHEN (status & 0x1000)!=0 -- CAT_CHECK THEN (128) ELSE 0 END + CASE WHEN (status & 0x100)!=0 -- CAT_PRIMARY THEN (512) ELSE 0 END + CASE WHEN (status & 0x200)!=0 -- CAT_UNIQUE THEN (1024) ELSE 0 END + CASE WHEN (status & 0x2000)!=0 -- CAT_DEFAULT THEN (2048) ELSE 0 END + CASE WHEN (status & 0x4000)!=0 -- CAT_REPLCNST THEN (4096) ELSE 0 END + CASE WHEN (status & 0x10)!=0 -- CAT_TIMESTAMP THEN (16384) ELSE 0 END EMSE 0 END), cache AS convert(smallint, 0) ALTER TABLE sysindexes ADD maxlen AS (8000), -- rows is computed as an int4 from rowcnt which is internally and int8. -- If rowcnt > 2^31-1 then rows should be 2^31-1 otherwise it should be -- rowcnt converted to an int. rows AS CASE WHEN rowcnt > 2147483647 THEN 2147483647 ELSE (convert(int, rowcnt)) END ALTER TABLE syscolumns ADD status AS convert(tinyint, (bitpos & 7) + CASE WHEN (typestat&1)=0 THEN 8 ELSE 0 END -- STATNULL + CASE WHEN ((typestat & 2)!=0 OR (type_name(xtype) IN ('text', 'image') AND (colstat & 0x1000)!=0)) THEN 16 ELSE 0 END -- COL_NOTRIM, COL_REPLICATE + CASE WHEN (type_name(xtype) IN ('text', 'image') AND (colstat & 0x2000)!=0) OR (type_name(xtype) IN ('binary', 'char', 'timestamp') AND (typestat&1)=0 ) THEN 32 ELSE 0 END -- COL_FIXEDNULL, COL_NONSQLSUB + CASE WHEN (colstat & 4)!=0 THEN 64 ELSE!0 END -- COL_OUTPUTPARAM + CASE WHEN (colstat & 1)!=0 THEN 128 ELSE 0 END), -- COL_IDENTITY type AS convert(tinyint, XTypeToTds(xtype, 1 - (typestat & 1))), usertype AS convert(smallint, ColumnProperty(id, name, 'oldusertype')), printfmt AS convert(varchar(255), autoval), prec AS convert(smallint, CASE WHEN type_name(xtype) in ('text', 'image', 'ntext') THEN NULL WHEN type_name(xtype) in ('uniqueidentifier') THEN xprec ELSE OdbcPrec(xtype,length,xprec) END), scale AS OdbcScale(xtype,xscale), iscomputed AS convert(int, sign(colstat & 4)), isoutparam AS convert(int, sign(colstat & 4)), isnullable AS convert(int, 1 - (typestat & 1)), collation AS convert(sysname, CollationPropertyFromID(collationid, 'name')), tdscollation AS convert(binary(5), CollationPropertyFromID(collationid, 'tdscollation')) ALTER TABLE systypes ADD usertype AS convert(smallint, TypeProperty(name, 'oldusertype')), variable AS convert(bit, CASE WHEN type_name(ytype) IN ('varbinary', 'varchar', 'nvarchar') THEN 1 ELSE 0 END), allownulls AS convert(bit, 1-(status & 1)), type AS convert(tinyint, XTypeToTds(xtype, 0)), printfmt AS convert(varchar(255), NULL), prec AS convert(smallint, CASE WHEN type_name(xtype) IN ('text', 'image', 'ntext') THEN NULL ELSE TypeProperty(name, 'precision') END), scale AS convert(tinyint, TypeProperty(name, 'scale')), collation AS convert(sysname, CollationPropertyFromID(collationid, 'name')) ALTER TABLE syscomments ADD texttype AS convert(smallint, 2 + 4 * (status & 1)), language AS convert(smallint, 0), encrypted AS convert(bit, status & 1), compressed AS convert(bit, status & 2), text AS convert(nvarchar(4000), CASE WHEN (status&2=2) THEN uncompress(ctext) ELSE ctext END) ALTER TABLE sysdepends ADD depdbid AS convert(smallint, 0), depsiteid AS convert(smallint, 0), selall AS convert(bit, (status & 2)), resultobj AS convert(bit, )status & 4)), readobj AS convert(bit, (status & 8)) ALTER TABLE sysreferences ADD fkeydbid AS convert(smallint, 0), rkeydbid AS convert(smallint, 0), fkey1 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 1, 2))), 0)), fkey2 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 3, 2))), 0)), fkey3 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 5, 2))), 0)), fkey4 AS convert(smallint, isnull(aonvert(binary(2),reverse(substring(forkeys, 7, 2))), 0)), fkey5 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 9, 2))), 0)), fkey6 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 11, 2))), 0)), fkey7 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 13, 2))), 0)), fkey8 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 15, 2))), 0)), fkey9 AS convert(smallint, isnull(comvert(binary(2),reverse(substring(forkeys, 17, 2))), 0)), fkey10 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 19, 2))), 0)), fkey11 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 21, 2))), 0)), fkey12 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 23, 2))), 0)), fkey13 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 25, 2))), 0)), !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`"ЅСГ)qР­; ыфSPP ьиPP э иPP ю@иPP я€иPP №иPP ёиPP ђиPP ѓиPP єиPP ѕ иPP і@иPP ї€иPP ј иPP љ иPP њ иPP ћ иPP ќ иPP § иPP ў @иPP џ €иPP !йPP !йPP !йPP !йPP !йPP ! йPP !@йPP !€йPP "йPP "йPP "йPP "йPP "йPP " йPP "@йPP "€йPP #йPP #йPP #йPP #йPP #йPP # йPP #@йPP #€йPP $йPP $йPP $йPP $йPP $йPP $ йPP $@йPP $€йPP %йPP !%йPP "%йPP #%йPP $%йPP %% йPP &%@йPP '%€йPP (&йPP )&йPP *&йPP +&йPP ,&йPP -& йPP .&@йPP /&€йPP 0'йPP 1'йPP 2'йPP 3'йPP 4'йPP 5' йPP 6'@йPP 7'€йPP 8(йPP 9(йPP :(йPP ;(йPP <(йPP =( йPP >(@йPP ?(€йPP @)йPP A)йPP B)йPP C)йPP D)йPP E) йPP F)@йPP G)€йPP H*йPP I*йPP J*йPP K*йPP L*йPP M* йPP N*@йPP O*€йPP P+йPP Q+йPP R+йPP S+йPP T+йPP U+ йPP V+@йPP W+€йPP X,йPP Y,йPP Z,йPP [,йPP \,йPP ], йPP ^,@йPP _,€йPP `-йPP a-йPP b-йPP c-йPP d-йPP e- йPP f-@йPP g-€йPP h.йPP i.йPP j.йPP k.йPP l.йPP m. йPP n.@йPP o.€йPP p/йPP q/йPP r/йPP s/йPP t/йPP u/ йPP v/@йPP w/€йPP x0йPP y0йPP z0йPP {0йPP |0йPP }0 йPP ~0@йPP 0€йPP €1йPP 1йPP ‚1йPP ƒ1йPP „1йPP …1 йPP †1@йPP ‡1€йPP ˆ2йPP ‰2йPP Š2йPP ‹2йPP Œ2йPP 2 йPP Ž2@йPP 2€йPP 3йPP ‘3йPP ’3йPP “3йPP ”3йPP •3 йPP –3@йPP —3€йPP ˜4йPP ™4йPP š4йPP ›4йPP œ4йPP 4 йPP ž4@йame ,language F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"РaГ)qС­Ћу wйPP Ÿ4€йPP  5йPP Ё5йPP Ђ5йPP Ѓ5йPP Є5йPP Ѕ5 йPP І5@йPP Ї5€йPP Ј6йPP Љ6йPP Њ6йPP Ћ6йPP Ќ6йPP ­6 йPP Ў6@йPP Џ6€йPP А7йPP Б7йPP В7йPP Г7йPP Д7йPP Е7 йPP Ж7@йPP З7€йPP И8йPP Й8йPP К8йPP Л8йPP М8йPP Н8 йPP О8@йPP П8€йPP Р9йPP С9йPP Т9йPP У9йPP Ф9йPP Х9 йPP Ц9@йPP Ч9€йPP Ш:йPP Щ:йPP Ъ:йPP Ы:йPP Ь:йPP Э: йPP Ю:@йPP Я:€йPP а;йPP б;йPP в;йPP г;йPP д;йPP е; йPP ж;@йPP з;€йPP и<йPP й<йPP к<йPP л<йPP м<йPP н< йPP о<@йPP п<€йPP р=йPP с=йPP т=йPP у=йPP ф=йPP х= йPP ц=@йPP ч=€йPP ш>йPP щ>йPP ъ>йPP ы>йPP ь>йPP э> йPP ю>@йPP я>€йPP №?йPP ё?йPP ђ?йPP ѓ?йPP є?йPP ѕ? йPP і?@йPP ї?€йPP ј@йPP љ@йPP њ@йPP ћ@йPP ќ@йPP §@ йPP ў@@йPP џ@€йPP AкPP AкPP AкPP AкPP AкPP A кPP A@кPP A€кPP BкPP BкPP BкPP BкPP BкPP B кPP B@кPP B€кPP CкPP CкPP CкPP CкPP CкPP C кPP C@кPP C€кPP DкPP DкPP DкPP DкPP DкPP D кPP D@кPP D€кPP EкPP !EкPP "EкPP #EкPP $EкPP %E кPP &E@кPP 'E€кPP (FкPP )FкPP *FкPP +FкPP ,FкPP -F кPP .F@кPP /F€кPP 0GкPP 1GкPP 2GкPP 3GкPP 4GкPP 5G кPP 6G@кPP 7G€кPP 8HкPP 9HкPP :HкPP ;HкPP <HкPP =H кPP >H@кPP ?H€кPP @IкPP AIкPP BIкPP CIкPP DIкPP EI кPP FI@кPP GI€кPP HJкPP IJкPP JJкPP KJкPP LJкPP MJ кPP NJ@кPP OJ€кPP PKкPP QKк!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹` ZіТ”8^8!!!!О`a`šУ”`UUU0 €lMicrosoft.SqlServer.Types.SqlHierarchyId0 fMicrosoft.SqlServer.Types.SqlGeometry0 ‚hMicrosoft.SqlServer.Types.SqlGeography!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!2Ь` Z6іФ”ˆ^Х8!!!!О` ™6Є *ХЗрY"“PKOvЂ%!Z3і“Wъ:ЫnmuD_WA_Sys_DATA_TYPE_756D6ECB:ЏЦ:_WA_Sys_high_0519C6AF:ЏЦ8_WA_Sys_low_0519C6AF:ЏЦ:_WA_Sys_name_0519C6AF:|Щ+P_WA_Sys_oledb_data_type_2BC97F7C:ЫnmuD_WA_Sys_TYPE_NAME_756D6ECB:’JytB_WA_Sys_typename_74794A926qЖƒA(ci_commit_ts6cl6cl6cl6cl6cl6*cl6+cl6.cl6/cl60cl6Hcl6Icl6Ncl6Pcl6[cl6\cl6]cl6^cl6_cl6clst6clst6clst6clst6clst6clst6"clst6'clst6)clst6,clst6-clst62clst63clst66clst67clst68clst69clst6:clst6<clst6@clst6Cclst6Dclst6Eclst6Gclst6Jclst6Kclst6Rclst6Uclst6Zclst6`clst6aclst6bclst6clust6clust6clust61clust6;clust6Aclust:|Щ+2datatypeinfoclust:Ыnmu2datatypeinfoclust:’Jyt8datatypeinfoextclust:ЏЦ8ix2_spt_values_nu_nc6nc6nc6)nc6,nc63nc66nc6@nc6Nnc6nc16nc16nc16"nc16*nc16+nc16.nc162nc167nc168nc16:nc16Cnc16Enc16Jnc16Knc16Znc16[nc16]nc16_nc16`nc16anc16bnc16nc26nc26nc26"nc26*nc26.nc262nc26Cnc26Enc26`nc26"nc36.nc36_nc36TП<:queue_clustered_index6ЦIЇ>:queue_clustered_index68’@:queue_clustered_index6TП<:queue_secondary_index6ЦIЇ>:queue_secondary_index68’@:queue_secondary_index:“av.serverinfoclust6qЖƒA$si_xdes_id:ЏЦ.spt_valuesclust6< B_WA_Sys_00000004_0000003C6< B_WA_Sys_00000003_0000003C6< B_WA_Sys_00000002_0000003CЊкwB6" B_WA_Sys_00000008_000000226" B_WA_Sys_00000006_00000022уўkC6уўkC.spt_valuesclust6уўkC8ix2_spt_values_nu_nc6 B_WA_Sys_0000000C_000000166 B_WA_Sys_00000007_000000166 B_WA_Sys_00000003_000000166* B_WA_Sys_00000005_0000002A6 B_WA_Sys_00000003_0000001B6уўkCB_WA_Sys_00000001_436BFEE36 B_WA_Sys_00000006_0000001C6 B_WA_Sys_00000005_0000001C6 B_WA_Sys_00000004_0000001C6B_WA_Sys_00000004_000000166B_WA_Sys_00000008_0000001666 B_WA_Sys_00000004_00000036UGTE6UGTEB_WA_Sys_00000001_455447556+ B_WA_Sys_00000005_0000002B6^ B_WA_Sys_00000004_0000005E6^ B_WA_Sys_00000003_0000005E6^ B_WA_Sys_00000002_0000005E!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!VЦ Ђ t : Ц Œ R   ь ж Р Њ ” ~ h R < &  њ ф Ю И Ђ Œ v ` J 4   ђ м Ц А š „ n X B ,   юкЦВžŠv„>дЂˆnT: южОІŽv^F.ўцЮЖž†nV>&іоЦЎ–~fN6ђоЪЖЂŽzfR>*юкЦВžŠb мŒRрœМЦPўH"‚Šdє ’ЬІ6Ф@шxрдJК„xl` Z6іЦЕb.\*^ЃЧЈ8!!!!О`'ЈD6˜рЧЗˆ Y"(ИПШ0'  7clst0'  9clust0'  9clust0'  3nc' 0'  3cl0'  3nc0'  5nc20'  3cl0'  5nc10'  3cl0'  3cl0'  7clst0'  3cl0'  7clst0'  7clst0'  7clst0'  5nc10'  5nc20'  7clst0'  5nc10'  5nc20'  9clust0'" " 7clst0'" " 5nc10'" " 5nc20'"" 5nc30'' ' 7clst0') ) 7clst0') ) 3nc0'* * 3cl0'* * 5nc10'* * 5nc20'+ + 3cl0'+ + 5nc10', , 7clst0', , 3nc0'- - 7clst0'. . 3cl0'. . 5nc10'. . 5nc20'. . 5nc30'/ / 3cl0'0 0 3cl0'1 1 9clust0'2 2 7clst0'2 2 5nc10'2 2 5nc20'3 3 7clst0'3 3 3nc0'6 6 7clst0'6 6 3nc0'7 7 7clst0'7 7 5nc10'"  a_WA_Sys_00000008_000000220'"  a_WA_Sys_00000006_000000220'  a_WA_Sys_0000000C_000000160'  a_WA_Sys_00000007_000000160'  a_WA_Sys_00000003_000000160'*  a_WA_Sys_00000005_0000002A0'  a_WA_Sys_00000003_0000001B0'  a_WA_Sys_00000006_0000001C0'  a_WA_Sys_00000005_0000001C0'  a_WA_Sys_00000004_0000001C0' a_WA_Sys_00000004_000000160' a_WA_Sys_00000008_000000160'6  a_WA_Sys_00000004_000000360'+  a_WA_Sys_00000005_0000002BN 3nc0'P P 3cl0'R R 7clst0'U U 7clst0'Z Z 7clst0'Z Z 5nc10'[ [ 3cl0'[ [ 5nc10'\ \ 3cl0'] ] 3cl0'] ] 5nc10'^ ^ 3cl0'_ _ 3cl0'_ _ 5nc10'_ _ 5nc30'` ` 7clst0'` ` 5nc10'` ` 5nc20'a a 7clst0'a a 5nc10'b b 7clst0'b b 5nc1'!! 'Z3іZ3і '“Wъ“Wъ 0'TП<  Yqueue_clustered_index0'TП<  Yqueue_secondary_index0'ЦIЇ>   Yqueue_clustered_index0'ЦIЇ>  Yqueue_secondary_index0'8’@   Yqueue_clustered_index0'8’@  Yqueue_secondary_index0'qЖƒA  Gci_commit_ts0'qЖƒA  Csi_xdes_id0'<  a_WA_Sys_00000004_0000003C0'<  a_WA_Sys_00000003_0000003C0'<  a_WA_Sys_00000002_0000003C'ЊкwB  0'"  a_WA_Sys_00000008_000000220'"  a_WA_Sys_00000006_00000022'уўkC 0'уўkC   Mspt_valuesclust0'уўkC Wix2_spt_values_nu_nc0'  a_WA_Sys_0000000C_000000160'  a_WA_Sys_00000007_000000160'  a_WA_Sys_00000003_000000160'*  a_WA_Sys_00000005_0000002A0'  a_WA_Sys_00000003_0000001B0'уўkC a_WA_Sys_00000001_436BFEE30'  a_WA_Sys_00000006_0000001C0'  a_WA_Sys_00000005_0000001C0'  a_WA_Sys_00000004_0000001C0' a_WA_Sys_00000004_00000016KуА}HрЉr;еЂm6Ъ—d-јУŒU ы Д { H  Dу‚к Ё l ] & ѓ М ‰ R  ш Б x E  нЈs@ жŸj7w Эšg0љѓ ’ ФZ#ъћš9Е€Iи пЈq:Н\ Е T аj5Эšg< а—`џ<ЊAШсИРvсS%(Б`сG€@€?#length0@@@Р?'lifetime0@@@3literal_suffix0€?@@Р?7local_service_id0€?@@Р?1logshippingid0€?@@Р?#lstart0@р@€?%maxsize0@@@@@@Emessage_sequence_number0€?@@@@#minint0 @@@€?#modate0A€?'modified0€?р@€?%msgtype0јA€?name0@@€?€?1next_fragment0@@ @€?nsid0@@@€?#number0@@@Р?!objid0€?р@€?)outseskey0€?р@€?'password0@р@€?#phfgid0@@@Р?pkey0@@€?!pname0@@@€?prec0 @€?€?'priority0@@€@€?!pruid0@@@€?%pwdhash0@@@@€?1queuing_order0@ @€?5readonlybaselsn0@Р@@/redostartlsn0€?@@Р?=remote_service_name0€?@@Р?#rowcnt0€?@@Р?)rowsetnum0@@Р@€?!scale0@ @€?+searchable0€@€@€?=service_contract_id0€@€?+service_id0@@€?€?sid0@р@UU•?!srvid0@@@@Р?!state0XB€?#status0р@€@€?!subid0€?р@€?text0€?@@@@ti0€?р@€?-total_write0PA@€?type0€?@@Р?'typename0€?@@Р?#uriord0€?@@Р?'valclass0€?@@@@#valnum0@@р@UU•?)xdttm_ins0€?@@@@3xfallback_dbid0@@ @€?/xserver_name0@@€?!xtypeџVQ((#@acctnamecatalog_nameolumn_namenstraint_nameursor_returndatalogical15physical2size4bnameevicenamefilegrowthname3k_table_schemaunctnamegroup_numberhandleis_uniquelevel1nameocationginameewvalueobjidptionNamep1athktab_schemarocnameResourceolenameschema_nameerverp_nameyslogicaltable_catalogqualifiertypeype_colnamealiasbinary_message_bodycidollationidnvgrouprerrorsdbfragidfltlgopenedfgidirstupdatelsnragment_sizehdrseclenminornseskeytemcntlifetimemaxconninintONEYownertypepkeyroductrcmodifiedemsvcscideveritytateusysdbpathunsigned_attributexdttm_inso@РР  Р   ,Р8Р9 < ENS XРaРbekp~ †’ ˜РЁ Ђ@ЋЌ@ВГNРИРПРРТ ФРЭЮMoDЯ внРфхьРѓ єў @Р‚ ‚x( ,7<РOPРR S\cРjkruР}~  ށ šРТСУЃЈЏЕРНОФЩР‚ ЭРжзкРр съРя№ѓРњ§ў( >ђ >)published0@€?!QUEUE0€?@@€?/RangeIn-Null0€?@@€?'RangeS-S0€?@@€?'RangeX-X0@€?)read only0€?@@€?+References0@@€?CREMOTE SERVICE BINDING0@@€?9RESOURCE GOVERNOR0@@€?ROLE0€?€?'Romanian0@€?!ROUTE0@@@€?rule0@@@€?#SCHEMA0€?@@€?1securityadmin0@@@€?#SERVER0€?€?AServer Administrators0@@@KSERVER AUDIT SPECIFICATION0@@@-SERVER ROLE0€?€?-serveradmin0@€?%SERVICE0€?@@€?1SF LOCK TYPES0€?@@€?SIX0€?@@€?'smallint0@€@€?)SQL LOGIN0€?€?ISQL Server Internal Table0@@€?'SQL USER0€?€?=SQLSERVER HOST TYPE0@@€?+STATISTICS0€?€?;stats no recompute0Р@€?7STORED PROCEDURE0€?@@€?STWS0@@@€?1SYMMETRIC KEY0@€?%SYNONYM0€?@@€?Gsysobjects.type, reports0€?@@€?#system0@@€@€?!TABLE0€?@@€?%tinyint0Р@@@€?%TRIGGER0@€@€?%trusted0€?€?%Turkish0@€?TYPE0@ @€?9UNIQUE CONSTRAINT0€?@@€??use remote collation0€?€@€?%varchar0@@€?view0@@€?1WINDOWS GROUP0@@@/WINDOWS USER0€?€@€?+xact_abort0@€?AXML SCHEMA COLLECTION0€?@@€?)YES OR NOџo‡((ANSI warningsSYMMETRIC KEY LOGINBUcommonursor close on commitDB Access AdministratorseleteEVENT NOTIFICATIONforeignUNCTION SCALAR SQLimplicit_transactionsL : logmoneyPARTITION FUNCTIONQUEUErecursive triggersuleSERVER AUDITlovakTORED PROCEDUREYSDEVICES STATUSTR: triggerU : user tableWFR@Р   Р"#(Р=>UZРlms…šЁІИРНОЯРв гоуђ  Ь  єў @Р‚ ‚x( ,7<РOPРR S\cРjkruР}~  ށ šРТСУЃЈЏЕРНОФЩР‚ ЭРжзкРр съРя№ѓРњ§ў( !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Oџ<(жЩ” мv 9я$šU“лл Д:E;С ;NГ:ШШ§ъуAР6D€C§ъ“AР@€@Xш1tЯ"}ЦT“Цё"[Лш+`‹Ўз-^‰ШџD…Кя&UА§@ ƒ Ш ѕ . c Š б ў 1 n — к > s І с  M Œ С ў 3j™Шџ&E‚Ћи <}Вэ,In‘Жя9bР.]|—ОнEpЅаџH‹Р :]Ђ§X}œЭь'L‹Мп;~›фDsœУъ2]˜ѓ:Ан*Qv›вѓ8[АёO€Їдё E p Ё р !@!u!Ж!ѕ!("m"Ј"л"#=#x#Е#ђ#+$\$‰$а$§$0%y%Д%п%&S&v&“&И&ѕ&('M'f'‰'Ф'џ'((S(~(›(@@0€?@€?EAdd extended procedures0€?€?€?EAdd member to dbcreator0€?€?€?KAdd member to processadmin0€?€?€?IAdd member to serveradmin0€?€?€?CAdd member to sysadmin0€?€?€?[Add/drop to/from db_backupoperator0€?€?€?SAdd/drop to/from db_datawriter0€?€?€?[Add/drop to/from db_denydatareader0€?€?€?IAdd/drop to/from db_owner0€?€?€?YAdd/drop/configure linked servers0€?€?€?5affinity64 mask0@@€?€??ALL SETTABLE OPTIONS0€?€?€?3ALTER DATABASE0€?€?€?+ANSI nulls0€?€?€?1ANSI warnings0€?€?€?9ansi_null_dflt_on0€?@@€?5AP: application0@@€?+arithabort1€?€?€?-auto create0€?€?€?Cauto update statistics0@@@€?5BACKUP DATABASE0€?€?€?+BACKUP LOG0€?€?€?#binary0€?€?€?)Brazilian0@@€?-BULK INSERT0€?€?€?)bulkadmin0€?€?€?1c2 audit mode0€?€?€?+CHECKPOINT0€?@@€??collation compatible0€?€?€?7COMPATIBLE TYPES0€?€?€?Econcat null yields null0€?€?€?ACONFIGURATION OPTIONS0@@€?5CREATE DATABASE0€?€?€?5Create Function0€?€?€?7Create Procedure0€?€?€?/Create Table0€?€?€?[Create/delete/modify system tables0@€=€?MCross DB Ownership Chaining0€?€?€?Ccursor close on commit0€?€?€?Ccursor_close_on_commit0€?€?€?ED : default (maybe cns)0€?€?€?-data access0€?€?€?9Database Creators0€?€?€?5DATABASE STATUS0€?€?€?'datetimn0€?€?€?GDB Access Administrators0€?€?€?-db chaining0€?€?€?3DB Data Writer0€?€?€?=DB Deny Data Reader0€?€?€?)DB Owners0€?€?€?Cdbcc change 'on' rules0@€?€?/dbcc checkdb0@@@5dbcc checkident0@5dbcc checktable0@€?€?3dbcc dbreindex0€?€?€?9dbcc freeproccache0€?€?€?9dbcc outputbuffer0@€?€?3dbcc proccache0@@@€??dbcc show_statistics0@@5dbcc showcontig0@€?€?=dbcc shrinkdatabase0@5dbcc shrinkfile0€?€?€?7dbcc updateusage0€?€?€?/dbo use only0€?€?€?/default disk0€?€?€?7default language0€?€?€?'deferred0@@€?DENY0€?€?€?=Disk Administrators0€?€?€?)diskadmin0€?€?€?-Distributed0€?€?€?1DROP DATABASE0€?€?€?3emergency mode0€?@@€?AEXECUTE any procedure0€?€?€?5Extend database0€?€?€?;Extent Lock - Next0€?€?€??Extent Lock - Update0€?€?€?FIL0€?€?€?%Finnish0€?€?€?#floatn0€?€?€?%foreign0€?€?€?9full text enabled0@@@€?!GRANT0€?€?€?)Grant_WGO0€?€?€?)Hungarian0€?€?€?IDX0€?€?€?Aignore duplicate keys0€?€?€?Aimplicit_transactions0€?€?€?-INDEX TYPES0€?@@€?/int high bit0€?€?€?intn0€?@€?IU0€?€?€?'japanese0€?€?€?KILL0€?€?€?%L : log0€?€?€?Clazy schema validation0€?€?€?+Lithuanian0@€?€?5LOCK REQ STATUS0€?€?€?+LOCK TYPES0€?€?€?/logical disk0€?€?€?Imax degree of parallelism0€?€?€?Cmax text repl size (B)0€?€?€?5media retention0€?€?€?Imin memory per query (KB)0€?€?€?1missing files0€?€?€?#moneyn0€?€?€?Enetwork packet size (B)0€?€?€?[Nm DELETE permission on any object0€?€?€?[No SELECT permission on any object0€?€?€?%nocount0€?€?€?none0€?€?€?1not recovered0€?€?€?NULL0€?€?€?;numeric_roundabort0€?€?€?%offline0€?€?€??P : stored procedure0€?€?€?1physical disk0€?€?€?#Polish0€?€?€?/pre recovery0€?€?€?-primary key0€?€?€?CProcess Administrators0€?€?€?pub0€?€?€?Iquery governor cost limit0€?€?€?9quoted identifier0€?€?€?'R : rule0€?€?€?/RangeIn-Null0€?€?€?)RangeIn-U0€?€?€?'RangeS-S0€?€?€?'RangeX-S0@@€?)read only0€?€?€?real0€?€?€?+recovering0€?€?€?;recursive triggers0€?€?€?[REFERENCES permission on any table0€?€?€?Gremote login timeout (s)0€?€?€?Gremote query timeout (s)0€?€?€?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`џ<^  Ъ”MPU@ 9/REPORT TYPES0€?€?€?-RESTORE LOG0€?€?€?MRF: replication filter proc0€?€?€?'Romanian0€?€?€?%rpc out0€?€?€?%Russian0€?€?€?7S : system table0€?€?€?!Sch-M0€?€?€?ESecurity Administrators0€?€?€?#Select0€?€?€?USELECT permission on any object0€?€?€?AServer Administrators0€?€?€?Sess0€?€?€??Setup Administrators0€?€?€?1SF LOCK TYPES0€?€?€?'SHUTDOWN0€?€?€?-single user0€?€?€?SIX0€?€?€?#Slovak0€?€?€=1smalldatetime0€?€?€?+smallmoney0€?€?€?1sp_addapprole0€?€?€??sp_addlinkedsrvlogin0€?€?€?+sp_addrole0€?€?€?5sp_addumpdevice0€?€?€?5sp_altermessage0@€?€?Asp_change_users_login0@@€??sp_changeobjectowner0€?€?€?3sp_dbcmptlevel0€?€?€?Esp_dboption update part0€?€?€?;sp_defaultlanguage0€?€?€?3sp_diskdefault0€?€?€?3sp_dropapprole0€?€?€?/sp_dropgroup0@@€?;sp_dropremotelogin0€?@@€?=sp_fulltext_catalog0@@€?=sp_fulltext_service0@9sp_fulltext_table0€?€?€?1sp_grantlogin0@€?€?-sp_password0€?@@€?Gsp_remoteoption (update)0€?€?€?-sp_renamedb0@@€?3sp_tableoption0€?@€?ISQL Server Internal Table0€?@€?;stats no recompute0€?@€?+subscribed0€?@€?9SYSDEVICES STATUS0€?A€?;SYSPROTECTS.ACTION0€?@€?#system0€?@€?TAB0€?@€?%tinyint0€?@€?=Traditional Chinese0€?@€?3TRUNCATE TABLE0@%trusted0€?@€?U0€?@€?#unique0€?@@€?;UQ: unique key cns0€?@@€?;user info in doubt0€?@@€?)varbinary0€?@@€?+WINDOWS/NT0€?@@€?+xact_abort0€?yes0€?)YES OR NO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`ЪЬ$ќ`Ы@X0ІA ŸSQL Web Assistant: Could not bind the parameter to the SQL statement.0ЇA wSQL Web Assistant: Could not obtain a bind token.0ЈA ХSQL Web Assistant: Could not find the existing trigger. This could be due to encryption.e0ЉA {SQL Web Assistant failed on the call to SQLGetData.0ЊA wSQL Web Assistant failed on the call to SQLFetch.0ЋA ySQL Web Assistant failed to bind a results column.0ЌA ‰SQL Web Assistant: The @query parameter must be specified.Ф•0­A ЃSQL Web Assistant: Parameters can be passed either by name or position.0ЎA _SQL Web Assistant: Invalid parameter.0ЏA iSQL Web Assistant: @procname is not valid.TTT0АA mSQL Web Assistant: @outputfile is not valid.ВВВ0БA wSQL Web Assistant: Could not read the given file.0ДA ЩSQL Web Assistant failed because the state of the Web task in msdb..MSwebtasks is invalid.0ЕA ySQL Web Assistant: Could not open the output file.0ЖA }SQL Web Assistant: Could not open the template file.0ЗA ­SQL Web Assistant: Could not allocate enough memory to satisfy this request.d0ИA БSQL Web Assistant: The template file specified in the Web task has a bad size.џџџ0ЙA }SQL Web Assistant: Could not read the template file.Ъ•0КA гSQL Web Assistant: Could not find the specified marker for data insertion in the template file.щ0ЛA SQL Web Assistant: Could not write to the output file. 0МA qSQL Web Assistant: @tabborder must be tinyint.e0НA гSQL Web Assistant: @singlerow must be 0 or 1. Cannot specify this parameter with @nrowsperpage.0ОA ›SQL Web Assistant: The @blobfmt parameter specification is invalid.t0ПA щSQL Web Assistant: The output file name is mandatory for every column specified in the @blobfmt parameter.0РA SQL Web Assistant: Procedure called with too many parameters.0СA зSQL Web Assistant: @nrowsperpage must be a positive number and it cannot be used with @singlerow.0ТA ГSQL Web Assistant: Read/write operation on text, ntext, or image column failed.0ЦA SQL Web Assistant: Could not find the table in the HTML file.0ЧA БSQL Web Assistant: Could not find the matching end table tag in the HTML file. 0ЩA ЯSQL Web Assistant: The @datachg parameter cannot be specified with the given @whentype value.0ЪA ЫSQL Web Assistant: Could not find and drop the necessary trigger for updating the Web page.0ЫA YSQL Web Assistant: Could not add the necessary trigger for the @datachg parameter. There could be an existing trigger on the table with missing or encrypted text.0ЬA “SQL Web Assistant: Incorrect syntax for the @datachg parameter.0ЭA ЏSQL Web Assistant: @datachg must be specified for the given @whentype option.0ЮA гSQL Web Assistant: @unittype and/or @numunits must be specified for the given @whentype option.0ЯA oSQL Web Assistant: @fixedfont must be 0 or 1.0аA eSQL Web Assistant: @bold must be 0 or 1.0бA iSQL Web Assistant: @italic must be 0 or 1.БЂ0вA qSQL Web Assistant: @colheaders must be 0 or 1.0гA sSQL Web Assistant: @lastupdated must be 0 or 1.0дA ‹SQL Web Assistant: @HTMLheader must be in the range 1 to 6.0еA iSQL Web Assistant: @username is not valid.0жA eSQL Web Assistant: @dbname is not valid.0зA ‡SQL Web Assistant: @whentype must be in the range 1 to 9.0иA ‡SQL Web Assistant: @unittype must be in the range 1 to 4.0йA НSQL Web Assistant: @targetdate is invalid. It must be a valid date after 1900-01-01.0кA ЉSQL Web Assistant: The @targettime parameter must be between 0 and 240000.f0лA “SQL Web Assistant: @dayflags must be 1, 2, 4, 8, 16, 32, or 64.0мA }SQL Web Assistant: @numunits must be greater than 0.g t0нA ЕSQL Web Assistant: @targetdate must be specified for the given @whentype option.~~~0оA БSQL Web Assistant: @dayflags must be specified for the given @whentype option.УџџŒŒŒŒыыыыООООРпЌєtр4tьdќАHиTРd˜Ш„ајh| р ˜  @ Р \м`”Ќ@р<А4М@x`ЫЭ$”ИЬA 0ТA ГSQL Web Assistant: Read/write operation on text, ntext, or image column failed.g0ЦA SQL Web Assistant: Could not find the table in the HTML file.0ЧA БSQL Web Assistant: Could not find the matching end table tag in the HTML file.0ЩA ЯSQL Web Assistant: The @datachg parameter cannot be specified with the given @whentype value.0ЪA ЫSQL Web Assistant: Could not find and drop the necessary trigger for updating the Web page.•0ЫA YSQL Web Assistant: Could not add the necessary trigger for the @datachg parameter. There could be an existing trigger on the table with missing or encrypted text. be0ЬA “SQL Web Assistant: Incorrect syntax for the @datachg parameter.0ЭA ЏSQL Web Assistant: @datachg must be specified for the given @whentype option.0ЮA гSQL Web Assistant: @unittype and/or @numunits must be specified for the given @whentype option.0ЯA oSQL Web Assistant: @fixedfont must be 0 or 1.0аA eSQL Web Assistant: @bold must be 0 or 1.e0бA iSQL Web Assistant: @italic must be 0 or 1.0вA qSQL Web Assistant: @colheaders must be 0 or 1.Љ™0гA sSQL Web Assistant: @lastupdated must be 0 or 1.0дA ‹SQL Web Assistant: @HTMLheader must be in the range 1 to 6.0еA iSQL Web Assistant: @username is not valid.0жA eSQL Web Assistant: @dbname is not valid.Ћ™0зA ‡SQL Web Assistant: @whentype must be in the range 1 to 9.0иA ‡SQL Web Assistant: @unittype must be in the range 1 to 4.0йA НSQL Web Assistant: @targetdate is invalid. It must be a valid date after 1900-01-01.0кA ЉSQL Web Assistant: The @targettime parameter must be between 0 and 240000.0лA “SQL Web Assistant: @dayflags must be 1, 2, 4, 8, 16, 32, or 64.0мA }SQL Web Assistant: @numunits must be greater than 0.KKK0нA ЕSQL Web Assistant: @targetdate must be specified for the given @whentype option.0оA БSQL Web Assistant: @dayflags must be specified for the given @whentype option.10пA uSQL Web Assistant: URL specification is invalid.0рA хSQL Web Assistant: @blobfmt is invalid. The file must include the full path to the output_file location.0сA ЕSQL Web Assistant: URL hyperlink text column must not be of the image data type.џ0тA SQL Web Assistant: Could not obtain the number of columns in @query.В™0уA ™SQL Web Assistant: URL hyperlink text column is missing in @query.0000фA …SQL Web Assistant failed on the call to SQLColAttribute.a0хA ŸSQL Web Assistant: Columns of data type image cannot have a template. 0цA “SQL Web Assistant: Internal error. Could not read @ parameters.0чA ЫSQL Web Assistant: Invalid @charset. Execute sp_enumcodepages for a list of character sets.0щA ХSQL Web Assistant: Invalid @codepage. Execute sp_enumcodepages for a list of code pages.Л™0ъA ГSQL Web Assistant: Internal error. Cannot translate to the specified code page.0ыA СSQL Web Assistant: Translation to the desired code page is unavailable on this system.0ьA ŸSQL Web Assistant: Internal error. Could not obtain COM interface ID.0эA SQL Web Assistant: Internal error. Could not obtain COM language ID.0юA SQL Web Assistant: Internal error. Could not initialize COM library.;Ј0яA гSQL Web Assistant: Internal error. Could not translate from Unicode to the specified code page.0№A !SQL Web Assistant: Internal error. Could not create translation object. Make sure that the file MLang.dll is in your system directory.CCC0ёA ЉSQL Web Assistant: This version is not supported on Win32s of Windows 3.1.0ђA УSQL Web Assistant: Web task not found. Verify the name of the task for possible errors.0ѓA ЧSQL Web Assistant: Could not list Web task parameters. xp_readwebtask requires @procname.0єA ›SQL Web Assistant: Procedure name is required to convert Web tasks.qqqqП™ˆО™М(XЁЂлCCCCCmastersysmessages8П™РО™Н АБЂкerrorIIIIde П™П™ОDx;Ј аааааt’’D€4 МП™………… ’TфРьLЌ H”ЬlЬDЈPh№<„p Ф  | є Œ ” Ќ@иh”фPє(XЄ`ЬЮ$ @ЭA0оA БSQL Web Assistant: @dayflags must be specified for the given @whentype option.v0пA uSQL Web Assistant: URL specification is invalid.’0рA хSQL Web Assistant: @blobfmt is invalid. The file must include the full path to the output_file location.ддд0сA ЕSQL Web Assistant: URL hyperlink text column must not be of the image data type.………0тA SQL Web Assistant: Could not obtain the number of columns in @query.0уA ™SQL Web Assistant: URL hyperlink text column is missing in @query.e0фA …SQL Web Assistant failed on the call to SQLColAttribute.’0хA ŸSQL Web Assistant: Columns of data type image cannot have a template.0цA “SQL Web Assistant: Internal error. Could not read @ parameters.0чA ЫSQL Web Assistant: Invalid @charset. Execute sp_enumcodepages for a list of character sets.0щA ХSQL Web Assistant: Invalid @codepage. Execute sp_enumcodepages for a list of code pages.˜˜˜0ъA ГSQL Web Assistant: Internal error. Cannot translate to the specified code page.0ыA СSQL Web Assistant: Translation to the desired code page is unavailable on this system.0ьA ŸSQL Web Assistant: Internal error. Could not obtain COM interface ID.g0эA SQL Web Assistant: Internal error. Could not obtain COM language ID.ђ0юA SQL Web Assistant: Internal error. Could not initialize COM library. ’0яA гSQL Web Assistant: Internal error. Could not translate from Unicode to the specified code page.0№A !SQL Web Assistant: Internal error. Could not create translation object. Make sure that the file MLang.dll is in your system directory. 0ёA ЉSQL Web Assistant: This version is not supported on Win32s of Windows 3.1.0ђA УSQL Web Assistant: Web task not found. Verify the name of the task for possible errors.0ѓA ЧSQL Web Assistant: Could not list Web task parameters. xp_readwebtask requires @procname.0єA ›SQL Web Assistant: Procedure name is required to convert Web tasks.0ѕA SQL Web Assistant: Could not upgrade the Web task to 7.0. The Web task will remain in 6.5 format and will need to be re-created.‹‹‹0іA гSQL Web Assistant: Could not update Web tasks system table. The Web task remains in 6.5 format.0їA щSQL Web Assistant: @procname parameter is missing. The parameter is required to upgrade a Web task to 7.0.0јA 3SQL Web Assistant: Source code page is not supported on the system. Ensure @charset and @codepage language files are installed on your system.0љA SQL Web Assistant: Could not send Web task row to the client.0њA ЉSQL Web Assistant: ODS error occurred. Could not send Web task parameters.’0B s%hs: This feature has not been implemented yet.0B k%hs: The value of parameter %hs is invalid.0B ‡%hs procedure called with incorrect number of parameters.0B Сsp_cursor: optype: You can only specify ABSOLUTE in conjunction with DELETE or UPDATE.’0 B KThe cursor is already open.0 B e%hs is not allowed in cursor statements.ŠŠŠ0 B %hs: The cursor identifier value provided (%x) is not valid.;Ј0B —%hs: The fetch type %hs cannot be used with forward only cursors.0B q%hs procedure called with too many parameters.є0B qA cursor with the name '%.*ls' already exists.0B qA cursor with the name '%.*ls' does not exist.0B ;Cursor is not open.0B ЇCursor Fetch: Implicit conversion from data type %s to %s is not allowed.0B лCursorfetch: The number of variables declared in the INTO list must match that of selected columns.0B ƒThe fetch type %hs cannot be used with dynamic cursors.0B Щsp_cursoroption: The column ID (%d) does not correspond to a text, ntext, or image column.i0B {Cannot fetch into text, ntext, and image variables.0!B EThe cursor is READ ONLY.0"B oThe requested row is not in the fetch buffer.0#B qThere are no rows in the current fetch buffer.^^^$т™erД `  Ђ(<р™УџџЬ\˜ЬHlФˆ ,”œPŒ˜$xшДШєм@xД  ф  p а 0 lИ№$№hЬ,tŒ`ЭЯ$.HЮAа0јA 3SQL Web Assistant: Source code page is not supported on the system. Ensure @charset and @codepage language files are installed on your system.0љA SQL Web Assistant: Could not send Web task row to the client.0њA ЉSQL Web Assistant: ODS error occurred. Could not send Web task parameters.0B s%hs: This feature has not been implemented yet.0B k%hs: The value of parameter %hs is invalid.0B ‡%hs procedure called with incorrect number of parameters.0B Сsp_cursor: optype: You can only specify ABSOLUTE in conjunction with DELETE or UPDATE.…”0 B KThe cursor is already open.0 B e%hs is not allowed in cursor statements. c0 B %hs: The cursor identifier value provided (%x) is not valid.0B —%hs: The fetch type %hs cannot be used with forward only cursors.0B q%hs procedure called with too many parameters.lЈ0B qA cursor with the name '%.*ls' already exists.0B qA cursor with the name '%.*ls' does not exist.џџ0B ;Cursor is not open.80B ЇCursor Fetch: Implicit conversion from data type %s to %s is not allowed.0B лCursorfetch: The number of variables declared in the INTO list must match that of selected columns.0B ƒThe fetch type %hs cannot be used with dynamic cursors.0B Щsp_cursoroption: The column ID (%d) does not correspond to a text, ntext, or image column.t0B {Cannot fetch into text, ntext, and image variables.0!B EThe cursor is READ ONLY.0"B oThe requested row is not in the fetch buffer.0#B qThere are no rows in the current fetch buffer.0$B ЭThe cursor has a FOR UPDATE list and the requested column to be updated is not in this list.m0%B сThe cursor does not include the table being modified or the table is not updatable through the cursor.0&B ЗOptimistic concurrency check failed. The row was modified outside of this cursor.0'B ›No parameter values were specified for the sp_cursor-%hs statement.0(B sp_cursor: One or more values parameters were invalid.”0)B SA server cursor is not allowed on a remote stored procedure or stored procedure with more than one SELECT statement. Use a default result set or client cursor.0*B їsp_cursoropen/sp_cursorprepare: The statement parameter can only be a single select or a single stored procedure.–0,B ЇCannot specify UPDLOCK or TABLOCKX with READ ONLY or INSENSITIVE cursors.0-B ЃCursor updates are not allowed on tables opened with the NOLOCK option.Џ0.B ЅCould not generate asynchronous keyset. The cursor has been deallocated.0/B лCould not complete cursor operation because the table schema changed after the cursor was declared.00B Cannot specify UPDLOCK or TABLOCKX on a read-only table in a cursor.;Ј01B MThe cursor was not declared.ЁЁЁ02B ЛCould not open the cursor because one or more of its tables have gone out of scope.03B  UNo rows were updated or deleted.—”04B яThe variable '%.*ls' is not a cursor variable, but it is used in a place where a cursor variable is expected.05B щThe variable '%.*ls' is a cursor variable, but it is used in a place where a cursor variable is not valid.™”06B ЁThe variable '%.*ls' does not currently have a cursor allocated to it.807B QThe variable '%.*ls' cannot be used as a parameter because a CURSOR OUTPUT parameter must not have a cursor allocated to it before execution of the procedure.h08B ЋA cursor variable cannot be used as a parameter to a remote procedure call.09B Remote tables are not updatable. Updatable keyset-driven cursors on remote tables require a transaction with the REPEATABLE_READ or SERIALIZABLE isolation level spanning the cursor.0:B YExecuting SQL directly; no cursor.0;B aCould not create an acceptable cursor.n0B уCould not complete cursor operation because the set options have changed since the cursor was declared.0?B UUnique table computation failed.0@B ƒYou have reached the maximum number of cursors allowed.0AB нOne or more FOR UPDATE columns have been adjusted to the first instance of their table in the query. Ж0BB ‡The target object type is not updatable through a cursor.0CB ЋYou cannot specify scroll locking on a cursor that contains a remote table.ш0dB Y%hs cannot take output parameters.0fB Internal Cursor Error: A cursor work table operation failed.ш0gB ‡Internal Cursor Error: The cursor is in an invalid state.0hB “Usage: sp_autostats <table_name> [, {ON|OFF} [, <index_name>] ]0šB ‰The '%ls' option is ignored in this edition of SQL Server.0ŽD oDBCC TRACEON %d, server process ID (SPID) %d.0D qDBCC TRACEOFF %d, server process ID (SPID) %d. 0•D€ gDBCC DBRECOVER failed for database ID %d.0–D € i*** Bypassing recovery for database ID %d.˜™0˜D € yDBCC DBREPAIR: '%ls' index restored for '%ls.%ls'.o0™D € S%ls index restored for %ls.%ls.0ЁD€ ‡DBCC cannot find the library initialization function %ls.0ЂD€ DBCC cannot find the function %ls in the library %ls. 0ЃD€ чDBCC function %ls in the library %ls generated an access violation. SQL Server is terminating process %d.0ЄD€ БDBCC cannot free DLL %ls. SQL Server depends on this DLL to function properly.™0VE€ ЃCannot load the DLL %ls, or one of the DLLs it references. Reason: %ls.0WE€ Cannot find the function %ls in the library %ls. Reason: %ls.0XE€ Extended procedure memory allocation failed for '%ls'.ž™0YE€ y%.*ls can only be executed in the master database. Ÿ™Ÿ™€ž™П x;ЈЕ €€€€€errorееее<Ÿ™PŸ™шž™РАБЂкБББББseverityффффOOрž™ИŸ™Ÿ™СDx;Ј 99999l ЂЄЄЂri€4Tа@œш€јЄ(МTрpфPШ8м0ЈШDьˆДXи , и 4 H X DєTxа,„Œ8Д`бŸ<јаЈЊ7"tG4><уХGO +8 ------------------------------- xp_logininfo ---------------------------------- create proc xp_logininfo @acctname sysname = null, -- IN: NT login name @option varchar(10) = null, -- IN: 'all' | 'members' | null @privilege varchar(10) = 'Not wanted' OUTPUT -- OUT: 'admin' | 'user' | null as -- VALIDATE PARAMETERS -- if (@acctname is null AND (@option is not null OR (@privilege is null OR @privilege <> 'Not wanted'))) OR ((@option is null OR @option <> 'all') AND (@privilege is null OR @privilege <> 'Not wanted')) OR (@option is not null and @option not in ('all', 'members')) begin raiserror(15600,-1,-1,'xp_logininfo') return 1 end -- HANDLE CASE WHERE NO @acctname GIVEN -- if (@acctname is null) begin select 'account name' = loginname, 'type' = convert(varchar(8), case when isntuser = 1 then 'user' else 'group' end), 'privilege' = convert(varchar(8), case when sysadmin = 1 then 'admin' else 'user' end), 'mapped login name' = loginname, 'permission path' = convert(sysname, null) from master..syslogins where isntname = 1 and hasaccess = 1 order by 3, 1 return @@error end -- HANDLE 'members' QUERY -- if (@option = 'members') begin declare @priv varchar(8) select @priv = case when sysadmin = 1 then 'admin' else 'user' end from master..syslogins where isntname = 1 and loginname = @acctname and hasaccess = 1 if @priv is not null select 'account name' = domain+N'\'+name, 'type' = convert(varchar(8), case when sidtype = 1 then 'user' else 'group' end), 'privilege' = @priv, 'mapped login name' = domain+N'\'+name, 'permission path' = @acctname from OpenRowset(NetGroupGetMembers, @acctname) order by 3, 1 else select 'account name' = convert(sysname, null), 'type' = convert(varchar(8), null), 'privilege' = @priv, 'mapped login name' = convert(sysname, null), 'permission path' = convert(sysname, null) where 0=1 -- empty result set return @@error end -- CREATE TEMP TABLE AND POPULATE WITH THE REQUIRED DATA -- create table #nt (name sysname collate database_default, sid varbinary(85), sidtype int) insert #nt select loginname, sid, isntgroup + 1 from master..syslogins where isntname = 1 and loginname = @acctname insert #nt select distinct domain+N'\'+name, sid, sidtype from OpenRowset(NetUserGetGroups, @acctname) if @@error <> 0 return @@error -- IF ANY DENY, THEN NO ACCESS -- if exists (select * from master..syslogins where sid in (select #nt.sid from #nt) and denylogin = 1) delete #nt -- HANDLE CASE WHERE OUTPUT REQUESTED -- if (@privilege is null OR @privilege <> 'Not wanted') begin select @privilege = case max(sysadmin) when 1 then 'admin' when 0 then 'user' else NULL end from master..syslogins where isntname = 1 and hasaccess = 1 AND sid in (select sid from #nt) return @@error end -- GET NT TYPE FOR NEXT OPTIONS -- declare @type varchar(8) select @type = case when get_sid('\U'+@acctname, NULL) is null then 'group' else 'user' end -- HANDLE 'all' QUERY -- if (@option = 'all') begin select 'account name' = @acctname, 'type' = @type, 'privilege' = convert(varchar(8), case when sysadmin = 1 then 'admin' else 'user' end), 'mapped login name' = @acctname, 'permission path' = case when l.loginname = @acctname then NULL else l.loginname end from master..syslogins l join #nt n on l.isntname = 1 and l.sid = n.sid where l.loginname = n.name and hasaccess = 1 order by 3, 5 return @@error end -- HANDLE DEFAULT QUERY -- select TOP 1 'account name' = @acctname, 'type' = @type, 'privilege' = convert(varchar(8), case when sysadmin = 1 then 'admin' else 'user' end), 'mapped login name' = @acctname, 'permission path' = case when l.loginname = @acctname then NULL else l.loginname end from master..syslogins l join #nt n on l.isntname = 1 and l.sid = n.sid where l.loginname = n.name and hasaccess = 1 order by 3, 5 return @@error < а|O y8create procedure sp_addmessage --- 1996/04/08 00:00 @msgnum int = null, -- Number of new message. @severity smallint = null, -- Severity of new message. @msgtext nvarchar(255) = null, -- Text of new message. @lang sysname = null, -- language (name) of new message @with_log varchar(5) = 'FALSE', -- Whether the message will ALWAYS go to the NT event log @replace varchar(7) = null -- Optional parameter to specify that -- existing message with same number -- should be overwritten. as declare @retcode int declare @langid smallint declare @msglangid smallint declare @dlevel smallint -- Must be ServerAdmin to manage messages if is_srvrolemember('serveradmin') = 0 begin raiserror(15247,-1,-1) return (1) end if @msgnum is null or @severity is null or @msgtext is null begin raiserror(15071,-1,-1) return(1) end /* ** User defined messages must be > 50000. */ if @msgnum <= 50000 begin raiserror(15040,-1,-1) return(1) end /* ** Valid severity range for user defined messges is 1 to 25. */ if @severity not between 1 and 25 begin raiserror(15041,-1,-1) return(1) end /* ** Verify the language */ if @lang is not null begin exec @retcode = sp_validlang @lang if @retcode <> 0 return(1) end else select @lang = @@language /* ** Get langid from syslanguages; us_english won't exist, so use 0. */ select @langid = langid, @msglangid = msglangid from master.dbo.syslanguages where name = @lang or alias = @lang select @langid = isnull(@langid, 0) select @msglangid = isnull(@msglangid, 1033) /* ** @with_log must be 'TRUE' or 'FALSE' */ if (upper(@with_log) not in ('TRUE', 'FALSE')) begin raiserror(15271,-1,-1) return (1) end /* ** Set the dlevel bit accordingly */ if (rtrim(upper(@with_log)) = 'TRUE') select @dlevel = 0x80 else select @dlevel = 0x0 /* ** If we're adding a non-us_english message, make sure the us_english version already exists. */ if (@langid <> 0) and not exists (select * from master.dbo.sysmessages where error=@msgnum and msglangid = 1033) begin raiserror(15279,-1,-1,@lang) return(1) end /* ** If we're adding a non-us_english message, make sure that the severity matches that of the us_english version */ if (@langid <> 0 ) and not exists (select * from master.dbo.sysmessages where error=@msgnum and severity=@severity and msglangid = 1033) begin declare @us_english_severity smallint select @us_english_severity = severity from master.dbo.sysmessages where error=@msgnum and msglangid = 1033 raiserror(15304,-1,-1,@lang,@us_english_severity) return(1) end /* ** Does this message already exist, and if so are we REPLACEing it? */ if (select count(*) from master.dbo.sysmessages where error=@msgnum and msglangid=@msglangid) > 0 if lower(@replace) = 'replace' begin delete from master.dbo.sysmessages where error = @msgnum and msglangid = @msglangid /* ** If we're REPLACEing a us_english message, make sure any non-us_english messages get updated with the same severity */ if (@langid = 0) begin update master.dbo.sysmessages set severity = @severity where error = @msgnum and msglangid <> 1033 end end else begin /* ** The 'replace' option wasn't specified and a ** msg. with the number already exists. */ raiserror(15043,-1,-1) return(1) end /* ** Create the message. */ insert into master.dbo.sysmessages(error,severity,description,dlevel,msglangid) values (@msgnum,@severity,@msgtext,@dlevel,@msglangid) return (0) -- sp_addmessage !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!‹`ва<ъбВxX$њѓm<8YkL ‰8CREATE PROCEDURE sp_helprolemember @rolename sysname = NULL AS if @rolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from sysusers where name = @rolename and issqlrole = 1) begin raiserror(15409, -1, -1, @rolename) return (1) end -- RESULT SET FOR SINGLE ROLE select DbRole = g.name, MemberName = u.name, MemberSID = u.sid from sysusers u, sysusers g, sysmembers m where g.name = @rolename and g.uid = m.groupuid and g.issqlrole = 1 and u.uid = m.memberuid order by 1, 2 end else begin -- RESULT SET FOR ALL ROLES select DbRole = g.name, MemberName = u.name, MemberSID = u.sid from sysusers u, sysusers g, sysmembers m where g.uid = m.groupuid and g.issqlrole = 1 and u.uid = m.memberuid order by 1, 2 end return (0) -- sp_helprolemember <bc L А8 create procedure sp_fallback_MS_sel_fb_svr --- 1997/05/30 02:44 @pFallbackSvrName character varying(30) OUTPUT as /********1*********2*********3*********4*********5*********6*********7** This sproc is used by ODBC & DBLib when first connecting. This sproc will assign a null to the output parm. Note: This will need to be changed to return the name of the virtual server once WolfPack support is enabled. *********1*********2*********3*********4*********5*********6*********7*/ Set nocount on Set ansi_nulls on SELECT @pFallbackSvrName = null Return 0 <q}_M й8CREATE PROCEDURE sp_helprole @rolename sysname = NULL AS if @rolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from sysusers where name = @rolename and (issqlrole = 1 or isapprole = 1)) begin raiserror(15409, -1, -1, @rolename) return (1) end -- RESULT SET FOR SINGLE ROLE select 'RoleName' = name, 'RoleId' = uid, 'IsAppRole' = isapprole from sysusers where (name = @rolename) and (issqlrole = 1 or isapprole = 1) end else begin -- RESULT SET FOR ALL ROLES select 'RoleName' = name, 'RoleId' = uid, 'IsAppRole' = isapprole from sysusers where issqlrole = 1 or isapprole = 1 end return (0) -- sp_helprole <›‡”M Ќ8CREATE PROCEDURE sp_validname @name sysname, @raise_error bit = 1 AS ----------------------------------------------------- -- This SP checks for valid SQL-Server identifiers. -- For 7.0+, these are the very-simple checks below. -- All non-binary-zero (UNICODE) characters we just -- accept as being valid. ----------------------------------------------------- declare @index int Set nocount on -- Name cannot be NULL or empty ("") -- Blank identifiers (" ") are allowed IF (@name is null OR datalength(@name) = 0) begin if @raise_error = 1 raiserror (15004,-1,-1) return (1) end -- Name cannot contain a binary-zero character select @index = charindex(convert(nchar(1),0x00), @name) while (@index <> 0) begin if unicode(substring(@name, @index, 1)) = 0 begin if @raise_error = 1 raiserror(15006,-1,-1,@name) return (1) end if @index >= len(@name) select @index = 0 else begin select @name = substring(@name, @index+1, len(@name)-@index) select @index = charindex(convert(nchar(1),0x00), @name) end end -- TH-TH-TH-THAT'S IT! return (0) -- sp_validname <ЊЁSN Ь8CREATE PROCEDURE sp_helpntgroup @ntname sysname = NULL AS if @ntname is not null begin -- VALIDATE GIVEN NAME if not exists (select * from sysusers where name = @ntname and isntgroup = 1) begin raiserror(15420, -1, -1, @ntname) return (1) end -- RESULT SET FOR SINGLE GROUP select 'NTGroupName' = name, 'NtGroupId' = uid, 'SID' = sid, 'HasDbAccess' = hasdbaccess from sysusers where name = @ntname and isntgroup = 1 end else begin -- RESULT SET FOR ALL GROUPS select 'NTGroupName' = name, 'NtGroupId' = uid, 'SID' = sid, 'HasDbAccess' = hasdbaccess from sysusers where isntgroup = 1 end return (0) -- sp_helpntgroup <дЋˆN \8create procedure sp_validlang --- 1996/04/08 00:00 @name sysname as /* Check to see if this language is in Syslanguages. */ if exists (select * from master.dbo.syslanguages where name = @name or alias = @name) or @name = N'us_english' return(0) raiserror(15033,-1,-1,@name) return (1) -- sp_validlang <ЙЛO ќ8 /* Procedure for 8.0 server */ create procedure sp_tables_info_rowset ( @table_name sysname, @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, TABLE_TYPE = convert(nvarchar(30), case o.type when 'U' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), BOOKMARKS = convert(bit, 1), BOOKMARK_TYPE = convert(int, 1 /*DBPROPVAL_BMK_NUMERIC*/), BOOKMARK_DATATYPE = convert(smallint, 19 /*DBTYPE_UI4 */), BOOKMARK_MAXIMUM_LENGTH = convert(int, 4), BOOKMARK_INFORMATION = convert(int, 0), TABLE_VERSION = convert(bigint, ObjectPropertyEx(o.id, 'objectversion')), CARDINALITY = x.rows, DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int, null) from sysobjects o left join sysindexes x on o.id = x.id and x.indid in (0,1) where o.name = @table_name and o.type in ('U','V','S') and permissions(o.id) <> 0) as t where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 <ЙЛO Ј8create procedure sp_tables_info_rowset;2 ( @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, TABLE_TYPE = convert(nvarchar(30), case o.type when 'U' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), BOOKMARKS = convert(bit, 1), BOOKMARK_TYPE = convert(int, 1 /*DBPROPVAL_BMK_NUMERIC*/), BOOKMARK_DATATYPE = convert(smallint, 19 /*DBTYPE_UI4 */), BOOKMARK_MAXIMUM_LENGTH = convert(int, 4), BOOKMARK_INFORMATION = convert(int, 0), TABLE_VERSION = convert(bigint, ObjectPropertyEx(o.id, 'objectversion')), CARDINALITY = x.rows, DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int, null) from sysobjects o left join sysindexes x on o.id = x.id and x.indid in (0,1) where o.type in ('U','V','S') and permissions(o.id) <> 0) as t where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!BFъr ™щ`гб<г%вЈ7"Ш}v<)?ЌK 8create procedure sp_dbcmptlevel -- 1997/04/15 @dbname sysname = NULL, /* database name to change */ @new_cmptlevel tinyint = NULL OUTPUT /* the new compatibility level to change to */ as set nocount on declare @exec_stmt nvarchar(275) declare @returncode int declare @comptlevel float(8) declare @dbid int /* dbid of the database */ declare @dbsid varbinary(85) /* id of the owner of the database */ declare @orig_cmptlevel tinyint /* original compatibility level */ declare @input_cmptlevel tinyint /* compatibility level passed in by user */ ,@cmptlvl60 tinyint /* compatibility to SQL Server Version 6.0 */ ,@cmptlvl65 tinyint /* compatibility to SQL Server Version 6.5 */ ,@cmptlvl70 tinyint /* compatibility to SQL Server Version 7.0 */ ,@cmptlvl80 tinyint /* compatibility to SQL Server Version 8.0 */ select @cmptlvl60 = 60, @cmptlvl65 = 65, @cmptlvl70 = 70, @cmptlvl80 = 80 -- SP MUST BE CALLED AT ADHOC LEVEL -- if (@@nestlevel > 1) begin raiserror(15432,-1,-1,'sp_dbcmptlevel') return (1) end /* ** If no @dbname given, just list the valid compatibility level values. */ if @dbname is null begin raiserror (15048, -1, -1, @cmptlvl60, @cmptlvl65, @cmptlvl70, @cmptlvl80) return (0) end /* ** Verify the database name and get info */ select @dbid = dbid, @dbsid = sid ,@orig_cmptlevel = cmptlevel from master.dbo.sysdatabases where name = @dbname /* ** If @dbname not found, say so and list the databases. */ if @dbid is null begin raiserror(15010,-1,-1,@dbname) print ' ' select 'Available databases:' = name from master.dbo.sysdatabases return (1) end /* ** Now save the input compatibility level and initialize the return clevel ** to be the current clevel */ select @input_cmptlevel = @new_cmptlevel select @new_cmptlevel = @orig_cmptlevel /* ** If no clevel was supplied, display and output current level. */ if @input_cmptlevel is null begin raiserror(15054, -1, -1, @orig_cmptlevel) return(0) end /* ** We should not allow the user to change the compatibility level of the master database */ if @dbid = db_id('master') begin raiserror(15417, -1, -1, @dbname) return (1) end /* ** If invalid clevel given, print usage and return error code ** 'usage: sp_dbcmptlevel [dbname [, compatibilitylevel]]' */ if @input_cmptlevel not in (@cmptlvl60, @cmptlvl65, @cmptlvl70, @cmptlvl80) begin raiserror(15416, -1, -1) print ' ' raiserror (15048, -1, -1, @cmptlvl60, @cmptlvl65, @cmptlvl70, @cmptlvl80) return (1) end /* ** We should not allow the user to change the compatibility level if there exists IV or ICC */ if @orig_cmptlevel = @cmptlvl80 and @input_cmptlevel < @cmptlvl80 begin -- CHECK FOR INDEXED VIEWS OR INDEXED COMPUTED-COLUMNS if exists (select * from sysobjects where xtype = 'V' and id in (select id from sysindexes)) or exists (select * from sysobjects o join sysindexkeys k on o.id=k.id where o.xtype = 'U' and ColumnProperty(k.id, col_name(k.id, k.colid), 'IsComputed') = 1) begin -- Cannot set compat mode because database has a view or computed column that is indexed. -- These indexes require an 8.0-compatible database. raiserror(15414, -1, -1) return (1) end end /* ** Only the SA or the dbo of @dbname can execute the update part ** of this procedure so check. */ if (not (is_srvrolemember('sysadmin') = 1)) and suser_sid() <> @dbsid -- ALSO ALLOW db_owner ONLY IF DB REQUESTED IS CURRENT DB and (@dbid <> db_id() or is_member('db_owner') <> 1) begin raiserror(15418,-1,-1) return (1) end /* ** We should not allow the user to change the compatibility level for ** replicated or distributed databases */ select @comptlevel = case @input_cmptlevel when 60 then 6.0 when 65 then 6.5 when 70 then 7.0 when 80 then 8.0 end exec @returncode = sp_MSreplicationcompatlevel @dbname, @comptlevel if @returncode <> 0 begin raiserror(15306, -1, -1) return (1) end /* ** If we're in a transaction, disallow this since it might make recovery ** impossible. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dbcmptlevel') return (1) end update master.dbo.sysdatabases set cmptlevel = @input_cmptlevel where dbid = @dbid /* ** CHECKPOINT the database that was changed. */ select @exec_stmt = 'use ' + quotename(@dbname, '[') + ' checkpoint' exec(@exec_stmt ) /* ** If checkpoint unsuccessful, restore the old compatibility level, ** otherwise update output clevel and flush all the SPs of this database ** from the cache */ if (@@error <> 0) begin update master.dbo.sysdatabases set cmptlevel = @orig_cmptlevel where dbid = @dbid end else begin dbcc flushprocindb(@dbid) select @new_cmptlevel = @input_cmptlevel end return (0) -- sp_dbcmptlevel <O6L n8 /* Procedure for 8.0 server */ create procedure sp_tables_rowset ( @table_name sysname, @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(uid), TABLE_NAME = name, TABLE_TYPE = convert(nvarchar(30), case type when 'U' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int,null), DATE_CREATED = crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects where name = @table_name and type in ('U','V','S') and permissions(id) <> 0 ) as o where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 <O6L 8create procedure sp_tables_rowset;2 ( @table_schema sysname = null, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(uid), TABLE_NAME = name, TABLE_TYPE = convert(nvarchar(30), case type when 'U' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(id, 'IsMSShipped') = 0 then N'VIEW' else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int,null), DATE_CREATED = crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects where type in ('U','V','S') and permissions(id) <> 0 ) as o where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 <O6L &8create procedure sp_tables_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null, @table_type sysname = null ) as select TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE, TABLE_GUID, DESCRIPTION -- TABLE_PROPID, -- DATE_CREATED, -- DATE_MODIFIED from master.dbo.SYSREMOTE_TABLES < @table_server, @table_catalog, @table_schema, @table_name, @table_type > order by 4,1,2,3 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!џуu`дв<є ќгВpW$в6*<~вЯH Ѕ8create procedure sp_blockcnt --- 1996/04/08 00:00 as select blockedusers=count(*) from master.dbo.sysprocesses where blocked <> 0 <ьŽI D8CREATE PROCEDURE sp_helpsrvrolemember @srvrolename sysname = NULL AS if @srvrolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from master.dbo.spt_values where name = @srvrolename and low = 0 and type = 'SRV') begin raiserror(15412, -1, -1, @srvrolename) return (1) end -- RESULT SET FOR SINGLE SERVER-ROLE select 'ServerRole' = spv.name, 'MemberName' = lgn.name, 'MemberSID' = lgn.sid from master.dbo.spt_values spv, master.dbo.sysxlogins lgn where spv.name = @srvrolename and spv.low = 0 and spv.type = 'SRV' and lgn.srvid IS NULL and spv.number & lgn.xstatus = spv.number end else begin -- RESULT SET FOR ALL SERVER-ROLES select 'ServerRole' = spv.name, 'MemberName' = lgn.name, 'MemberSID' = lgn.sid from master.dbo.spt_values spv, master.dbo.sysxlogins lgn where spv.low = 0 and spv.type = 'SRV' and lgn.srvid IS NULL and spv.number & lgn.xstatus = spv.number end return (0) -- sp_helpsrvrolemember <ЗіУI ф8create proc sp_tempdbspace --- 1996/04/08 00:00 as declare @dbsize dec(15,0) declare @freespace dec(15,0) declare @spaceused dec(15,0) select @dbsize = sum(convert(dec(15),size)) from tempdb.dbo.sysfiles select database_name = 'tempdb', database_size = (@dbsize / 128), spaceused=(select (sum(convert(dec(15),reserved))/128) from tempdb..sysindexes where indid in (0, 1, 255)) <œNJ f8 /* 8.0 version */ create procedure sp_statistics_rowset ( @table_name sysname, @table_schema sysname = null ) as select db_name() as TABLE_CATALOG, user_name(o.uid) as TABLE_SCHEMA, o.name as TABLE_NAME, x.rows as CARDINALITY from sysobjects o, sysindexes x where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and x.id = o.id and x.indid in (0,1) /*If there are no indexes then table stats are in a row with indid =0 */ and permissions(o.id) <> 0 order by 2, 3 <œNJ 8create procedure sp_statistics_rowset;2 ( @table_schema sysname = null ) as select db_name() as TABLE_CATALOG, user_name(o.uid) as TABLE_SCHEMA, o.name as TABLE_NAME, x.rows as CARDINALITY from sysobjects o, sysindexes x where o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and x.id = o.id and x.indid in (0,1) /*If there are no indexes then table stats are in a row with indid =0 */ and permissions(o.id) <> 0 order by 2, 3 <ЦƒJ і8CREATE PROCEDURE sp_helpdbfixedrole @rolename sysname = NULL AS if @rolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from sysusers where name = @rolename and uid >= 16384 and uid <= 16393) begin raiserror(15412, -1, -1, @rolename) return (1) end -- RESULT SET FOR SINGLE FIXED-ROLE select 'DbFixedRole' = usr.name, 'Description' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.name = @rolename and usr.uid >= 16384 and usr.uid <= 16393 and usr.uid = spv.number and spv.type = 'DBR' and spv.low = -1 end else begin -- RESULT SET FOR ALL FIXED-ROLES select 'DbFixedRole' = usr.name, 'Description' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.uid >= 16384 and usr.uid <= 16393 and usr.uid = spv.number and spv.type = 'DBR' and spv.low = -1 end return (0) -- sp_helpdbfixedrole <№ИJ D€8_hБ 8В<џ4wK 8CREATE PROCEDURE sp_dbfixedrolepermission @rolename sysname = NULL AS if @rolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from sysusers where name = @rolename and uid >= 16384 and uid <= 16393) begin raiserror(15412, -1, -1, @rolename) return (1) end -- RESULT SET FOR SINGLE FIXED-ROLE select DISTINCT 'DbFixedRole' = usr.name, 'Permission' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.name = @rolename and usr.uid >= 16384 and usr.uid <= 16393 and spv.type = 'DBR' and ((usr.uid = 16384 and spv.number >= 16384 and spv.number < 16392) or (usr.uid <> 16384 and usr.uid = spv.number)) and spv.low > 0 order by usr.name, spv.name end else begin -- RESULT SET FOR ALL FIXED-ROLES select DISTINCT 'DbFixedRole' = usr.name, 'Permission' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.uid >= 16384 and usr.uid <= 16393 and spv.type = 'DBR' and ((usr.uid = 16384 and spv.number >= 16384 and spv.number < 16392) or (usr.uid <> 16384 and usr.uid = spv.number)) and spv.low > 0 order by usr.name, spv.name end return (0) -- sp_dbfixedrolepermission !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!эЉГ “ -I`ег <ддǘ7"-eLо<Иu}F 8create procedure sp_procedures_rowset;2 ( @procedure_schema sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(p.number,5))), PROCEDURE_TYPE = convert(smallint, 3 /*DB_PT_FUNCTION*/), PROCEDURE_DEFINITION = convert(nvarchar(1),null), DESCRIPTION = convert(nvarchar(1),null), DATE_CREATED = o.crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects o, syscomments p where permissions(o.id) <> 0 and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.type in ('P', 'FN', 'TF', 'IF') /* Object type of Procedure */ and p.colid = 1 and p.id = o.id order by 2, 3 <тВF Щ 8create procedure sp_changeobjectowner @objname nvarchar(517), -- may be "[owner].[object]" @newowner sysname -- must be entry from sysusers as Set nocount on Set ansi_padding on declare @objid int, @newuid smallint -- CHECK PERMISSIONS: Because changing owner changes both schema and -- permissions, the caller must be one of: -- (1) db_owner -- (2) db_ddladmin AND db_securityadmin if (is_member('db_owner') = 0) and (is_member('db_securityadmin') = 0 OR is_member('db_ddladmin') = 0) begin raiserror(15247,-1,-1) return (1) end -- RESOLVE OBJECT NAME (CANNOT BE A CHILD OBJECT: TRIGGER/CONSTRAINT) -- select @objid = object_id(@objname, 'local') if (@objid is null) OR (select parent_obj from sysobjects where id = @objid) <> 0 OR ObjectProperty(@objid, 'IsMSShipped') = 1 OR ObjectProperty(@objid, 'IsSystemTable') = 1 OR ObjectProperty(@objid, 'ownerid') in (0,3,4) OR --public, INFORMATION_SCHEMA, system_function_schema -- Check for Dependencies: No RENAME or CHANGEOWNER of OBJECT when exists: EXISTS (SELECT * FROM sysdepends d WHERE d.depid = @objid -- A dependency on this object AND d.deptype > 0 -- that is enforced AND @objid <> d.id -- that isn't a self-reference (self-references don't use object name) AND @objid <> -- And isn't a reference from a child object (also don't use object name) (SELECT o.parent_obj FROM sysobjects o WHERE o.id = d.id) ) begin -- OBJECT NOT FOUND raiserror(15001,-1,-1,@objname) return 1 end -- RESOLVE NEW OWNER NAME (ATTEMPT ADDING IMPLICIT ROW FOR NT NAME) -- -- Disallow aliases, and public cannot own objects -- select @newuid = uid from sysusers where name = @newowner and isaliased = 0 and uid not in (0,3,4) --public, INFORMATION_SCHEMA, system_function_schema if @newuid is null begin execute sp_MSadduser_implicit_ntlogin @newowner select @newuid = uid from sysusers where name = @newowner and isaliased = 0 and name <> 'public' end if @newuid is null begin raiserror(15410, -1, -1, @newowner) return (1) end -- CHECK IF CHANGING OWNER OF OBJECT OR ITS CHILDREN WOULD PRODUCE A DUPLICATE if exists (select * from sysobjects where uid = @newuid and name in (select name from sysobjects where id = @objid OR parent_obj = @objid)) begin raiserror(15505,-1,-1,@objname,@newowner) return (1) end -- DO THE OWNER TRANSFER (WITH A WARNING) -- raiserror(15477,-1,-1) begin transaction -- Locks Object and increments schema_ver. DBCC LockObjectSchema(@objname) -- drop permissions (they'll be incorrect with new owner) -- delete syspermissions where id = @objid update sysobjects set uid = @newuid where id = @objid update sysobjects set uid = @newuid where parent_obj = @objid commit transaction return 0 -- sp_changeobjectowner < ŠчF Ѓ8create proc sp_user_counter9 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 9', @newvalue) <ЄІG 8CREATE PROCEDURE sp_helpsrvrole @srvrolename sysname = NULL AS if @srvrolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from master.dbo.spt_values where name = @srvrolename and low = 0 and type = 'SRV') begin raiserror(15412, -1, -1, @srvrolename) return (1) end -- RESULT SET FOR SINGLE SERVER-ROLE select 'ServerRole' = v1.name, 'Description' = v2.name from master.dbo.spt_values v1, master.dbo.spt_values v2 where v1.name = @srvrolename and v1.low = 0 and v1.type = 'SRV' and v2.low = -1 and v2.type = 'SRV' and v1.number = v2.number end else begin -- RESULT SET FOR ALL SERVER-ROLES select 'ServerRole' = v1.name, 'Description' = v2.name from master.dbo.spt_values v1, master.dbo.spt_values v2 where v1.low = 0 and v1.type = 'SRV' and v2.low = -1 and v2.type = 'SRV' and v1.number = v2.number end return (0) -- sp_helpsrvrole <EЎлG Ѕ8create proc sp_user_counter10 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 10', @newvalue) <*ОeH r8 /* 8.0 version */ create procedure sp_schemata_rowset ( @schema_name sysname = null, @schema_owner sysname = null ) as select distinct CATALOG_NAME = db_name(), SCHEMA_NAME = user_name(o.uid), SCHEMA_OWNER = user_name(o.uid), DEFAULT_CHARACTER_SET_CATALOG = convert(sysname,N'master'), DEFAULT_CHARACTER_SET_SCHEMA = convert(sysname,N'dbo'), DEFAULT_CHARACTER_SET_NAME = convert(sysname,a_cha.name) from sysobjects o, master.dbo.syscharsets a_cha /* charset/1001, not sortorder */ where (@schema_name is null or @schema_name = user_name(o.uid)) and (@schema_owner is null or @schema_owner = user_name(o.uid)) and a_cha.type = 1001 /* type is charset */ and a_cha.id = convert(tinyint, DatabasePropertyEx(db_name(), 'sqlcharset')) /* what is charset of a table? */ order by 2 <*ОeH Ъ8 /* The following stored procedure is used for Sphinx and Hydra */ create procedure sp_schemata_rowset;3 as select CATALOG_NAME = convert(sysname,' '), SCHEMA_NAME = convert(sysname,' '), SCHEMA_OWNER = convert(sysname,' '), DEFAULT_CHARACTER_SET_CATALOG = convert(sysname,' '), DEFAULT_CHARACTER_SET_SCHEMA = convert(sysname,' '), DEFAULT_CHARACTER_SET_NAME = convert(sysname,' ') where 1=0 <TШšH ƒ8CREATE PROCEDURE sp_srvrolepermission @srvrolename sysname = NULL AS if @srvrolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from master.dbo.spt_values where name = @srvrolename and low = 0 and type = 'SRV') begin raiserror(15412, -1, -1, @srvrolename) return (1) end -- RESULT SET FOR SINGLE SERVER-ROLE select distinct 'ServerRole' = v1.name, 'Permission' = v2.name from master.dbo.spt_values v1, master.dbo.spt_values v2 where v1.name = @srvrolename and v1.low = 0 and v1.type = 'SRV' and ((v2.type = 'SRV' and ((v1.number = 16 and v1.number <= v2.number) or (v1.number <> 16 and v1.number = v2.number))) or (v2.type = 'DBR' and v1.number = 16 and not (v2.name like N'No %'))) and v2.low > 0 order by v1.name, v2.name end else begin -- RESULT SET FOR ALL SERVER-ROLES select distinct 'ServerRole' = v1.name, 'Permission' = v2.name from master.dbo.spt_values v1, master.dbo.spt_values v2 where v1.low = 0 and v1.type = 'SRV' and ((v2.type = 'SRV' and ((v1.number = 16 and v1.number <= v2.number) or (v1.number <> 16 and v1.number = v2.number))) or (v2.type = 'DBR' and v1.number = 16 and not (v2.name like N'No %'))) and v2.low > 0 order by v1.name, v2.name end return (0) -- sp_srvrolepermission 0Ч 1) begin raiserror(15110,-1,-1) return (1) end -- MAKE THE FOLLOWING REMOVE/REMAP/DELETES ATOMIC -- begin transaction -- REMAP DBO TO NEW SID -- update sysusers set sid = @newsid, status = @status, updatedate = getdate() where name = 'dbo' -- REMOVE OTHER DBO-ALIASES IF REMAPPING NOT REQUESTED -- if lower(@map) <> 'true' begin delete from sysusers where isaliased = 1 and altuid = user_id('dbo') raiserror(15500,-1,-1) end else raiserror(15499,-1,-1) -- nothing to do to -- REFLECT NEW OWNER IN SYSDATABASES -- update master.dbo.sysdatabases set sid = @newsid where dbid = db_id() commit transaction -- CHECKPOINT DATABASE TO FORCE CHANGES TO IN-MEMORY STRUCTURE -- checkpoint raiserror(15501,-1,-1) grant all to null return (0) -- sp_changedbowner <šAџD Ѓ8create proc sp_user_counter7 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 7', @newvalue) <Љ[ОE B8----------------------------------------------------- -- NOTE: FOR INTERNAL USE ONLY (sp_certify_removable) -- DO NOT DOCUMENT OR USE! ----------------------------------------------------- create procedure sp_check_removable_sysusers @autofix varchar(4) -- true or other as -- CHECK FOR DATABASE OWNED BY SQL USER -- if exists (select name from sysusers where name = 'dbo' and issqluser = 1 and sid <> suser_sid('sa')) begin if @autofix <> 'auto' begin raiserror(15258,-1,-1) return(1) end -- MAKE SA THE DBO -- raiserror(15502,-1,-1) update sysusers set sid = suser_sid('sa'), status = 2, updatedate = getdate() where name = 'dbo' end -- CHECK FOR PERMISSIONS GRANTED TO or BY SQL USERS -- if exists (select grantee from syspermissions where grantee in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) OR exists (select grantor from syspermissions where grantor in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) begin if @autofix = 'auto' PRINT 'CANNOT AUTO-AUTOFIX GRANT-WITH-GRANT CHAINS' raiserror(15053,-1,-1) return(1) end -- CHECK FOR OBJECTS OWNED BY SQL USERS -- if exists (select uid from sysobjects where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) begin if @autofix <> 'auto' begin raiserror(15053,-1,-1) return(1) end -- ASSIGN DBO AS OWNER OF OTHER OBJECTS (MAY FAIL WITH DUPL!) -- raiserror(15503,-1,-1) update sysobjects set uid = 1 where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4) if @@error <> 0 return (1) end -- CHECK FOR TYPES OWNED BY SQL USERS -- if exists (select uid from systypes where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) begin if @autofix <> 'auto' begin raiserror(15053,-1,-1) return(1) end -- ASSIGN DBO AS OWNER OF TYPES -- raiserror(15503,-1,-1) update systypes set uid = 1 where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4) end -- CHECK FOR ROLES OWNED BY SQL USERS -- if exists (select altuid from sysusers where (issqlrole = 1 or isapprole = 1) and altuid in (select uid from sysusers u where u.issqluser = 1 and u.uid > 4)) begin if @autofix <> 'auto' begin raiserror(15053,-1,-1) return(1) end -- ASSIGN DBO AS OWNER OF TYPES -- raiserror(15503,-1,-1) update sysusers set altuid = 1, updatedate = getdate() where (issqlrole = 1 or isapprole = 1) and altuid in (select uid from sysusers u where u.issqluser = 1 and u.uid > 4) end -- CHECK FOR SQL LOGINS AS USERS -- if exists (select uid from sysusers where issqluser = 1 and uid > 4) begin if @autofix <> 'auto' begin raiserror(15254,-1,-1) return(1) end -- DELETE SQL USERS AND DEPENDENT ALIASES -- raiserror(15504,-1,-1) delete from sysusers where issqluser = 1 and uid > 4 delete from sysusers where isaliased = 1 and user_name(altuid) is null end -- CHECK FOR SQL LOGINS ALIASED -- if exists (select uid from sysusers where isaliased = 1 and isntname = 0) begin if @autofix <> 'auto' begin raiserror(15254,-1,-1) return(1) end -- DELETE ALIASED SQL USERS -- raiserror(15504,-1,-1) delete from sysusers where isaliased = 1 and isntname = 0 end -- Success return 0 <гeѓE Ѓ8create proc sp_user_counter8 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 8', @newvalue) <Иu}F Ј8 /* 8.0 version */ create procedure sp_procedures_rowset ( @procedure_name sysname, @group_number int = 1, @procedure_schema sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(p.number,5))), PROCEDURE_TYPE = convert(smallint, 3 /*DB_PT_FUNCTION*/), PROCEDURE_DEFINITION = convert(nvarchar(1),null), DESCRIPTION = convert(nvarchar(1),null), DATE_CREATED = o.crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects o, syscomments p where permissions(o.id) <> 0 and o.name = @procedure_name and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.type in ('P', 'FN', 'TF', 'IF') /* Object type of Procedure */ and p.colid = 1 and p.id = o.id and p.number = @group_number order by 2, 3 0ŽkHF€ w8 create procedure dbo.sp_MSrepl_startup as exec sys.sp_MSrepl_startup_internal !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!FюЃa О `‚зе<\žжЊP07"ОЋє<7жC v8CREATE PROCEDURE sp_change_users_login @Action varchar(10) -- REPORT / UPDATE_ONE / AUTO_FIX ,@UserNamePattern sysname = Null ,@LoginName sysname = Null ,@Password sysname = Null AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @exec_stmt nvarchar(430) declare @ret int, @FixMode char(5), @cfixesupdate int, -- count of fixes by update @cfixesaddlogin int, -- count of fixes by sp_addlogin @dbname sysname, @loginsid varbinary(85), @110name sysname -- SET INITIAL VALUES -- select @dbname = db_name(), @cfixesupdate = 0, @cfixesaddlogin = 0 -- ERROR IF IN USER TRANSACTION -- if @@trancount > 0 begin raiserror(15289,-1,-1) return (1) end -- INVALIDATE USE OF SPECIAL LOGIN/USER NAMES -- if suser_sid(@LoginName) = 0x1 -- 'sa' begin raiserror(15287,-1,-1,@LoginName) return (1) end if user_id(@UserNamePattern) in (1,0,3,4) --dbo, public, INFORMATION_SCHEMA, system_function_schema begin raiserror(15287,-1,-1,@UserNamePattern) return (1) end -- HANDLE REPORT -- if upper(@Action) = 'REPORT' begin -- VALIDATE PARAMS -- if @UserNamePattern IS NOT Null or @LoginName IS NOT Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- GENERATE REPORT -- select UserName = name, UserSID = sid from sysusers where issqluser = 1 and (sid is not null and sid <> 0x0) and suser_sname(sid) is null order by name return (0) end -- HANDLE UPDATE_ONE -- if upper(@Action) = 'UPDATE_ONE' begin -- CHECK PERMISSIONS -- if not is_member('db_owner') = 1 begin raiserror(15247,-1,-1) return (1) end -- ERROR IF PARAMS NULL -- if @UserNamePattern IS Null or @LoginName IS Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- VALIDATE PARAMS -- -- Can ONLY remap SQL Users to SQL Logins! Should be no need -- for re-mapping NT logins, and if you try, you'll mess up -- the user status bits! if not exists (select name from sysusers where name = @UserNamePattern -- match user name and issqluser = 1) -- must be sql user begin raiserror(15291,-1,-1,'User',@UserNamePattern) return (1) end select @loginsid = sid from master.dbo.syslogins where loginname = @LoginName -- match login name and isntname = 0 -- cannot use nt logins if @loginsid is null begin raiserror(15291,-1,-1,'Login',@LoginName) return (1) end -- ERROR IF SID ALREADY IN USE IN DATABASE -- if exists (select sid from sysusers where sid = @loginsid and name <> @UserNamePattern) begin raiserror(15063,-1,-1) return (1) end -- CHANGE THE USERS LOGIN (SID) -- update sysusers set sid = @loginsid, updatedate = getdate() where name = @UserNamePattern and issqluser = 1 and sid <> @loginsid -- FINALIZATION: REPORT (ONLY IF NOT SUCCESSFUL) AND EXIT -- if @@error <> 0 or @@rowcount <> 1 raiserror(15295,-1,-1, 0) return (0) end -- ERROR IF NOT AUTO_FIX -- if upper(@Action) <> 'AUTO_FIX' begin raiserror(15286,-1,-1,@Action) return (1) end -- HANDLE AUTO_FIX -- -- CHECK PERMISSIONS -- if not is_srvrolemember('sysadmin') = 1 begin raiserror(15247,-1,-1) return (1) end -- VALIDATE PARAMS -- if @UserNamePattern IS Null or @LoginName IS NOT Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- LOOP THRU ORPHANED USERS -- select @exec_stmt = 'DECLARE ms_crs_110_Users cursor global for select name from sysusers where name = N' + quotename( @UserNamePattern , '''')+ ' and issqluser = 1 and suser_sname(sid) is null' EXECUTE (@exec_stmt) OPEN ms_crs_110_Users WHILE (110=110) begin FETCH next from ms_crs_110_Users into @110name if (@@fetch_status <> 0) begin DEALLOCATE ms_crs_110_Users BREAK end -- IS NAME ALREADY IN USE? -- -- if suser_sid(@110name) is null if not exists(select * from master.dbo.syslogins where loginname = @110name) begin -- VALIDATE PARAMS -- if @Password IS Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- ADD LOGIN -- execute @ret = sp_addlogin @110name, @Password, @dbname if @ret <> 0 or suser_sid(@110name) is null begin raiserror(15497,16,1,@110name) deallocate ms_crs_110_Users return (1) end select @FixMode = '1AddL' raiserror(15293,-1,-1,@110name) end ELSE begin Select @FixMode = '2UpdU' Raiserror(15292,-1,-1,@110name) end -- REPORT ERROR & CONTINUE IF DUPLICATE SID IN DB -- select @loginsid = suser_sid(@110name) if user_sid(@loginsid) is not null begin raiserror(15331,-1,-1,@110name) CONTINUE end -- UPDATE SYSUSERS ROW -- update sysusers set sid = @loginsid, updatedate = getdate(), status = (status & ~1) | 2 where name = @110name if @@error <> 0 begin raiserror(15498,17,127) deallocate ms_crs_110_Users return (1) end if @FixMode = '1AddL' Select @cfixesaddlogin = @cfixesaddlogin + 1 else Select @cfixesupdate = @cfixesupdate + 1 end -- loop 110 -- REPORT AND RETURN SUCCESS -- raiserror(15295,-1,-1,@cfixesupdate) raiserror(15294,-1,-1,@cfixesaddlogin) return (0) -- sp_change_users_login <a D Ѓ8create proc sp_user_counter6 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 6', @newvalue) 0#`D %8((0))!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!yж`иж<Ь2зЇ7"ЖЃв< ЁC в8create procedure sp_procedure_params_rowset;2 ( @procedure_schema sysname = null, @parameter_name sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = c.name, ORDINAL_POSITION = convert(smallint, c.colid), PARAMETER_TYPE = convert(smallint, 1+c.isoutparam), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit,ColumnProperty(c.id,c.name,'AllowsNull')), DATA_TYPE = d.oledb_data_type, CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.prec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = d.type_name, LOCAL_TYPE_NAME = d.local_type_name from sysobjects o, syscolumns c, master.dbo.spt_provider_types d, systypes t where (o.type in ('P', 'TF', 'IF') OR (len(c.name) > 0 and o.type = 'FN')) and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.id = c.id and (o.type = 'P' or (c.number = 0 and o.type = 'FN') or (c.number = 1 and o.type in ('TF', 'IF'))) and c.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and (@parameter_name is null or @parameter_name = c.name) UNION ALL SELECT /* return value row*/ PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = convert(sysname,'@RETURN_VALUE'), ORDINAL_POSITION = convert(smallint,0), PARAMETER_TYPE = convert(smallint, 4 /*DBPARAMTYPE_RETURNVALUE*/), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit,0), DATA_TYPE = convert(smallint, 3 /*DBTYPE_I4*/), CHARACTER_MAXIMUM_LENGTH= convert(int,null), CHARACTER_OCTET_LENGTH = convert(int,null), NUMERIC_PRECISION = convert(smallint,10), NUMERIC_SCALE = convert(smallint,null), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = convert(sysname,N'int'), LOCAL_TYPE_NAME = convert(sysname,N'int') from sysobjects o, syscomments c where o.type = 'P' /* Just Procedures */ and o.id = c.id and c.colid = 1 and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and (@parameter_name is null or @parameter_name = '@RETURN_VALUE') UNION ALL SELECT /* UDF return value row*/ PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = convert(sysname,'@RETURN_VALUE'), ORDINAL_POSITION = convert(smallint, 0), PARAMETER_TYPE = convert(smallint, 4 /*DBPARAMTYPE_RETURNVALUE*/), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit, c.isnullable), DATA_TYPE = d.oledb_data_type, CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.prec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = d.type_name, LOCAL_TYPE_NAME = d.local_type_name from sysobjects o, syscolumns c, master.dbo.spt_provider_types d, systypes t where o.id = c.id and c.number = 0 and c.colid = 0 and o.type = 'FN' /* UDF scalar functions */ and c.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and (@parameter_name is null or @parameter_name = '@RETURN_VALUE') UNION ALL SELECT /* UDF table value row*/ PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), PARAMETER_NAME = convert(sysname,'@TABLE_RETURN_VALUE'), ORDINAL_POSITION = convert(smallint, 0), PARAMETER_TYPE = convert(smallint, 4 /*DBPARAMTYPE_RETURNVALUE*/), PARAMETER_HASDEFAULT = convert(tinyint, 0), PARAMETER_DEFAULT = convert(nvarchar(255),null), IS_NULLABLE = convert(bit,0), DATA_TYPE = convert(smallint, 0), /*DBTYPE_EMPTY*/ CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.prec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DESCRIPTION = convert(nvarchar(1),null), TYPE_NAME = N'table', LOCAL_TYPE_NAME = N'table' from sysobjects o, syscolumns c, master.dbo.spt_provider_types d where o.id = c.id and c.number = 0 and c.colid = 1 and o.type in ('TF', 'IF') /* UDF table functions */ and c.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and (@parameter_name is null or @parameter_name = '@TABLE_RETURN_VALUE') order by 2, 3, 5 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`йз<Р:иГX`$vКUR<ўюсB ѓ8create procedure sp_changegroup @grpname sysname, -- name of new role @username sysname -- user to switch as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @uid smallint, @ruid smallint, @cnt int, @ret int, @oldgrp sysname select @ruid = uid from sysusers where name = @grpname and issqlrole = 1 -- ERROR IF GROUP NOT FOUND -- if @ruid is null begin raiserror(15014,-1,-1,@grpname) return (1) end -- LIMIT TO USERS WITH ACCESS (BACKWARD COMPAT ONLY!) -- select @uid = uid from sysusers where name = @username and (issqluser = 1 or isntuser = 1) and hasdbaccess = 1 if @uid is null begin raiserror(15008,-1,-1,@username) return (1) end -- ONLY VALID IF USER IS MEMBER OF NO MORE THAN ONE GROUP -- select @cnt = count(*) from sysmembers where memberuid = @uid if @cnt > 1 begin raiserror(15415, -1, -1) return (1) end -- AUDIT SUCCESSFUL SECURITY CHECK -- dbcc auditevent (110, 3, 1, NULL, @username, @grpname, NULL) -- REMOVE MEMBERSHIP IF NEEDED -- if (@cnt = 1) begin select @oldgrp = user_name(groupuid) from sysmembers where memberuid = @uid execute @ret = sp_droprolemember @oldgrp, @username if @ret <> 0 return (1) end -- ADD MEMBERSHIP -- if (@grpname <> 'public') begin execute @ret = sp_addrolemember @grpname, @username if @ret <> 0 return (1) end -- FINALIZATION: RETURN SUCCESS -- raiserror(15496,-1,-1) return (0) -- sp_changegroup <(љC Ѓ8create proc sp_user_counter5 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 5', @newvalue) < ЁC D€8RihА$ -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!іS`ки<Э+йЇщ7"Ъo<ŒІљ@  8CREATE PROCEDURE sp_addrolemember @rolename sysname, @membername sysname AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @roluid smallint, @owner smallint, @memuid smallint, @ret int declare @ruidbyte smallint, @ruidbit smallint declare @proc nvarchar(50) -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addrolemember') return (1) end --cannot change membership of public if @rolename = 'public' begin raiserror(15081, -1,-1) return(1) end -- ROLE NAME (OBTAIN OWNER FOR PERMISSIONS) -- select @roluid = uid, @owner = altuid from sysusers where name = @rolename and issqlrole = 1 -- ERROR IF ROLE NOT FOUND OR PUBLIC -- if @roluid is null begin raiserror(15014,-1,-1,@rolename) return (1) end -- CHECK PERMISSIONS -- -- Only member of db_owner can add members to db-fixed roles -- if (not is_member('db_owner') = 1) and (not (@roluid < 16400 and is_member('db_owner') = 1)) and (not (@roluid >= 16400 and is_member('db_securityadmin') = 1)) and (not (@roluid >= 16400 and is_member(user_name(@owner)) = 1)) begin dbcc auditevent (110, 1, 0, NULL, @membername, @rolename, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (110, 1, 1, NULL, @membername, @rolename, NULL) end -- CHECK MEMBER NAME (ATTEMPT ADDING IMPLICIT ROW FOR NT NAME) -- select @memuid = uid from sysusers where name = @membername and isaliased = 0 if @memuid is null begin execute @ret = sp_MSadduser_implicit_ntlogin @membername select @memuid = uid from sysusers where name = @membername and isaliased = 0 end if @memuid is null begin raiserror(15410, -1, -1, @membername) return (1) end -- CANNOT CHANGE MEMBERSHIP OF FIXED ROLES OR DBO -- if @memuid in (1,0,3,4) --dbo, public, INFORMATION_SCHEMA, system_function_schema or (@memuid >= 16384 and @memuid < 16400) begin raiserror(15405, -1 ,-1, @membername) return (1) end -- CHECK FOR CIRCULAR MEMBERSHIPS -- if is_userinrole(@rolename, @membername) = 1 begin raiserror(15413, -1, -1) return (1) end -- SET ROLE BIT FOR THIS USER select @ruidbyte = ((@roluid - 16384) / 8) + 1 , @ruidbit = power(2, @roluid & 7) update sysusers set roles = convert(varbinary(2048), substring(convert(binary(2048), roles), 1, @ruidbyte-1) + convert(binary(1), (@ruidbit) | substring(convert(binary(2048), roles), @ruidbyte, 1)) + substring(convert(binary(2048), roles), @ruidbyte+1, 2048-@ruidbyte) ), updatedate = getdate() where uid = @memuid -- END ROLE BIT MANIPULATION -- INVALIDATE CACHED PERMISSIONS (MEMBERSHIP CHANGES PERMISSIONS) -- select @ret = @@error -- save success state grant all to null -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 or @ret <> 0 return (1) raiserror(15488,-1,-1,@membername,@rolename) return (0) -- sp_addrolemember <ЖА.A Ѓ8create proc sp_user_counter3 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 3', @newvalue) <ХЪэA v 8CREATE PROCEDURE sp_droprolemember @rolename sysname, @membername sysname AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @roluid smallint, @owner smallint, @memuid smallint, @ret int declare @ruidbyte smallint, @ruidbit smallint declare @proc nvarchar(50) -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_droprolemember') return (1) end --cannot change membership of public if @rolename = 'public' begin raiserror(15081, -1,-1) return(1) end -- ROLE NAME (OBTAIN OWNER FOR PERMISSIONS) -- select @roluid = uid, @owner = altuid from sysusers where name = @rolename and issqlrole = 1 -- ERROR IF ROLE NOT FOUND OR PUBLIC -- if @roluid is null begin raiserror(15409,-1,-1,@rolename) return (1) end -- CHECK PERMISSIONS -- -- Only member of db_owner can drop members from db-fixed roles -- if (not is_member('db_owner') = 1) and (not (@roluid < 16400 and is_member('db_owner') = 1)) and (not (@roluid >= 16400 and is_member('db_securityadmin') = 1)) and (not (@roluid >= 16400 and is_member(user_name(@owner)) = 1)) begin dbcc auditevent (110, 2, 0, NULL, @membername, @rolename, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (110, 2, 1, NULL, @membername, @rolename, NULL) end -- ERROR IF MEMBER NAME NOT NULL AND NOT FOUND -- select @memuid = uid from sysusers where name = @membername and isaliased = 0 if @memuid is null begin raiserror(15410, -1, -1, @membername) return (1) end -- CANNOT CHANGE MEMBERSHIP OF FIXED ROLES OR DBO -- if @membername in ('dbo','public') or (@memuid >= 16384 and @memuid < 16400) begin raiserror(15405, -1 ,-1, @membername) return (1) end -- CLEAR ROLE BIT FOR THIS USER select @ruidbyte = ((@roluid - 16384) / 8) + 1 , @ruidbit = power(2, @roluid & 7) update sysusers set roles = convert(varbinary(2048), substring(convert(binary(2048), roles), 1, @ruidbyte-1) + convert(binary(1), (~@ruidbit) & substring(convert(binary(2048), roles), @ruidbyte, 1)) + substring(convert(binary(2048), roles), @ruidbyte+1, 2048-@ruidbyte) ), updatedate = getdate() where uid = @memuid -- END ROLE BIT MANIPULATION -- INVALIDATE CACHED PERMISSIONS (MEMBERSHIP CHANGES PERMISSIONS) -- select @ret = @@error -- save success state grant all to null -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 or @ret <> 0 return (1) raiserror(15489,-1,-1,@membername,@rolename) return (0) -- sp_droprolemember <яд"B Ѓ8create proc sp_user_counter4 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 4', @newvalue) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ˆo `лй<IЉкЇЇ7"ъјr<№Sм> \8create procedure sp_primary_keys_rowset;3 ( @table_name sysname = null, @table_schema sysname = null ) as IF @table_name is not NULL BEGIN select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 END ELSE BEGIN select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 END <№Sм> ь8create procedure sp_primary_keys_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_GUID, COLUMN_PROPID, ORDINAL --PK_NAME from master.dbo.SYSREMOTE_PRIMARY_KEYS < @table_server, @table_catalog, @table_schema, @table_name > order by 1,2,3 <^? х8create procedure sp_setapprole @rolename sysname, -- name app role @password sysname, -- password for app role @encrypt varchar(10) = 'none' -- Encryption style ('none' | 'odbc') as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_setapprole') return (1) end -- CHECK PARAMETER if (@rolename IS NULL) begin raiserror(15431,-1,-1) return (1) end -- VALIDATE ENCRYPTION declare @encrStyle int select @encrStyle = case lower(@encrypt) when 'none' then 0 when 'odbc' then 1 else null end if @encrStyle is null begin raiserror(15600,-1,-1,'sp_setapprole') return (1) end -- SP MUST BE CALLED AT ADHOC LEVEL -- if (@@nestlevel > 1) begin raiserror(15422,-1,-1) return (1) end -- ACTIVATE APPROLE (THIS IS ONLY VALID FROM THIS SP!) -- setuser @rolename, @password, @encrStyle -- RETURN SUCCESS/FAILURE -- if (@@error <> 0) return (1) raiserror(15494,-1,-1,@rolename) return (0) -- sp_setapprole <DhF? Ѕ8 create proc sp_user_counter1 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 1', @newvalue) <S‚@ з8create procedure sp_dropapprole @rolename sysname -- role to be dropped as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @uid smallint, @ret int -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) begin raiserror(15247,-1,-1) return (1) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_dropapprole') return (1) end -- ERROR IF ROLE NOT FOUND -- select @uid = uid from sysusers where name = @rolename and isapprole = 1 if @uid is null begin raiserror(15014,-1,-1,@rolename) return (1) end -- CHECK IF ROLE OWNS ANYTHING -- execute @ret = sp_MScheck_uid_owns_anything @uid if @ret <> 0 return (1) -- DROP SYSUSERS AND PROTECTION ENTRIES -- delete from syspermissions where grantee = @uid delete from sysusers where uid = @uid -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 return (1) raiserror(15495,-1,-1) return (0) -- sp_dropapprole <}Œ:@ Ѓ8create proc sp_user_counter2 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 2', @newvalue) <bœФ@ §8 /* Procedure for 8.0 server */ create proc sp_provider_types_rowset ( @data_type smallint = null, @best_match tinyint = null ) as select TYPE_NAME = case when t.usertype = 80 then t.name else d.type_name end, DATA_TYPE = d.oledb_data_type, COLUMN_SIZE = case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then @@max_precision else coalesce(d.column_size,d.data_precision,t.prec) end, LITERAL_PREFIX = d.literal_prefix, LITERAL_SUFFIX = d.literal_suffix, CREATE_PARAMS = convert(nvarchar(32),e.CREATE_PARAMS), IS_NULLABLE = t.allownulls, CASE_SENSITIVE = d.case_sensitive, SEARCHABLE = d.searchable, UNSIGNED_ATTRIBUTE = d.unsigned_attribute, FIXED_PREC_SCALE = d.fixed_prec_scale, AUTO_UNIQUE_VALUE = d.auto_unique_value, LOCAL_TYPE_NAME = case when t.usertype = 80 then t.name else d.local_type_name end, MINIMUM_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then 0 else null end), MAXIMUM_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then @@max_precision else null end), GUID = convert(uniqueidentifier,null), TYPELIB = convert(nvarchar(1),null), VERSION = convert(nvarchar(1),null), IS_LONG = d.is_long, BEST_MATCH = case when t.usertype = 80 then convert(bit,0) else d.best_match end, IS_FIXEDLENGTH = convert(bit, case when d.fixlen is null then 0 else 1 end) from master.dbo.spt_provider_types d INNER JOIN master.dbo.systypes t on d.ss_dtype = t.xtype LEFT OUTER JOIN master.dbo.spt_datatype_info_ext e on t.xusertype = e.user_type and e.AUTO_INCREMENT = 0 where (@data_type is null or d.oledb_data_type = @data_type) and (@best_match is null or d.best_match = @best_match) and t.usertype <= 255 and t.usertype <> 18 /* sysname */ order by 2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ќ 2 ЈМ`мк<№лЇR7"D'<~ є< 18create procedure sp_indexes_rowset;2 ( @index_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, INDEX_CATALOG = db_name(), INDEX_SCHEMA = user_name(o.uid), INDEX_NAME = x.name, PRIMARY_KEY = convert(bit,(x.status & 0x800)/0x800), "UNIQUE" = convert(bit,(x.status & 2)/2), "CLUSTERED" = convert(bit,(x.status & 16)/16), "TYPE" = convert(smallint, 1 /*DBPROPVAL_IT_BTREE*/), FILL_FACTOR = convert(int, x.OrigFillFactor), INITIAL_SIZE = convert(int,null), NULLS = convert(int,null), SORT_BOOKMARKS = convert(bit,0), AUTO_UPDATE = convert(bit,1), NULL_COLLATION = convert(int,4 /*DBPROPVAL_NC_LOW*/), ORDINAL_POSITION = convert(int, xk.keyno), COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), COLLATION = convert(smallint, case when indexkey_property(o.id, x.indid, xk.keyno, 'IsDescending') =1 then 2 /* DB_COLLATION_DESC */ else 1 /* DB_COLLATION_ASC */ end), CARDINALITY = case when (x.status & 2) = 2 then x.rows else null end, PAGES = convert(int, x.dpages), FILTER_CONDITION = convert(nvarchar(1),null), INTEGRATED = convert(bit,(x.status & 16)/16) from sysobjects o, sysindexes x, syscolumns c, sysindexkeys xk where o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and (@index_name is null or @index_name = x.name) and x.id = o.id and o.id = c.id and o.id = xk.id and x.indid = xk.indid and c.colid = xk.colid and xk.keyno <= x.keycnt and permissions(o.id, c.name) <> 0 and (x.status&32) = 0 -- No hypothetical indexes order by 8 desc, 4, 5, 6, 17 <~ є< q8create procedure sp_indexes_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @index_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, INDEX_CATALOG, INDEX_SCHEMA, INDEX_NAME, PRIMARY_KEY, "UNIQUE", "CLUSTERED", "TYPE", FILL_FACTOR, INITIAL_SIZE, NULLS, SORT_BOOKMARKS, AUTO_UPDATE, NULL_COLLATION, ORDINAL_POSITION, COLUMN_NAME, COLUMN_GUID, COLUMN_PROPID, COLLATION, CARDINALITY, PAGES, FILTER_CONDITION -- INTEGRATED from master.dbo.SYSREMOTE_INDEXES < @table_server, @table_catalog, @table_schema, @index_name, NULL, /* TYPE (index type) */ @table_name > order by 8 desc, 4, 5, 6, 17 <Ј)= 8create procedure sp_addapprole @rolename sysname, -- name of new app role @password sysname -- password for app role as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @uid smallint -- CHECK FOR NULL PASSWORD if (@password is null) begin raiserror(15034,-1,-1) return (1) end -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) begin raiserror(15247,-1,-1) return (1) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addapprole') return (1) end -- VALIDATE APPROLE NAME -- execute @ret = sp_validname @rolename if @ret <> 0 return (1) if (charindex('\', @rolename) > 0) begin raiserror(15006,-1,-1,@rolename) return (1) end if @rolename = 'sys' raiserror(15355,-1,-1) -- ERROR IF SYSUSERS NAME ALREADY EXISTS -- if user_id(@rolename) is not null OR @rolename IN ('system_function_schema','INFORMATION_SCHEMA') begin raiserror(15363,-1,-1,@rolename) return (1) end -- OBTAIN NEW APPROLE UID (RESERVE 1-4) -- if user_name(5) IS NULL select @uid = 5 else select @uid = min(uid)+1 from sysusers where uid >= 5 and uid < (16384 - 1) -- stay in users range and user_name(uid+1) is null -- uid not in use if @uid is null begin raiserror(15065,-1,-1) return (1) end -- INSERT THE ROW INTO SYSUSERS -- insert into sysusers values (@uid, 32, @rolename, NULL, 0x00, getdate(), getdate(), 1, convert(varbinary(256), pwdencrypt(@password))) -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 return (1) raiserror(15425,-1,-1) return (0) -- sp_addapprole <с9> 28CREATE PROCEDURE sp_approlepassword @rolename sysname, -- name of app role @newpwd sysname -- new password AS declare @roluid smallint -- CHECK FOR NULL PASSWORD if (@newpwd is null) begin raiserror(15034,-1,-1) return (1) end -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) begin dbcc auditevent (112, 1, 0, NULL, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (112, 1, 1, NULL, NULL, @rolename, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002, -1, -1, 'sp_approlepassword') return (1) end -- ROLE UID (OBTAIN OWNER FOR PERMISSIONS) -- -- @pwd will be encrypted. select @roluid = uid from sysusers where name = @rolename and isapprole = 1 -- ERROR IF APP ROLE NOT FOUND -- if @roluid is null begin raiserror(15014, -1, -1, @rolename) return (1) end -- CHANGE PASSWORD -- update sysusers set password = convert(varbinary(256), pwdencrypt(@newpwd)), updatedate = getdate() where uid = @roluid raiserror(15423,-1,-1,@rolename) return (0) -- sp_approlepassword <№Sм> ”8 /* Procedure for 8.0 servers */ create procedure sp_primary_keys_rowset ( @table_name sysname, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 order by 2, 3 <№Sм> <8create procedure sp_primary_keys_rowset;2 ( @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 order by 2, 3 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ш4 ‘`нл<b–мГP_$WЦŸ<тИж: $8create procedure sp_resolve_logins @dest_db sysname ,@dest_path nvarchar(255) ,@filename nvarchar(255) as -- SETUP RUNTIME OPTIONS AND -- DECLARE VARIABLES SET NOCOUNT ON DECLARE @retcode int -- return value of xp call ,@datafiletype varchar(255) ,@command nvarchar(255) ,@lgnname sysname ,@lgnsid varbinary(85) ,@usrname sysname -- CHECK PERMISSIONS IF (ISNULL(IS_SRVROLEMEMBER(N'sysadmin'), 0) <> 1) BEGIN RAISERROR(15247, 16, 1) RETURN(1) -- Failure END -- ERROR IF IN USER TRANSACTION IF @@trancount > 0 BEGIN raiserror(15289,-1,-1) RETURN (1) END -- Validate the directory the dat file is in. -- Remove heading and trailing spaces SELECT @dest_path = RTRIM(LTRIM(@dest_path)) -- If the last char is '\', remove it. IF substring(@dest_path, len(@dest_path),1) = '\' SELECT @dest_path = substring(@dest_path, 1, len(@dest_path)-1) -- Don't do validation if it is a UNC path due to security problem. -- If the server is started as a service using local system account, we -- don't have access to the UNC path. IF substring(@dest_path, 1,2) <> '\\' BEGIN SELECT @command = 'dir "' + @dest_path + '"' exec @retcode = master..xp_cmdshell @command, 'no_output' IF @@error <> 0 RETURN (1) IF @retcode <> 0 BEGIN raiserror (14430, 16, -1, @dest_path) RETURN (1) END END -- CREATE the temp table for the datafile -- This method ensures we are always getting the -- real table definition of the syslogins table. SELECT * INTO #sysloginstemp FROM syslogins WHERE sid = 0x00 truncate TABLE #sysloginstemp -- BULK INSERT the file into the temp table. SET @dest_path = @dest_path + '\' + @filename SET @datafiletype = '''widenative''' EXEC(' BULK INSERT #sysloginstemp FROM ''' + @dest_path + ''' WITH ( DATAFILETYPE = ' + @datafiletype + ' ,KEEPNULLS) ') -- UPDATE the SID in the destination database to the value in the current server's -- syslogins table ensuring that the names match between the source and destination -- syslogins tables. Do this by cursoring through each login and executing -- sp_change_users_login for each login that require a SID resynch. -- DECLARE & OPEN CURSOR over old login names DECLARE loginmapping CURSOR LOCAL FOR SELECT name, sid FROM #sysloginstemp OPEN loginmapping FETCH loginmapping INTO @lgnname, @lgnsid WHILE (@@fetch_status >= 0) BEGIN -- GET NAME OF USER THAT NEEDS TO BE RE-MAPPED FOR THIS LOGIN SELECT @usrname = NULL -- INIT TO NULL IN CASE OF NO MATCH SELECT @usrname = u.name FROM dbo.sysusers u ,master.dbo.syslogins l WHERE u.sid = @lgnsid AND l.loginname = @lgnname AND l.sid <> u.sid -- IF WE HAVE A USER NAME, DO THE REMAPPING IF @usrname IS NOT NULL EXEC ('EXEC ' + @dest_db + '.dbo.sp_change_users_login Update_One, ' + @usrname + ',' + @lgnname) -- GET NEXT LOGIN-MAPPING FETCH loginmapping INTO @lgnname, @lgnsid END CLOSE loginmapping DEALLOCATE loginmapping -- RETURN SUCCESS/FAILURE IF @@ERROR <> 0 RETURN (1) RETURN (0) <6Э@; Щ8create procedure sp_droprole @rolename sysname -- role to be dropped as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @uid smallint, @owner sysname, @ret int -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_droprole') return (1) end -- ROLE NAME (OBTAIN OWNER FOR PERMISSIONS) -- select @uid = uid, @owner = user_name(altuid) from sysusers where name = @rolename and issqlrole = 1 -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) and (@owner is NULL or not is_member(@owner) = 1) begin dbcc auditevent (111, 2, 0, NULL, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (111, 2, 1, NULL, NULL, @rolename, NULL) end -- ERROR IF ROLE NOT FOUND -- if @uid is null begin raiserror(15014,-1,-1,@rolename) return (1) end -- ERROR IF FIXED ROLE or PUBLIC ROLE-- if @uid < 16400 or @uid = 0 begin raiserror(15142,-1,-1, @rolename) return (1) end -- ERROR IF ANYONE IS MEMBER OF ROLE (DISPLAYS MEMBERS) -- if exists (select * from sysmembers where groupuid = @uid) begin raiserror(15144,-1,-1) select name = user_name(memberuid) from sysmembers where groupuid = @uid return (1) end -- CHECK IF ROLE OWNS ANYTHING -- execute @ret = sp_MScheck_uid_owns_anything @uid if @ret <> 0 return (1) -- DROP SYSUSERS AND PROTECTION ENTRIES -- delete from syspermissions where grantee = @uid delete from sysusers where uid = @uid -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 return (1) raiserror(15493,-1,-1) return (0) -- sp_droprole <oё4< Э8create procedure sp_dropgroup @rolename sysname -- name of role to drop as declare @ret int execute @ret = sp_droprole @rolename return @ret <~ є< |8 /* 8.0 version */ create procedure sp_indexes_rowset ( @table_name sysname, @index_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, INDEX_CATALOG = db_name(), INDEX_SCHEMA = user_name(o.uid), INDEX_NAME = x.name, PRIMARY_KEY = convert(bit,(x.status & 0x800)/0x800), "UNIQUE" = convert(bit,(x.status & 2)/2), "CLUSTERED" = convert(bit,(x.status & 16)/16), "TYPE" = convert(smallint, 1 /*DBPROPVAL_IT_BTREE*/), FILL_FACTOR = convert(int, x.OrigFillFactor), INITIAL_SIZE = convert(int,null), NULLS = convert(int,null), SORT_BOOKMARKS = convert(bit,0), AUTO_UPDATE = convert(bit,1), NULL_COLLATION = convert(int,4 /*DBPROPVAL_NC_LOW*/), ORDINAL_POSITION = convert(int, xk.keyno), COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), COLLATION = convert(smallint, case when indexkey_property(o.id, x.indid, xk.keyno, 'IsDescending') =1 then 2 /* DB_COLLATION_DESC */ else 1 /* DB_COLLATION_ASC */ end), CARDINALITY = case when (x.status & 2) = 2 then x.rows else null end, PAGES = convert(int, x.dpages), FILTER_CONDITION = convert(nvarchar(1),null), INTEGRATED = convert(bit,(x.status & 16)/16) from sysobjects o, sysindexes x, syscolumns c, sysindexkeys xk where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and (@index_name is null or @index_name = x.name) and x.id = o.id and o.id = c.id and o.id = xk.id and x.indid = xk.indid and c.colid = xk.colid and xk.keyno <= x.keycnt and permissions(o.id, c.name) <> 0 and (x.status&32) = 0 -- No hypothetical indexes order by 8 desc, 4, 5, 6, 17 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!M„`ом <„hнГH^$ єЇ<aV/8 ™8create procedure sp_check_constbytable_rowset;2 ( @table_schema sysname = null, @constraint_name sysname = null, @constraint_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(t_obj.uid), TABLE_NAME = t_obj.name, CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, CHECK_CLAUSE = m.text, DESCRIPTION = convert(nvarchar(1), null) from sysobjects c_obj, sysobjects t_obj, syscomments m where t_obj.type in ('U ','S ') and (@table_schema is null or @table_schema = user_name(t_obj.uid)) and c_obj.parent_obj = t_obj.id and c_obj.type = 'C ' and (@constraint_name is null or c_obj.name = @constraint_name) and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and m.id = c_obj.id order by 1,2,3,4,5,6 <‹`d8 Ж8create procedure sp_dropalias @loginame sysname -- login who is currently aliased as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @sid varbinary(85) -- CHECK PERMISSIONS -- if (not is_member('db_accessadmin') = 1) and (not is_member('db_owner') = 1) begin raiserror(15247,-1,-1) return (1) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_dropalias') return (1) end -- VALIDATE LOGIN NAME (OBTAIN SID) -- if charindex('\', @loginame) = 0 select @sid = suser_sid(@loginame) -- sql user if @sid is null begin select @sid = get_sid('\U'+@loginame, NULL) -- nt user if @sid is null begin -- Check directly for alias in sysusers SELECT @sid = sid FROM sysusers WHERE isaliased = 1 AND name = '\'+@loginame if @sid is null begin if charindex('\', @loginame) = 0 raiserror(15007,-1,-1,@loginame) else raiserror(15401,-1,-1,@loginame) return (1) end end end -- DELETE THE ALIAS (IF ANY) -- delete from sysusers where sid = @sid and isaliased = 1 -- ERROR IF NO ROW DELETED -- if @@rowcount = 0 begin raiserror(15134,-1,-1) return (1) end -- FINALIZATION: PRINT/RETURN SUCCESS -- raiserror(15492,-1,-1) return (0) -- sp_dropalias <ppю8 D€8сJhЂg<Ѓ<Ф„X9 Ф 8create procedure sp_addrole @rolename sysname, -- name of new role @ownername sysname = 'dbo' -- name of owner of new role as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @uid smallint, @owner smallint -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) begin dbcc auditevent (111, 1, 0, NULL, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (111, 1, 1, NULL, NULL, @rolename, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addrole') return (1) end -- RESOLVE OWNER NAME -- select @owner = uid from sysusers where name = @ownername and isaliased = 0 AND uid NOT IN (0,3,4) --public/INFO_SCHEMA/etc can't own role if @owner is null begin raiserror(15008,-1,-1,@ownername) return (1) end -- VALIDATE ROLE NAME -- execute @ret = sp_validname @rolename if @ret <> 0 return (1) if (charindex('\', @rolename) > 0) begin raiserror(15006,-1,-1,@rolename) return (1) end if @rolename = 'sys' raiserror(15355,-1,-1) -- ERROR IF SYSUSERS NAME ALREADY EXISTS -- if user_id(@rolename) is not null OR @rolename IN ('system_function_schema','INFORMATION_SCHEMA') begin if exists (select name from sysusers where issqlrole = 1 and name = @rolename) raiserror(15363,-1,-1,@rolename) else raiserror(15023,-1,-1,@rolename) return (1) end -- OBTAIN NEW ROLE UID (RESERVE 16384-16399) -- if user_name(16400) IS NULL select @uid = 16400 else select @uid = min(uid)+1 from sysusers where uid >= 16400 and uid < (32767 - 1) -- stay in role range and user_name(uid+1) is null -- uid not in use if @uid is null begin raiserror(15065,-1,-1) return (1) end -- INSERT THE ROW INTO SYSUSERS -- insert into sysusers values (@uid, 0, @rolename, NULL, 0x00, getdate(), getdate(), @owner, NULL) -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 return (1) raiserror(15424,-1,-1) return (0) -- sp_addrole <Љ”т9 Y8-- ============================================= -- sp_MShasdbaccess -- ============================================= -- List all databases a user has access to -- along with their db properties -- -- PARAMETERS: N/A -- -- REMARKS: for SQL Server 7.0 and 8.0 -- ============================================= create proc sp_MShasdbaccess as set nocount on set deadlock_priority low select name as 'dbname', owner = substring(suser_sname(sid), 1, 24), DATABASEPROPERTY(name, N'IsDboOnly') as 'DboOnly', DATABASEPROPERTY(name, N'IsReadOnly') as 'ReadOnly', DATABASEPROPERTY(name, N'IsSingleUser') as 'SingleUser', DATABASEPROPERTY(name, N'IsDetached') as 'Detached', DATABASEPROPERTY(name, N'IsSuspect') as 'Suspect', DATABASEPROPERTY(name, N'IsOffline') as 'Offline', DATABASEPROPERTY(name, N'IsInLoad') as 'InLoad', DATABASEPROPERTY(name, N'IsEmergencyMode') as 'EmergencyMode', DATABASEPROPERTY(name, N'IsInStandBy') as 'StandBy', DATABASEPROPERTY(name, N'IsShutdown') as 'ShutDown', DATABASEPROPERTY(name, N'IsInRecovery') as 'InRecovery', DATABASEPROPERTY(name, N'IsNotRecovered') as 'NotRecovered' from master.dbo.sysdatabases where has_dbaccess(name) = 1 order by name -- ============================================= -- end sp_MShasdbaccess -- ============================================= <гž: \€8l=hЄа>Ѕ8^ІudЊ<гž: \€8ж,hЇа>Ћ8^Ќad-<гž: \€8Ўrh­а>Ў8^ЏcЊ<гž: 8create procedure sp_foreign_keys_rowset;5 ( @server_name sysname, @pk_catalog_name sysname = null, @fk_catalog_name sysname = null, @pk_table_name sysname = null, @pk_table_schema sysname = null, @fk_table_name sysname = null, @fk_table_schema sysname = null ) as select PK_TABLE_CATALOG, PK_TABLE_SCHEMA, PK_TABLE_NAME, PK_COLUMN_NAME, PK_COLUMN_GUID, PK_COLUMN_PROPID, FK_TABLE_CATALOG, FK_TABLE_SCHEMA, FK_TABLE_NAME, FK_COLUMN_NAME, FK_COLUMN_GUID, FK_COLUMN_PROPID, ORDINAL, UPDATE_RULE, DELETE_RULE --PK_NAME, --FK_NAME, --DEFERRABILITY from master.dbo.SYSREMOTE_FOREIGN_KEYS < @server_name, @pk_catalog_name, @pk_table_schema, @pk_table_name, @fk_catalog_name, @fk_table_schema, @fk_table_name > order by 7,8,9,1,2,3,13 <§ЈL: Х8create procedure sp_addgroup @grpname sysname -- name of new role as declare @ret int execute @ret = sp_addrole @grpname return @ret !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ѓ$ШlЗѓ Џ љ`рн<5ЧоВ@T$䘨‰<7Lњ7 p8-- ============================================= -- sp_MSset_current_activity -- ============================================= create procedure dbo.sp_MSset_current_activity @id int OUTPUT as set transaction isolation level read uncommitted set quoted_identifier on set nocount on set lock_timeout 5000 declare @stmt as nvarchar(4000) -- ============================================= -- make tables SPID depended -- ============================================= declare @locktab as sysname declare @proctab as sysname declare @locktb2 as sysname declare @proctb2 as sysname set @id = @@spid set @locktab = N'##lockinfo' + rtrim(convert(nvarchar(5), @id)) set @proctab = N'##procinfo' + rtrim(convert(nvarchar(5), @id)) set @locktb2 = N'tempdb..##lockinfo' + rtrim(convert(nvarchar(5), @id)) set @proctb2 = N'tempdb..##procinfo' + rtrim(convert(nvarchar(5), @id)) -- ============================================= -- delete temp tables -- ============================================= if (object_id(@locktb2) is not null) exec(N'drop table ' + @locktab) if (object_id(@proctb2) is not null) exec(N'drop table ' + @proctab) -- ============================================= -- lockinfo table -- ============================================= set @stmt = N'select [Process ID] = l.req_spid, [DBID] = l.rsc_dbid, [Database] = db_name(l.rsc_dbid), [ObjID] = l.rsc_objid, [Object] = convert(nvarchar(386), ''''), [Table] = convert(sysname, ''''), [ObjOwner] = convert(sysname, ''''), [IdxID] = l.rsc_indid, [Index] = convert(sysname, ''''), [Lock Type] = (select substring (v.name, 1, 4) from master.dbo.spt_values v where l.rsc_type = v.number and v.type = ''LR''), [Mode] = (select substring (u.name, 1, 8) from master.dbo.spt_values u where l.req_mode + 1 = u.number and u.type = ''L''), [Status] = (select substring (x.name, 1, 5) from master.dbo.spt_values x where l.req_status = x.number and x.type = ''LS''), [Owner] = (select substring (o.name, 1, 8) from master.dbo.spt_values o where l.req_ownertype = o.number and o.type = ''LO''), [Resource] = substring (rsc_text, 1, 16) into ' + @locktab + ' from master.dbo.syslockinfo l with (NOLOCK) order by l.req_spid' exec (@stmt) -- ============================================= -- processinfo table -- ============================================= set @stmt = N'select [Process ID] = p.spid, [User] = case when p.spid > 6 then convert(sysname, ISNULL(suser_sname(p.sid), rtrim(p.nt_domain) + ''\'' + rtrim(p.nt_username))) else ''system'' end, [Database] = case when p.dbid = 0 then ''no database context'' else db_name(p.dbid) end, [Status] = p.status, [Open Transactions] = p.open_tran, [Command] = p.cmd, [Application] = p.program_name, [Wait Time] = p.waittime, [Wait Type] = case when p.waittype = 0 then ''not waiting'' else p.lastwaittype end, [Wait Resource] = case when p.waittype = 0 then '''' else p.waitresource end, [CPU] = p.cpu, [Physical IO] = p.physical_io, [Memory Usage] = p.memusage, [Login Time] = p.login_time, [Last Batch] = p.last_batch, [Host] = p.hostname, [Net Library] = p.net_library, [Net Address] = p.net_address, [Blocked By] = p.blocked, [Blocking] = 0, [Execution Context ID] = p.ecid into ' + @proctab + ' from master.dbo.sysprocesses p with (NOLOCK) order by p.spid' exec (@stmt) -- ============================================= -- create temporary indexes -- ============================================= set @stmt = N'create index ' + @locktab + '_spid on ' + @locktab + '([Process ID])' exec (@stmt) set @stmt = N'create index ' + @locktab + '_object on ' + @locktab + '([Object])' exec (@stmt) set @stmt = N'create index ' + @proctab + '_spid on ' + @proctab + '([Process ID])' exec (@stmt) set @stmt = N'create index ' + @proctab + '_blockedby on ' + @proctab + '([Blocked By])' exec (@stmt) set transaction isolation level read committed -- ============================================= -- replace placeholders get object names -- ============================================= declare @lckdb sysname declare @lckobjid integer declare @lckobj sysname declare @lckindid smallint declare @lckind sysname set @stmt = 'declare c1 cursor for select distinct [Database], [ObjID], [IdxID] from ' + @locktab + ' where [DBID] > 0 FOR READ ONLY' exec (@stmt) open c1 fetch c1 into @lckdb, @lckobjid, @lckindid while @@fetch_status >= 0 begin if (@lckobjid > 0) begin select @stmt ='update ' + @locktab + ' set [Table] = name, [ObjOwner] = user_name(uid) from ' + quotename(@lckdb, '[') + '.[dbo].[sysobjects] where id = ' + convert(nvarchar(10), @lckobjid) + ' and [Database] = ''' + @lckdb + ''' and [ObjID] = ' + convert(nvarchar(10), @lckobjid) exec (@stmt) select @stmt ='update ' + @locktab + ' set [Index] = name from ' + quotename(@lckdb, '[') + '.[dbo].[sysindexes] where id = ' + convert(nvarchar(10), @lckobjid) + ' and indid = ' + convert(nvarchar(10), @lckindid) + ' and [Database] = ''' + @lckdb + ''' and [IdxID] = ' + convert(nvarchar(10), @lckindid) exec (@stmt) end fetch c1 into @lckdb, @lckobjid, @lckindid end deallocate c1 set @stmt = 'update ' + @locktab + ' set [Object] = [Database] where [ObjID] = 0' exec (@stmt) set @stmt = 'update ' + @locktab + ' set [Object] = rtrim([Database]) + ''.'' + rtrim([ObjOwner]) + ''.'' + rtrim([Table]) where [ObjID] > 0' exec (@stmt) -- ============================================= -- blocking -- ============================================= set @stmt = 'update ' + @proctab + ' set [Blocking] = 1 where [Process ID] in (select [Blocked By] from ' + @proctab + ' where [Blocked By] > 0)' exec (@stmt) select [spid] = @id return(0) -- ============================================= -- end sp_MSset_current_activity -- ============================================= <aV/8 ї8 /* Procedure for 8.0 server */ create procedure sp_check_constbytable_rowset ( @table_name sysname, @table_schema sysname = null, @constraint_name sysname = null, @constraint_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(t_obj.uid), TABLE_NAME = t_obj.name, CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, CHECK_CLAUSE = m.text, DESCRIPTION = convert(nvarchar(1), null) from sysobjects c_obj, sysobjects t_obj, syscomments m where t_obj.name = @table_name and t_obj.type in ('U ','S ') and (@table_schema is null or @table_schema = user_name(t_obj.uid)) and c_obj.parent_obj = t_obj.id and c_obj.type = 'C ' and (@constraint_name is null or c_obj.name = @constraint_name) and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and m.id = c_obj.id order by 1,2,3,4,5,6 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!а`‚c< ЬпЗР"?™0 "=ТT‹L02e 802f 802g 802j 802k 802m 802r 802s 802t 802u 802| 802 802ї 802љ 802 802 802  802f 8 02g 802с 802э 802я 802№ 8X02ћ 8џџџџ02ќ 802ў 802џ 802 802 802 802 802 802 8џџџџ02 802 8џџџ02  802  802  802  802 802 802 802 8<02 802 802 802 8d02 802 8d02  802! 802" 802% 8<02' 802( 802) 802* 802+ 802, 802- 802. 802/ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 802@ 808d <чerror_reported08d>`чerror_reported([severity]>=(20) OR ([error]=(17803) OR [error]=(701) OR [error]=(802) OR [error]=(8645) OR [error]=(8651) OR [error]=(8657) OR [error]=(8902)))0:@48чcallstacke0:@6:чsession_idd0:@26чsql_textd0:@6:чtsql_stackd08f †чscheduler_monitor_non_yielding_ring_buffer_recorded08d Fчxml_deadlock_report08f 2чwait_info08f4‚чwait_info([duration]>(15000) AND ([wait_type]>(31) AND ([wait_type]>(47) AND [wait_type]<(54) OR [wait_type]<(38) OR [wait_type]>(63) AND [wait_type]<(70) OR [wait_type]>(96) AND [wait_type]<(100) OR [wait_type]=(107) OR [wait_type]=(113) OR [wait_type]>(174) AND [wait_type]<(179) OR [wait_type]=(186) OR [wait_type]=(207) OR [wait_type]=(269) OR [wait_type]=(283) OR [wait_type]=(284)) OR [duration]>(30000) AND [wait_type]<(22)))0: @48чcallstacke0: @6:чsession_idd0: @26чsql_textd08 f Dчwait_info_external08 fFЈчwait_info_external([duration]>(5000) AND ([wait_type]>(365) AND [wait_type]<(372) OR [wait_type]>(372) AND [wait_type]<(377) OR [wait_type]>(377) AND [wait_type]<(383) OR [wait_type]>(420) AND [wait_type]<(424) OR [wait_type]>(426) AND [wait_type]<(432) OR [wait_type]>(432) AND [wait_type]<(435) OR [duration]>(45000) AND ([wait_type]>(382) AND [wait_type]<(386) OR [wait_type]>(423) AND [wait_type]<(427) OR [wait_type]>(434) AND [wait_type]<(437) OR [wait_type]>(442) AND [wait_type]<(451) OR [wait_type]>(451) AND [wait_type]<(473) OR [wait_type]>(484) AND [wait_type]<(499) OR [wait_type]=(365) OR [wait_type]=(372) OR [wait_type]=(377) OR [wait_type]=(387) OR [wait_type]=(432) OR [wait_type]=(502))))0: @48чcallstacke0: @6:чsession_idd0: @26чsql_textd09e 6чring_buffer0; 48max_memory0 "=gW M0 "=†W M0! >ча4systemdbsig.dll!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Њp8мЄъ Д z B р" Њ $ т ˆ j L .  ђдЖ˜z\> фЦЈŠlN0єжИš|^@"цШЊŒnP2іиКœ~`B$шЪЌŽpR4јкМž€bD&ъЬЎrT6њмО ‚ŽlJ`со<ЌR рГ8]$3u"ћ<R 0) begin raiserror(15002,-1,-1,'sp_addalias') return (1) end -- VALIDATE LOGIN NAME (OBTAIN SID) -- select @status = CASE WHEN charindex('\', @loginame) > 0 THEN 12 ELSE 0 END if @status = 0 select @sid = suser_sid(@loginame) -- sql user -- retry sql user as nt with dflt domain if @sid is null begin select @sid = get_sid('\U'+@loginame, NULL) -- nt user if @sid is null begin if @status = 0 raiserror(15007,-1,-1,@loginame) else raiserror(15401,-1,-1,@loginame) return (1) end select @status = 12 end -- PREVENT USE OF CERTAIN LOGINS -- else if @sid = 0x1 begin raiserror(15405, -1, -1, @loginame) return (1) end -- VALIDATE NAME-IN-DB (OBTAIN TARGET UID) -- select @targuid = uid from sysusers where name = @name_in_db and (issqluser = 1 or isntuser = 1) and uid NOT IN (3,4) -- INFORMATION_SCHEMA, system_function_schema if @targuid is null begin raiserror(15008,-1,-1,@name_in_db) return (1) end -- ERROR IF LOGIN ALREADY IN DATABASE -- if exists (select sid from sysusers where sid = @sid) begin -- ERROR IF ALREADY ALIASED -- if exists (select sid from sysusers where sid = @sid and isaliased = 1) begin raiserror(15022,-1,-1) return (1) end -- ERROR: LOGIN ALREADY A USER -- select @name_in_db = name, @dbname = db_name() from sysusers where sid = @sid raiserror(15278,-1,-1,@loginame,@name_in_db,@dbname) return (1) end -- ALTER NAME TO AVOID CONFLICTS IN NAME SPACE -- select @loginame = '\' + @loginame if user_id(@loginame) is not null begin raiserror(15023,-1,-1,@loginame) return (1) end -- OBTAIN NEW UID (RESERVE 1-4) -- if user_name(5) IS NULL select @newuid = 5 else select @newuid = min(uid)+1 from sysusers where uid >= 5 and uid < (16384 - 1) -- stay in users range and user_name(uid+1) is null -- uid not in use if @newuid is null begin raiserror(15065,-1,-1) return (1) end -- INSERT SYSUSERS ROW -- insert into sysusers select @newuid, @status | 16, @loginame, @sid, 0x00, getdate(), getdate(), @targuid, NULL -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 return (1) raiserror(15340,-1,-1) return (0) -- sp_addalias !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`тр<! зсВ0S$вѕ<я G6 z8 /* Procedure for 7.0 servers and 8.0 servers */ create procedure sp_check_constraints_rowset ( @constraint_name sysname, @constraint_schema sysname = null ) as select CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, CHECK_CLAUSE = m.text, DESCRIPTION = convert(nvarchar(1), null) from sysobjects c_obj, syscomments m where c_obj.type = 'C ' and c_obj.name = @constraint_name and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and m.id = c_obj.id order by 1,2,3 <я G6 8 create procedure sp_check_constraints_rowset;2 ( @constraint_schema sysname = null ) as select CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, CHECK_CLAUSE = m.text, DESCRIPTION = convert(nvarchar(1), null) from sysobjects c_obj, syscomments m where c_obj.type = 'C ' and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and m.id = c_obj.id order by 1,2,3 <|6 a8create procedure sp_dropuser @name_in_db sysname -- user name to drop as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int declare @targetName sysname -- LIMIT TO SQL/NT USERS (BCKWRD COMPAT ONLY!) if not exists (select * from sysusers where name = @name_in_db and (isntuser = 1 or isntname = 0)) begin raiserror(15008,-1,-1,@name_in_db) return (1) end -- store target name select @targetName = (select sl.name from master..syslogins sl,sysusers su where su.name = @name_in_db and su.sid = sl.sid) -- DROP THE USER FROM THE DATABASE -- execute @ret = sp_revokedbaccess @name_in_db if @ret <> 0 begin -- AUDIT FAILED SECURITY CHECK dbcc auditevent (109, 2, 0, @targetName, @name_in_db, NULL, NULL) return (1) end -- AUDIT SUCCESSFUL SECURITY CHECK -- dbcc auditevent (109, 2, 1, @targetName, @name_in_db, NULL, NULL) -- FINALIZATION: PRINT/RETURN SUCCESS -- return (0) -- sp_dropuser <ў'7 ’ 8-- ============================================= -- sp_MSget_current_activity -- ============================================= create procedure dbo.sp_MSget_current_activity @id int = 0, @option int = 0, @obj nvarchar(386) = null, @spid int = 0 as if (@id = 0) begin raiserror(N'No SPID specified (spid = %d)', 1, 1, @id) return(-1) end if (@option <= 0 or @option > 5) begin raiserror(N'Invalid option %d', 1, 1, @option) return(-1) end declare @stmt as nvarchar(4000) -- ============================================= -- make tables SPID depended -- ============================================= declare @locktab as sysname declare @proctab as sysname set @locktab = N'##lockinfo' + rtrim(convert(nvarchar(5), @id)) set @proctab = N'##procinfo' + rtrim(convert(nvarchar(5), @id)) if (@option = 1) begin -- process info (overview of all processes by SPID) set @stmt = N'select [Process ID], [User], [Database], [Status], [Open Transactions], [Command], [Application], [Wait Time], [Wait Type], [Wait Resource], [CPU], [Physical IO], [Memory Usage], [Login Time], [Last Batch], [Host], [Net Library], [Net Address], [Blocked By], [Blocking], [Execution Context ID] from ' + @proctab + ' order by [Process ID],[Execution Context ID]' end else if (@option = 2) begin -- distinct spid list (old) -- set @stmt = N'select [Process ID], [Blocking], [Blocked By] from ' @proctab + ' order by [Process ID]' -- distinct spid list, only spids with locks set @stmt = N'select distinct L.[Process ID], P.[Blocking], P.[Blocked By] from ' + @locktab + ' L, ' + @proctab + ' P where L.[Process ID] = P.[Process ID] order by L.[Process ID]' end else if (@option = 3) begin -- distinct object list set @stmt = N'select distinct [Object] from ' + @locktab + ' order by [Object]' end else if (@option = 4) begin -- locks per spid if (@spid = 0) begin raiserror(N'Error @spid parameter not specified (option %d)', 1, 1, @option) return(-1) end set @stmt = N'select [Object], [Lock Type], [Mode], [Status], [Owner], [Index], [Resource] from ' + @locktab + ' where [Process ID] = ' + rtrim(convert(nvarchar(10), @spid)) + ' order by [Object]' end else if (@option = 5) begin -- locks per object if (@obj is null) begin raiserror(N'Error @obj parameter not specified (option %d)', 1, 1, @option) return(-1) end -- locked object is db if parsename(@obj,3) is null begin set @stmt = N'select [Process ID], [Lock Type], [Mode], [Status], [Owner], [Index], [Resource] from ' + @locktab + ' where [Object] = ''' + @obj + ''' and [ObjID] = 0' end -- locked object is table else begin set @stmt = N'select [Process ID], [Lock Type], [Mode], [Status], [Owner], [Index], [Resource] from ' + @locktab + ' where [Object] = ''' + parsename(@obj,3) + '.' + parsename(@obj,2) + '.' + parsename(@obj,1) + '''' end end exec (@stmt) return(0) -- ============================================= -- end sp_MSget_current_activity -- ============================================= !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!E фк`ус<Ч7тЇН7"ЂЌШ<Х6 з8create proc sp_ActiveDirectory_Obj @Action nvarchar(10) = N'create', -- create, update, delete @ObjType nvarchar(15) = N'database', -- database, publication @ObjName sysname = null, -- object name @DatabaseName sysname = null, -- database name for publication object @GUIDName sysname = null -- GUID for publication update and delete as begin /* cerate : create the object under the current SCP object. */ /* update : update the object under the SCP object. */ /* delete : delete the object under the SCP object. */ SET NOCOUNT ON DECLARE @isdbowner int DECLARE @cmd nvarchar(255) DECLARE @commonname nvarchar(300) DECLARE @retcode int DECLARE @nAction nvarchar(3) DECLARE @Tmp nvarchar(10) DECLARE @dbname sysname DECLARE @retval int DECLARE @SQLADSI_COM_ERROR int DECLARE @SQLADSI_UNEXP_ERROR int DECLARE @SQLADSI_SCP_NOT_FOUND int DECLARE @SQLADSI_SVC_ACCT_ERROR int DECLARE @SQLADSI_CANNOT_START_HLP int DECLARE @SQLADSI_TIMEOUT_WAIT_HLP int DECLARE @SQLADSI_AD_NOT_INSTALLED int DECLARE @SQLADSI_PROXY_ACCT_ERROR int SELECT @SQLADSI_COM_ERROR = 536870913 SELECT @SQLADSI_UNEXP_ERROR = 536870914 SELECT @SQLADSI_SCP_NOT_FOUND = 536870915 SELECT @SQLADSI_SVC_ACCT_ERROR = 536870916 SELECT @SQLADSI_CANNOT_START_HLP = 536870917 SELECT @SQLADSI_TIMEOUT_WAIT_HLP = 536870918 SELECT @SQLADSI_AD_NOT_INSTALLED = 536870919 SELECT @SQLADSI_PROXY_ACCT_ERROR = 536870920 /* check permissions IF (not is_srvrolemember(N'sysadmin') = 1) begin raiserror(15003,-1,-1, N'sysadmin') return 1 end */ /* If publication object, we need both object name and database name */ if ((UPPER(@ObjType) in (N'PUBLICATION')) and ((@ObjName is null) or (@DatabaseName is null))) begin raiserror(14200, -1, -1, N'@ObjName or @DatabaseName') return 1 end /* check parameters */ if (@Action is null OR UPPER(@Action) not in (N'CREATE', N'UPDATE', N'DELETE')) begin raiserror(14266, -1, -1, N'@Action', N'CREATE, UPDATE, DELETE') return 1 end if (@ObjType is null OR UPPER(@ObjType) not in (N'DATABASE', N'REPOSITORY', N'PUBLICATION')) begin raiserror(14266, -1, -1, N'@ObjType', N'DATABASE, REPOSITORY, PUBLICATION') return 1 end if (@ObjName is null) begin raiserror(14200, -1, -1, N'@ObjName') return 1 end /* If publication object update or delete, we need GUID also */ if ((UPPER(@ObjType) in (N'PUBLICATION')) and UPPER(@Action) in (N'UPDATE', N'DELETE') and (@GUIDName is null)) begin raiserror(14200, -1, -1, N'@GUIDNName') return 1 end if (UPPER(@ObjType) in (N'PUBLICATION')) select @dbname = @DatabaseName else select @dbname = @ObjName -- Make sure the database exists -- if not exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15010,-1,-1,@dbname) return (1) end /* Check permissions. */ SELECT @cmd = 'USE ' + quotename(@dbname) + ' SELECT @isdbowner = is_member(''db_owner'')' EXEC @retcode = sp_executesql @cmd, N'@isdbowner int output', @isdbowner output IF @@error <> 0 or @retcode <> 0 return 1 IF (is_srvrolemember('sysadmin') <> 1 and isnull(@isdbowner, 0) <> 1) BEGIN raiserror(21050, 14, -1) return 1 END /* common name length check */ if (UPPER(@ObjType) in (N'PUBLICATION')) SELECT @commonname = @ObjName + N':' + @DatabaseName else SELECT @commonname = @ObjName IF (LEN(@commonname) > 64) RAISERROR(14357, -1, -1, @commonname) select @Tmp = UPPER(@Action) if (UPPER(@Tmp) like N'CRE%') select @nAction = N'1' else if (UPPER(@Tmp) like N'UPD%') select @nAction = N'2' else if (UPPER(@Tmp) like N'DEL%') select @nAction = N'3' declare @nObjType nvarchar(3) select @Tmp = UPPER(@ObjType) if (UPPER(@Tmp) like N'DATAB%') select @nObjType = N'2' else if (UPPER(@Tmp) like N'REPOS%') select @nObjType = N'3' else if (UPPER(@Tmp) like N'PUBL%') select @nObjType = N'4' /* are we running on Windows 2000 or NT4 SP5 with AD enabled? continue only if TRUE */ EXECUTE @retval = master.dbo.xp_MSADEnabled if (@retval = 0) begin /* prepare parameters */ declare @InstanceName sysname declare @ServerName sysname select @InstanceName = convert(sysname, serverproperty(N'InstanceName')) select @ServerName = convert(sysname, serverproperty(N'ServerName')) if (@InstanceName is NULL) select @InstanceName = N'MSSQLSERVER' /* Need to create registry values only if create or update. */ if (@nAction <> N'3') begin EXECUTE @retval = master.dbo.xp_MSADSIObjReg @InstanceName, @nAction, @nObjType, @ObjName, @DatabaseName, @ServerName end if (@retval = 0) begin /* call xp with the valid parameters, xp_cmdshell expects double quote begin and end */ DECLARE @args NVARCHAR(512) if ((@nObjType like N'4') and (@nAction like N'1')) begin /* PUBLICATION creation */ SELECT @args = @InstanceName + N' ' + @nAction + N' ' + @nObjType + N' ' + quotename(@ObjName, N'"') + N' ' + quotename(@DatabaseName, N'"') end else if ((@nObjType like N'4') and (@nAction not like N'1')) begin /* PUBLICATION update or delete */ SELECT @args = @InstanceName + N' ' + @nAction + N' ' + @nObjType + N' ' + quotename(@ObjName, N'"') + N' ' + quotename(@DatabaseName, N'"') + N' ' + @GUIDName end else begin /* Non PUBLICATION objects */ SELECT @args = @InstanceName + N' ' + @nAction + N' ' + @nObjType + N' ' + quotename(@ObjName, N'"') end EXECUTE @retval = master.dbo.xp_adsirequest @args if (@retval = 0) begin if (@nAction = N'3') begin EXECUTE @retval = master.dbo.xp_MSADSIObjReg @InstanceName, @nAction, @nObjType, @ObjName, @DatabaseName, @ServerName if (@retval <> 0) begin raiserror(14303, -1, -1, N'sp_ActiveDirectory_Obj') return 1 end end end else begin if @retval = @SQLADSI_COM_ERROR RAISERROR(14350, -1, -1) else if @retval = @SQLADSI_UNEXP_ERROR RAISERROR(14351, -1, -1) else if @retval = @SQLADSI_SCP_NOT_FOUND RAISERROR(14352, -1, -1) else if @retval = @SQLADSI_SVC_ACCT_ERROR RAISERROR(14353, -1, -1) else if @retval = @SQLADSI_CANNOT_START_HLP RAISERROR(14354, -1, -1) else if @retval = @SQLADSI_TIMEOUT_WAIT_HLP RAISERROR(14355, -1, -1) else if @retval = @SQLADSI_AD_NOT_INSTALLED RAISERROR(14356, -1, -1) else if @retval = @SQLADSI_PROXY_ACCT_ERROR RAISERROR(14358, -1, -1) /* Failed */ return 1 end end else begin raiserror(14303, -1, -1, N'sp_ActiveDirectory_Obj') return 1 end end else begin raiserror(14304, -1, -1, N'sp_ActiveDirectory_Obj') return 1 end end !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`фт<ю уЇЂ7"šрДk<рѓ‡5 Ž 8create procedure sp_revokedbaccess @name_in_db sysname as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @uid smallint, @ret int -- CHECK PERMISSIONS -- if (not is_member('db_accessadmin') = 1) and (not is_member('db_owner') = 1) begin dbcc auditevent (109, 4, 0, NULL, @name_in_db, NULL, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (109, 4, 1, NULL, @name_in_db, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_revokedbaccess') return (1) end -- CHECK IF SYSUSER EXISTS -- select @uid = uid from sysusers where name = @name_in_db and (issqluser = 1 or isntname = 1) -- is droppable entity and (name <> 'guest' or hasdbaccess = 1) -- special case guest if @uid is null begin raiserror(15008,-1,-1,@name_in_db) return (1) end -- CANNOT DROP DBO/INFORMATION_SCHEMA/public -- if @uid in (1,0,3,4) --dbo, public, INFORMATION_SCHEMA, system_function_schema begin raiserror(15181,-1,-1) return (1) end -- CANNOT DROP GUEST IN MASTER/TEMPDB -- if lower(@name_in_db) = 'guest' and db_id() in (1, 2) begin raiserror(15182,-1,-1) return(1) end -- CHECK IF USER OWNS ANYTHING -- execute @ret = sp_MScheck_uid_owns_anything @uid if @ret <> 0 return (1) -- REMOVE SYSPERMISSIONS ROWS AND DEPENDENT ALIASES -- delete from syspermissions where grantee = @uid if exists (select altuid from sysusers where altuid = @uid and isaliased = 1) begin delete from sysusers where altuid = @uid and isaliased = 1 raiserror(15490,-1,-1) end -- DROP USER: SPECIAL HANDLING FOR GUEST (REMOVE HASDBACCESS) -- if lower(@name_in_db) = 'guest' update sysusers set status = status & ~2, updatedate = getdate() where uid = user_id('guest') else begin delete from sysusers where uid = @uid delete from sysproperties where type = 2 and id = 0 and smallid = @uid end -- RETURN SUCCESS/FAILURE -- if @@error <> 0 return (1) -- INVALIDATE CACHED PERMISSIONS -- grant all to null raiserror(15491,-1,-1) return (0) -- sp_revokedbaccess !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`ху<u‰фЇ‘7"*|Cї<Œп5 )8create proc sp_ActiveDirectory_SCP @Action nvarchar(20) = N'create', -- create_noupdate, create_with_db, create, update, delete, shutdown @Startup int = 0 -- 0 for non-startup, non-zero if called from server startup as begin /* create_noupdate : create the SCP object, if it exists already, update it. */ /* create the DB objects only if they don't exists yet. Do not update the existig DB objects. */ /* create_with_db : create the SCP object, if it exsits already, update it. */ /* Create all the DB objects under the SCP object. If a DB object exists already, update it. */ /* create (DEFAULT) : create the SCP object, if it exists already, update it. */ /* update : update the SCP object. */ /* shutdown : mark the SCP object to indicate not running, but don't delete it. */ /* delete : delete the SCP object and all the objects below it. */ SET NOCOUNT ON DECLARE @retval int DECLARE @SQLADSI_COM_ERROR int DECLARE @SQLADSI_UNEXP_ERROR int DECLARE @SQLADSI_SCP_NOT_FOUND int DECLARE @SQLADSI_SVC_ACCT_ERROR int DECLARE @SQLADSI_CANNOT_START_HLP int DECLARE @SQLADSI_TIMEOUT_WAIT_HLP int DECLARE @SQLADSI_AD_NOT_INSTALLED int DECLARE @SQLADSI_PROXY_ACCT_ERROR int SELECT @SQLADSI_COM_ERROR = 536870913 SELECT @SQLADSI_UNEXP_ERROR = 536870914 SELECT @SQLADSI_SCP_NOT_FOUND = 536870915 SELECT @SQLADSI_SVC_ACCT_ERROR = 536870916 SELECT @SQLADSI_CANNOT_START_HLP = 536870917 SELECT @SQLADSI_TIMEOUT_WAIT_HLP = 536870918 SELECT @SQLADSI_AD_NOT_INSTALLED = 536870919 SELECT @SQLADSI_PROXY_ACCT_ERROR = 536870920 /* check permissions */ IF (not is_srvrolemember(N'sysadmin') = 1) begin raiserror(15003,-1,-1, N'sysadmin') return 1 end /* check parameters */ if (@Action is null OR UPPER(@Action) not in (N'CREATE', N'UPDATE', N'DELETE', N'SHUTDOWN', N'CREATE_WITH_DB', N'CREATE_NOUPDATE')) begin raiserror(14266, -1, -1, N'@Action', N'CREATE, UPDATE, DELETE, SHUTDOWN, CREATE_WITH_DB, CREATE_NOUPDATE') return 1 end declare @nAction nvarchar(3) declare @Tmp nvarchar(10) select @Tmp = UPPER(@Action) if (UPPER(@Tmp) like N'CRE%') select @nAction = N'1' else if (UPPER(@Tmp) like N'UPD%') select @nAction = N'2' else if (UPPER(@Tmp) like N'DEL%') select @nAction = N'3' else if (UPPER(@Tmp) like N'SHU%') select @nAction = N'4' /* are we running on Windows 2000 or NT4 SP5 with AD enabled? continue only if TRUE */ EXECUTE @retval = master.dbo.xp_MSADEnabled if (@retval = 0) begin /* Get the correct path for xpadsi.exe */ declare @Data nvarchar(256) exec master.dbo.xp_instance_regread N'HKEY_LOCAL_MACHINE', N'SOFTWARE\Microsoft\MSSQLServer\Setup', N'SQLPath', @param = @Data OUT, @no_output = N'no_output' declare @BlankIndex int select @BlankIndex = charindex(N' ', @Data) if (@BlankIndex is NULL) select @BlankIndex = 0 /* Gather information */ declare @InstanceName sysname declare @ServerName sysname select @InstanceName = convert(sysname, serverproperty(N'InstanceName')) select @ServerName = convert(sysname, serverproperty(N'ServerName')) if (@InstanceName is NULL) select @InstanceName = N'MSSQLSERVER' /* Need to create registry values only if create or update. Delete registry when delete */ if (@nAction <> N'3') begin EXECUTE @retval = master.dbo.xp_MSADSIReg @InstanceName, @nAction, @ServerName end if (@retval = 0) begin /* call xp with the valid parameters */ DECLARE @command NVARCHAR(512) DECLARE @nStartup NVARCHAR(5) if (@Startup = 0) select @nStartup = N'0' else select @nStartup = N'1' if (@BlankIndex <> 0) SELECT @command = N'""' + @Data + N'\Binn\' + N'xpadsi.exe' + N'"" ' + @InstanceName + N' ' + @nAction + N' 1 ' + @nStartup else SELECT @command = @Data + N'\Binn\' + N'xpadsi.exe ' + @InstanceName + N' ' + @nAction + N' 1 ' + @nStartup EXECUTE @retval = master.dbo.xp_cmdshell @command if (@retval = 0) begin /* we successfully delete the SCP and all its children, let's remove the registry keys/values for them */ if (@nAction = N'3') begin EXECUTE @retval = master.dbo.xp_MSADSIReg @InstanceName, @nAction, @ServerName if (@retval <> 0) begin raiserror(14303, -1, -1, N'sp_ActiveDirectory_SCP') return 1 end end /* Get in only if caller asked for create with DB objects */ if (UPPER(@Action) like N'CREATE_WITH%') or (UPPER(@Action) like N'CREATE_NOU%') begin /* After we created the SCP object, we create all the database objects */ /* Note that for performance reason, we want to create all the registry entries in one connection */ EXECUTE @retval = master.dbo.xp_MSADSIObjRegDB @InstanceName, @ServerName if (UPPER(@Action) like N'CREATE_WITH%') begin declare hC cursor for select name from master.dbo.sysdatabases end else begin declare hC cursor for select * from msdb.dbo.ADSINewDBs end declare @DBname sysname open hC fetch next from hC into @DBname while (@@FETCH_STATUS = 0) begin /* Do the AD part, continue even if we got error from one create */ if (@BlankIndex <> 0) SELECT @command = N'""' + @Data + N'\Binn\' + N'xpadsi.exe ' + N'" ' + @InstanceName + N' 1 2 ' + N'"' + @DBname + N'""' else SELECT @command = @Data + N'\Binn\' + N'xpadsi.exe ' + @InstanceName + N' 1 2 ' + N'""' + @DBname + N'""' EXECUTE master.dbo.xp_cmdshell @command fetch next from hC into @DBname end close hC deallocate hC /* Get rid of the worker table, which was created by master.dbo.xp_MSADSIObjRegDB */ drop table msdb.dbo.ADSINewDBs end return 0 end else begin if @retval = @SQLADSI_COM_ERROR RAISERROR(14350, -1, -1) else if @retval = @SQLADSI_UNEXP_ERROR RAISERROR(14351, -1, -1) else if @retval = @SQLADSI_SCP_NOT_FOUND RAISERROR(14352, -1, -1) else if @retval = @SQLADSI_SVC_ACCT_ERROR RAISERROR(14353, -1, -1) else if @retval = @SQLADSI_CANNOT_START_HLP RAISERROR(14354, -1, -1) else if @retval = @SQLADSI_TIMEOUT_WAIT_HLP RAISERROR(14355, -1, -1) else if @retval = @SQLADSI_AD_NOT_INSTALLED RAISERROR(14356, -1, -1) else if @retval = @SQLADSI_PROXY_ACCT_ERROR RAISERROR(14358, -1, -1) /* Failed */ return 1 end end else begin raiserror(14303, -1, -1, N'sp_ActiveDirectory_SCP') return 1 end end else begin raiserror(14359, -1, -1) return 1 end end !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`цф<vˆхЇv7"lxэ<ЇЯ“4 (8create procedure sp_adduser @loginame sysname, -- user's login name in syslogins @name_in_db sysname = NULL, -- user's name to add to current db @grpname sysname = NULL -- role to which user should be added. as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int -- LIMIT TO SQL/NT USERS IN SYSLOGINS (BCKWRD COMPAT ONLY!) if not exists (select * from master.dbo.syslogins where loginname = @loginame and (isntuser = 1 or isntname = 0)) and @loginame <> 'guest' begin raiserror(15007,-1,-1,@loginame) return (1) end -- VALIDATE THE ROLENAME -- if @grpname is not null and not exists (select * from sysusers where name = @grpname and issqlrole = 1) begin raiserror(15014,-1,-1,@grpname) return (1) end if @name_in_db is null select @name_in_db = @loginame -- In Hydra only the user dbo can do this -- if (not is_member('dbo') = 1) begin -- AUDIT FAILED SECURITY CHECK -- dbcc auditevent (109, 1, 0, @loginame, @name_in_db, @grpname , NULL) raiserror(15247,-1,-1) return (1) end else begin -- AUDIT SUCCESSFUL SECURITY CHECK -- dbcc auditevent (109, 1, 1, @loginame, @name_in_db, @grpname , NULL) end -- ADD THE USER TO THE DATABASE -- execute @ret = sp_grantdbaccess @loginame, @name_in_db OUT if (@ret <> 0) return (1) -- ADD USER TO ROLE IF GIVEN. NOP FOR 'public' -- if (@grpname is not null) and (@grpname <> 'public') begin execute @ret = sp_addrolemember @grpname, @name_in_db if @ret <> 0 begin -- ROLL BACK THE ABOVE sp_grantdbaccess -- if @name_in_db = 'guest' update sysusers set status = status & ~2, updatedate = getdate() where name = 'guest' else delete from sysusers where name = @name_in_db return (1) end end -- RETURN SUCCESS -- return (0) -- sp_adduser !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`чх<КBцЇX7"п …Ё<}Х^4 8 /* Procedure for 8.0 server */ create procedure sp_columns_rowset;2 ( @table_schema sysname = NULL, @column_name sysname = NULL ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), COLUMN_HASDEFAULT = convert(bit, case when m.text is null then 0 else 1 end), COLUMN_DEFAULT = convert(nvarchar(2000), case when substring(m.text,1,1) = '(' then substring(m.text,2,datalength(m.text)/2-2) else substring(m.text,1,datalength(m.text)/2-2) end ), COLUMN_FLAGS = convert(int, case when d.is_long = 1 then 0x82 /*DBCOLUMNFLAGS_ISLONG|DBCOLUMNFLAGS_MAYDEFER*/ else 0 end | case when d.fixlen is not null then 0x10 /*DBCOLUMNFLAGS_ISFIXEDLENGTH*/ else 0 end | case when ColumnProperty(c.id,c.name,'AllowsNull') = 1 then 0x60 /*DBCOLUMNFLAGS_ISNULLABLE|DBCOLUMNFLAGS_MAYBENULL*/ else 0 end | case when d.type_name = 'timestamp' then 0x200 /*DBCOLUMNFLAGS_ISROWVER*/ when (c.status&128) != 128 and permissions(o.id,c.name)&2 = 2 then 0x4 /*DBCOLUMNFLAGS_WRITE*/ else 0 end), IS_NULLABLE = convert(bit,ColumnProperty(c.id,c.name,'AllowsNull')), DATA_TYPE = d.oledb_data_type, TYPE_GUID = convert(uniqueidentifier,null), CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.xprec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DATETIME_PRECISION = convert(int, case when d.oledb_data_type <> 135 /*DBTYPE_DBTIMESTAMP*/ then null when data_precision = 23 then 3 else 0 end), CHARACTER_SET_CATALOG = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'master' else null end), CHARACTER_SET_SCHEMA = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'dbo' else null end), CHARACTER_SET_NAME = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then a_cha.name else null end), COLLATION_CATALOG = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'master' else null end), COLLATION_SCHEMA = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'dbo' else null end), COLLATION_NAME = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then c.collation else null end), DOMAIN_CATALOG = case when t.usertype < 256 then null else db_name() end, DOMAIN_SCHEMA = case when t.usertype < 256 then null else user_name(o.uid) end, DOMAIN_NAME = case when t.usertype < 256 then null else t.name end, DESCRIPTION = convert(nvarchar(1),null), COLUMN_LCID = convert(int, CollationPropertyFromID(c.collationid, 'lcid')), COLUMN_COMPFLAGS = convert(int, CollationPropertyFromID(c.collationid, 'oledbcompstyle')), COLUMN_SORTID = case /* hack to keep the old behavior: will be removed */ when ABS(c.collationid) > 0x1000000 then convert(int, DATABASEPROPERTYEX(db_name(),'sqlsortorder')) else null end, COLUMN_TDSCOLLATION = convert (binary(5),CollationPropertyFromID(c.collationid, 'TDSCollation')), IS_COMPUTED = convert(bit, c.iscomputed) from syscolumns c left join syscomments m on c.cdefault = m.id and m.colid = 1, sysobjects o, master.dbo.spt_provider_types d, systypes t, master.dbo.syscharsets a_cha /* charset/1001, not sortorder.*/ where permissions(o.id, c.name) <> 0 and (o.type in ('U','V','S') OR (o.type in ('TF', 'IF') and c.number = 0)) and (@table_schema is null or @table_schema = user_name(o.uid)) and (@column_name is null or @column_name = c.name) and o.id = c.id and t.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and a_cha.type = 1001 /* type is charset */ and a_cha.id = isnull(convert(tinyint, CollationPropertyFromID(c.collationid, 'sqlcharset')), convert(tinyint, ServerProperty('sqlcharset'))) -- make sure there's one and only one row selected for each column order by 2, 3, c.colorder <}Х^4 м8 /* Procedure for 8.0 server */ create procedure sp_columns_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null, @column_name sysname = null ) as select TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_GUID, COLUMN_PROPID, ORDINAL_POSITION, COLUMN_HASDEFAULT, COLUMN_DEFAULT, COLUMN_FLAGS, IS_NULLABLE, DATA_TYPE, TYPE_GUID, CHARACTER_MAXIMUM_LENGTH, CHARACTER_OCTET_LENGTH, NUMERIC_PRECISION, NUMERIC_SCALE, DATETIME_PRECISION, CHARACTER_SET_CATALOG, CHARACTER_SET_SCHEMA, CHARACTER_SET_NAME, COLLATION_CATALOG, COLLATION_SCHEMA, COLLATION_NAME, DOMAIN_CATALOG, DOMAIN_SCHEMA, DOMAIN_NAME, DESCRIPTION from master.dbo.SYSREMOTE_COLUMNS < @table_server, @table_catalog, @table_schema, @table_name, @column_name > order by 1, 2, 3, 7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!f`шц<I ЕчЇT7" sЕ<}Х^4 U8 /* Procedure for 8.00 server */ create procedure sp_columns_rowset ( @table_name sysname, @table_schema sysname = NULL, @column_name sysname = NULL ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), COLUMN_HASDEFAULT = convert(bit, case when m.text is null then 0 else 1 end), /* Get rid of ( if it is first char otherwise display the whole thing */ COLUMN_DEFAULT = convert(nvarchar(2000), case when substring(m.text,1,1) = '(' then substring(m.text,2,datalength(m.text)/2-2) else substring(m.text,1,datalength(m.text)/2-2) end ), COLUMN_FLAGS = convert(int, case when d.is_long = 1 then 0x82 /*DBCOLUMNFLAGS_ISLONG|DBCOLUMNFLAGS_MAYDEFER*/ else 0 end | case when d.fixlen is not null then 0x10 /*DBCOLUMNFLAGS_ISFIXEDLENGTH*/ else 0 end | case when ColumnProperty(c.id,c.name,'AllowsNull') = 1 then 0x60 /*DBCOLUMNFLAGS_ISNULLABLE|DBCOLUMNFLAGS_MAYBENULL*/ else 0 end | case when d.type_name = 'timestamp' then 0x200 /*DBCOLUMNFLAGS_ISROWVER*/ when (c.status&128) != 128 and permissions(o.id,c.name)&2 = 2 then 0x4 /*DBCOLUMNFLAGS_WRITE*/ else 0 end), IS_NULLABLE = convert(bit,ColumnProperty(c.id,c.name,'AllowsNull')), DATA_TYPE = d.oledb_data_type, TYPE_GUID = convert(uniqueidentifier,null), CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.xprec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DATETIME_PRECISION = convert(int, case when d.oledb_data_type <> 135 /*DBTYPE_DBTIMESTAMP*/ then null when data_precision = 23 then 3 else 0 end), CHARACTER_SET_CATALOG = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'master' else null end), CHARACTER_SET_SCHEMA = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'dbo' else null end), CHARACTER_SET_NAME = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then a_cha.name else null end), COLLATION_CATALOG = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'master' else null end), COLLATION_SCHEMA = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'dbo' else null end), COLLATION_NAME = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then c.collation else null end), DOMAIN_CATALOG = case when t.usertype < 256 then null else db_name() end, DOMAIN_SCHEMA = case when t.usertype < 256 then null else user_name(o.uid) end, DOMAIN_NAME = case when t.usertype < 256 then null else t.name end, DESCRIPTION = convert(nvarchar(1),null), COLUMN_LCID = convert(int, CollationPropertyFromID(c.collationid, 'lcid')), COLUMN_COMPFLAGS = convert(int, CollationPropertyFromID(c.collationid, 'oledbcompstyle')), COLUMN_SORTID = case /* hack to keep the old behavior: will be removed */ when ABS(c.collationid) > 0x1000000 then convert(int, DATABASEPROPERTYEX(db_name(),'sqlsortorder')) else null end, COLUMN_TDSCOLLATION = convert (binary(5),CollationPropertyFromID(c.collationid, 'TDSCollation')), IS_COMPUTED = convert(bit, c.iscomputed) from syscolumns c left join syscomments m on c.cdefault = m.id and m.colid = 1, sysobjects o, master.dbo.spt_provider_types d, systypes t, master.dbo.syscharsets a_cha /* charset/1001, not sortorder. */ where permissions(o.id, c.name) <> 0 and o.name = @table_name and (o.type in ('U','V','S') OR (o.type in ('TF', 'IF') and c.number = 0)) and (@table_schema is null or @table_schema = user_name(o.uid)) and (@column_name is null or @column_name = c.name) and o.id = c.id and t.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and a_cha.id = isnull(convert(tinyint, CollationPropertyFromID(c.collationid, 'sqlcharset')), convert(tinyint, ServerProperty('sqlcharset'))) -- make sure there's one and only one row selected for each column order by 2, 3, c.colorder !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`щч<b šшЇJ7"-Єг <nЋŸ3 v8create procedure sp_grantdbaccess @loginame sysname, @name_in_db sysname = NULL OUT as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @uid smallint, @sid varbinary(85), @status smallint if @name_in_db is null select @name_in_db = @loginame -- CHECK PERMISSIONS -- if (not is_member('db_accessadmin') = 1) and (not is_member('db_owner') = 1) begin dbcc auditevent (109, 3, 0, @loginame, @name_in_db, NULL, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (109, 3, 1, @loginame, @name_in_db, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_grantdbaccess') return (1) end -- VALIDATE NAME-IN-DB -- if @name_in_db <> @loginame begin exec @ret = sp_validname @name_in_db if @ret <> 0 return(1) if (charindex('\', @name_in_db) > 0) begin raiserror(15006,-1,-1,@name_in_db) return (1) end end -- CHECK FOR SPECIAL USER GUEST -- if @name_in_db = 'guest' begin -- ERROR IF NOT USER, OR ALREADY ADDED -- if @loginame <> 'guest' begin raiserror(15062,-1,-1) return(1) end if exists (select * from sysusers where hasdbaccess = 1 and name = 'guest') begin raiserror(15023,-1,-1,'guest') return (1) end -- ENABLE USER GUEST -- update sysusers set status = (status & ~1) | 2, updatedate = getdate() where name = 'guest' return (0) end -- VALIDATE LOGIN NAME (OBTAIN SID) -- select @status = case when (charindex('\', @loginame) <> 0) then 4 else 0 end if @status = 0 select @sid = sid from master.dbo.syslogins -- sql user where isntname = 0 and loginname = @loginame if @sid is null begin -- NT GROUPS REQUIRE DOMAIN NAME -- if @status = 4 select @sid = get_sid('\G'+@loginame, NULL) -- nt group if @sid is null begin select @sid = get_sid('\U'+@loginame, NULL) -- nt user if @sid is not null select @status = 12 end end -- PREVENT USE OF CERTAIN LOGINS -- else if @sid = 0x1 -- 'sa' begin raiserror(15405, -1, -1, @loginame) return (1) end if @sid is null begin if @status = 0 raiserror(15007,-1,-1,@loginame) else raiserror(15401,-1,-1,@loginame) return (1) end -- CHECK IF LOGIN ALREADY IN DATABASE -- if exists (select sid from sysusers where sid = @sid) begin -- ERROR IF LOGIN IS ALREADY ALIASED -- if exists (select sid from sysusers where sid = @sid and isaliased = 1) begin raiserror(15022,-1,-1) return (1) end -- ERROR IF ALREADY EXISTS UNDER DIFFERENT NAME -- if (not user_sid(user_id(@name_in_db)) = @sid) begin raiserror(15063,-1,-1) return (1) end -- ERROR IF LOGIN ALREADY HAS ACCESS -- if exists (select sid from sysusers where sid = @sid and hasdbaccess = 1) begin if @status = 4 raiserror(15024,-1,-1,@name_in_db) else raiserror(15023,-1,-1,@name_in_db) return (1) end -- GIVE DATABASE ACCESS TO THIS LOGIN -- update sysusers set status = (status & ~1) | 2, updatedate = getdate() where sid = @sid return @@error end if @name_in_db = 'sys' raiserror(15355,-1,-1) if user_id(@name_in_db) is not null OR @name_in_db IN ('system_function_schema','INFORMATION_SCHEMA') begin -- SYSUSERS NAME ALREADY EXISTS -- if @status = 4 raiserror(15024,-1,-1,@name_in_db) else raiserror(15023,-1,-1,@name_in_db) return (1) end -- OBTAIN NEW UID (RESERVE 1-4) -- if user_name(5) IS NULL select @uid = 5 else select @uid = min(uid)+1 from sysusers where uid >= 5 and uid < (16384 - 1) -- stay in users range and user_name(uid+1) is null -- uid not in use if @uid is null begin raiserror(15065,-1,-1) return (1) end -- INSERT SYSUSERS ROW -- insert into sysusers select @uid, @status | 2, @name_in_db, @sid, 0x00, getdate(), getdate(), 0, NULL -- INVALIDATE CACHED PERMISSIONS -- grant all to null -- PRINT SUCCESS -- raiserror(15341,-1,-1, @loginame) -- RETURN SUCCESS STATUS -- return @@error -- sp_grantdbaccess <SЛ)4 Ф8create proc sp_ActiveDirectory_Start as begin /* check permissions */ IF (not is_srvrolemember(N'sysadmin') = 1) begin raiserror(15003,-1,-1, N'sysadmin') return 1 end /* Are we running on Windows 2000 or NT4 SP5 with AD enabled? Continue only if TRUE */ DECLARE @retval INT EXECUTE @retval = master.dbo.xp_MSADEnabled if (@retval = 0) begin /* Is the server a Standard or Enterpriser server? Continue only if TRUE */ IF ((PLATFORM() & 0x100) <> 0x100) -- Not on Desktop or MSDE begin exec(N'master..sp_ActiveDirectory_SCP N''create_with_db'', 1') end end end and checksum validation profile.0?S ­Profile used by the Merge Agent to perform rowcount and checksum validation.0@S лCannot change this publication property because there are active subscriptions to this publication.0AS ЕSubscriber partition validation expression must be NULL for static publications.0BS —There must be one and only one of '%s' and '%s' that is not NULL.0CS ‡Failed to adjust Publisher identity range for table '%s'.0DS “Failed to adjust Publisher identity range for publication '%s'.0ES A push subscription to the publication '%s' already exists. Use sp_mergesubscription_cleanup to drop defunct push subscriptions.0FS НTable '%s' must have at least one column that is included in the vertical partition.рр0GS ЏCould not find the Snapshot Agent command line for the specified publication.l0HS ЁThis version of the Publisher cannot use a SQL Server 7.0 Distributor.ЬЬЬ0IS ›The parameter @dynamic_snapshot_location cannot be an empty string.0KS бA dynamic snapshot job can be scheduled only for a publication with dynamic filtering enabled.Ѕ•Єр•Œс•ЌЌЌЌЕ =8` —( —ЗЗЗЗ  —р>—‰ `А№иDМ$lрxф”МдXL |є ˆ и d ” ˆ d аєH”а Ф\№рж`ъш<ЃWщВ(R$їqі†<вX‚1 Љ8create procedure sp_column_privileges_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null, @column_name sysname = null, @grantor sysname = null, @grantee sysname = null ) as select GRANTOR, GRANTEE, TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_GUID, COLUMN_PROPID, PRIVILEGE_TYPE, IS_GRANTABLE from master.dbo.SYSREMOTE_COLUMN_PRIVILEGES < @table_server, @table_catalog, @table_schema, @table_name, @column_name, @grantor, @grantee> order by 3, 4, 5, 6, 9, 1, 2 <ќbЗ1 Q8---------------------------------------- -- NOTE: FOR INTERNAL SECURITY USE ONLY! -- DO NOT DOCUMENT OR USE! ---------------------------------------- create procedure sp_MSadduser_implicit_ntlogin @ntname sysname AS -- NO-OP IF LOGIN ALREADY EXISTS -- if user_id(@ntname) is null begin -- MUST BE NT NAME -- if (charindex('\', @ntname) = 0) return (1) declare @newsid varbinary(85), @status smallint, @uid smallint -- OBTAIN NT SID FOR THIS USER (SET STATUS BITS) -- select @status = 4 -- ntlogin(4) select @newsid = get_sid('\U'+@ntname, NULL) -- NT user if (@newsid is Null) begin select @newsid = get_sid('\G'+@ntname, NULL) -- NT group IF (@newsid IS Null) return (1) end else select @status = @status | 8 -- NTUser -- FAIL IF SID ALREADY IN SYSUSERS -- if exists (select sid from sysusers where sid = @newsid) return (1) -- OBTAIN NEW UID (RESERVE 1-4) -- if user_name(5) IS NULL select @uid = 5 else select @uid = min(uid)+1 from sysusers where uid >= 5 and uid < (16384 - 1) -- stay in users range and user_name(uid+1) is null -- uid not in use if @uid is null begin raiserror(15065,-1,-1) return (1) end -- ADD IMPLICIT SYSUSERS ENTRY -- insert into sysusers values (@uid, @status, @ntname, @newsid, 0x00, getdate(), getdate(), 0, NULL) -- INVALIDATE UID CACHE FOR THIS DB -- grant all to null end -- RETURN FAILURE/SUCCESS -- return @@error -- sp_MSadduser_implicit_ntlogin <5‡Ћ2 §8---------------------------------------- -- NOTE: FOR INTERNAL SECURITY USE ONLY! -- DO NOT DOCUMENT OR USE! ---------------------------------------- create procedure sp_MScheck_uid_owns_anything @uid smallint -- uid to for which to check ownership as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @isowner int select @isowner = 0 -- CHECK IF USER OWNS ANY OBJECTS -- select @isowner = 0 if exists (select uid from sysobjects where uid = @uid) begin raiserror(15183,-1,-1) select name, type from sysobjects where uid = @uid select @isowner = 1 end -- CHECK IF USER OWNS ANY TYPES -- if exists (select uid from systypes where uid = @uid) begin raiserror(15184,-1,-1) select user_type = name, physical_type = type_name(xtype) from systypes where uid = @uid select @isowner = 1 end -- CHECK IF USER GRANTED ANY PERMISSIONS -- if exists (select grantor from syspermissions where grantor = @uid) begin raiserror(15284,-1,-1) select 'Grantee'=user_name(grantee) ,'Object'=object_name(id) from syspermissions where grantor = @uid select @isowner = 1 end -- CHECK IF USER OWNS ANY ROLES -- if exists (select altuid from sysusers where altuid = @uid and (issqlrole = 1 or isapprole = 1)) begin raiserror(15421,-1,-1) select 'Role Name' = name, 'Type' = CASE WHEN issqlrole=1 THEN 'SQL Role' ELSE 'App Role' END from sysusers where altuid = @uid and (issqlrole = 1 or isapprole = 1) select @isowner = 1 end return @isowner -- sp_MScheck_uid_owns_anything ћThe specified dynamic snapshot job name '%ls' is already in use. Try the operation again with a different job name.0QS  Only one of the parameters, @dynamic_snapshot_jobid or @dynamic_snapshot_jobname, can be specified with a nondefault value.0RS БFailed to create a sub-directory under the replication working directory.(%ls)y0SS …Failed to copy user script file to the Distributor.(%ls)0TS ЗFailed to retrieve information about the publication : %ls. Check the name again.0US “Protocol error. Message indicates a generation has disappeared.0VS яCannot initialize Message Queuing-based subscription because the platform is not Message Queuing %s compliant0WS ЁWarning: column '%s' already exists in the vertical partition already.г0XS ‘Warning: column '%s' does not exist in the vertical partition.0YS ЃInvalid @subscriber_type value. Valid options are 'local' and 'global'.0ZS !Cannot drop article '%s' from publication '%s' because its snapshot has been run and this publication could have active subscriptions.ССС0[S ыWarning: the publication uses a feature that is only supported only by Ssubscribers running '%s' or higher.0\S On Demand user script cannot be applied to the snapshot publication.d0]S я@dynamic_snapshot_location cannot be a non-empty string while @alt_snapshot_folder is neither empty nor null.&0^S З@dynamic_snapshot_location cannot be a non-empty string while @use_ftp is 'true'.0_S _Could not find stored procedure '%s'.0`S iInvalid value specified for %ls parameter.0aS ‰Excluding the last column in the partition is not allowed.S0bS kFailed to change the owner of '%s' to '%s'. ’оооо 2’€~’W x;ЈH’@~’Й$x;Ј[ Ь}’ЖџџџџџџџџџџџџXXXXOOx’’КАБЂкmasterFFFFА’H’ЛАБЂкНННННsysmessagesXЬ`HXИЬЈpЬмHTHLиl|Ј h И ј р L Ф,t˜ш€ьœФмZ `ыщ<й#ъІx 7"){ш<вX‚1 ›8 /* Procedure for 8.0 server */ CREATE PROCEDURE sp_column_privileges_rowset ( @table_name sysname, @table_schema sysname = null, @column_name sysname = null, @grantor sysname = null, @grantee sysname = null ) as select GRANTOR = user_name(p.grantor), GRANTEE = user_name(u.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), PRIVILEGE_TYPE = convert(nvarchar(30), case p.action when 193 then N'SELECT' when 195 then N'INSERT' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,case when p.protecttype = 205 then 0 else 1 end) from sysprotects p, sysobjects o, sysusers u, master.dbo.spt_values v, syscolumns c, sysmembers m where o.name = @table_name and o.type in ('U','V','S') and (@table_schema is null or @table_schema = user_name(o.uid)) and c.id = o.id and (@column_name is null or @column_name = c.name) and c.id = p.id and (@grantor is null or @grantor = user_name(p.grantor)) and case when substring(p.columns, 1, 1) & 1 is null then 255 /* all columns have permission */ when substring(p.columns, 1, 1) & 1 = 0 then convert(tinyint, substring(p.columns, v.low, 1)) else (~convert(tinyint, coalesce(substring(p.columns, v.low, 1),0))) end & v.high <> 0 /* permission applies to this column */ and v.number <= (select count(*) from syscolumns where id = o.id) /* ranges from 1 to # of columns in table */ and v.type = 'P' and v.number = c.colid and (@grantee is null or @grantee = user_name(u.uid)) /* expand groups - AKUNDONE: only 1 level of group unrolling here. Need more?? */ and (u.uid > 0 and u.uid < 16384) and ((p.uid = u.uid) or (p.uid = m.groupuid and u.uid = m.memberuid)) and p.protecttype <> 206 /* only grant rows */ and p.action in (26,193,195,197) and o.uid <> u.uid /* no rows for owner */ and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = p.action and p1.id = p.id and p1.uid = u.uid and case when substring(p1.columns, 1, 1) & 1 is null then 255 /* all columns have permission */ when substring(p1.columns, 1, 1) & 1 = 0 then convert(tinyint, substring(p1.columns, v.low, 1)) else (~convert(tinyint,coalesce(substring(p.columns, v.low, 1),0))) end & v.high <> 0) /* permission applies to this column */ union select /* Add rows for table owner */ GRANTOR = user_name(u.uid), GRANTEE = user_name(o.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), PRIVILEGE_TYPE = convert(nvarchar(30), case v.number when 193 then N'SELECT' when 195 then N'INSERT' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,1) from sysobjects o, master.dbo.spt_values v, sysusers u, syscolumns c where o.name = @table_name and o.type in ('U','V','S') and (@table_schema is null or @table_schema = user_name(o.uid)) and (@grantee is null or @grantee = user_name(o.uid)) and c.id = o.id and (@column_name is null or @column_name = c.name) and u.uid = 1 /* grantor is dbo of database */ and (@grantor is null or @grantor = user_name(u.uid)) and v.type = 'P' /* cross product to get all exposed privileges */ and v.number in (26,193,195,197) and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = v.number and p1.id = o.id and p1.uid = o.uid) order by 4, 5, 6, 9, 1, 2 <вX‚1 (8CREATE PROCEDURE sp_column_privileges_rowset;2 ( @table_schema sysname = null, @column_name sysname = null, @grantor sysname = null, @grantee sysname = null ) as select GRANTOR = user_name(p.grantor), GRANTEE = user_name(u.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), PRIVILEGE_TYPE = convert(nvarchar(30), case p.action when 193 then N'SELECT' when 195 then N'INSERT' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,case when p.protecttype = 205 then 0 else 1 end) from sysprotects p, sysobjects o, sysusers u, master.dbo.spt_values v, syscolumns c, sysmembers m where o.type in ('U','V','S') and (@table_schema is null or @table_schema = user_name(o.uid)) and c.id = o.id and (@column_name is null or @column_name = c.name) and c.id = p.id and (@grantor is null or @grantor = user_name(p.grantor)) and case when substring(p.columns, 1, 1) & 1 is null then 255 /* all columns have permission */ when substring(p.columns, 1, 1) & 1 = 0 then convert(tinyint, substring(p.columns, v.low, 1)) else (~convert(tinyint, coalesce(substring(p.columns, v.low, 1),0))) end & v.high <> 0 /* permission applies to this column */ and v.number <= (select count(*) from syscolumns where id = o.id) /* ranges from 1 to # of columns in table */ and v.type = 'P' and v.number = c.colid and (@grantee is null or @grantee = user_name(u.uid)) /* expand groups - AKUNDONE: only 1 level of group unrolling here. Need more?? */ and (u.uid > 0 and u.uid < 16384) and ((p.uid = u.uid) or (p.uid = m.groupuid and u.uid = m.memberuid)) and p.protecttype <> 206 /* only grant rows */ and p.action in (26,193,195,197) and o.uid <> u.uid /* no rows for owner */ and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = p.action and p1.id = p.id and p1.uid = u.uid and case when substring(p1.columns, 1, 1) & 1 is null then 255 /* all columns have permission */ when substring(p1.columns, 1, 1) & 1 = 0 then convert(tinyint, substring(p1.columns, v.low, 1)) else (~convert(tinyint,coalesce(substring(p.columns, v.low, 1),0))) end & v.high <> 0) /* permission applies to this column */ union select /* Add rows for table owner */ GRANTOR = user_name(u.uid), GRANTEE = user_name(o.uid), TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), PRIVILEGE_TYPE = convert(nvarchar(30), case v.number when 193 then N'SELECT' when 195 then N'INSERT' when 197 then N'UPDATE' else N'REFERENCES' end), IS_GRANTABLE = convert(bit,1) from sysobjects o, master.dbo.spt_values v, sysusers u, syscolumns c where o.type in ('U','V','S') and (@table_schema is null or @table_schema = user_name(o.uid)) and (@grantee is null or @grantee = user_name(o.uid)) and c.id = o.id and (@column_name is null or @column_name = c.name) and u.uid = 1 /* grantor is dbo of database */ and (@grantor is null or @grantor = user_name(u.uid)) and v.type = 'P' /* cross product to get all exposed privileges */ and v.number in (26,193,195,197) and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = v.number and p1.id = o.id and p1.uid = o.uid) order by 4, 5, 6, 9, 1, 2 en added to the publication after its snapshot has been generated.˜˜˜ЭЭЭЭ table(А\ќЄp ємШhА$И X   А  $ \Ш$4 ш`Ќ Єћ`ьъ<№ ыІxш7"mЇ<ŠЯ/ ˜ 8create procedure sp_addsrvrolemember @loginame sysname, -- login name @rolename sysname = NULL -- server role name as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @rolebit smallint, @ismem int, @sid varbinary(85) -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addsrvrolemember') return (1) end -- VALIDATE SERVER ROLE NAME, CHECKING PERMISSIONS -- select @ismem = is_srvrolemember(@rolename) if @ismem is null begin dbcc auditevent (108, 1, 0, @loginame, NULL, @rolename, NULL) raiserror(15402, -1, -1, @rolename) return (1) end if @ismem = 0 begin dbcc auditevent (108, 1, 0, @loginame, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end -- AUDIT A SUCCESSFUL SECURITY CHECK -- dbcc auditevent (108, 1, 1, @loginame, NULL, @rolename, NULL) -- OBTAIN THE BIT FOR THIS ROLE -- select @rolebit = CASE @rolename WHEN 'sysadmin' THEN 16 WHEN 'securityadmin' THEN 32 WHEN 'serveradmin' THEN 64 WHEN 'setupadmin' THEN 128 WHEN 'processadmin' THEN 256 WHEN 'diskadmin' THEN 512 WHEN 'dbcreator' THEN 1024 WHEN 'bulkadmin' THEN 4096 ELSE NULL END select @sid = sid from master.dbo.syslogins where loginname = @loginame -- ADD ROW FOR NT LOGIN IF NEEDED -- if @sid is null begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15007,-1,-1,@loginame) return (1) end end -- CANNOT CHANGE SA ROLES -- else if @sid = 0x1 -- 'sa' begin raiserror(15405, -1 ,-1, @loginame) return (1) end -- UPDATE ROLE MEMBERSHIP -- update master.dbo.sysxlogins set xstatus = xstatus | @rolebit, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') raiserror(15488,-1,-1,@loginame,@rolename) -- FINALIZATION: RETURN SUCCESS/FAILURE return (@@error) -- sp_addsrvrolemember <У>У0  8create procedure sp_dropsrvrolemember @loginame sysname, -- login name @rolename sysname = NULL -- server role name as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @rolebit smallint, @ismem int, @sid varbinary(85) -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_dropsrvrolemember') return (1) end -- VALIDATE SERVER ROLE NAME, CHECKING PERMISSIONS -- select @ismem = is_srvrolemember(@rolename) if @ismem is null begin dbcc auditevent (108, 2, 0, @loginame, NULL, @rolename, NULL) raiserror(15402, -1, -1, @rolename) return (1) end if @ismem = 0 begin dbcc auditevent (108, 2, 0, @loginame, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end -- AUDIT THE SUCCESSFUL SECURITY CHECK -- dbcc auditevent (108, 2, 1, @loginame, NULL, @rolename, NULL) -- OBTAIN THE BIT FOR THIS ROLE -- select @rolebit = CASE @rolename WHEN 'sysadmin' THEN 16 WHEN 'securityadmin' THEN 32 WHEN 'serveradmin' THEN 64 WHEN 'setupadmin' THEN 128 WHEN 'processadmin' THEN 256 WHEN 'diskadmin' THEN 512 WHEN 'dbcreator' THEN 1024 WHEN 'bulkadmin' THEN 4096 ELSE NULL END select @sid = sid from master.dbo.syslogins where loginname = @loginame -- ERROR IF USER DOESNT EXIST -- if @sid is null begin raiserror(15007,-1,-1,@loginame) return (1) end -- CANNOT CHANGE SA ROLES -- else if @sid = 0x1 -- 'sa' begin raiserror(15405, -1 ,-1, @loginame) return (1) end -- UPDATE ROLE MEMBERSHIP -- update master.dbo.sysxlogins set xstatus = xstatus & ~@rolebit, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') raiserror(15489,-1,-1,@loginame,@rolename) -- FINALIZATION: RETURN SUCCESS/FAILURE return (@@error) -- sp_dropsrvrolemember erge filter '%s' does not exist.0sS Failed to add publication '%s' to Active Directory. %s;Ј0tS KCould not add article '%s' because a snapshot is already generated. Set @force_invalidate_snapshot to 1 to force this and invalidate the existing snapshot.0uS QCould not add article '%s' because there are active subscriptions. Set @force_reinit_subscription to 1 to force this and reintialize the active subscriptions....0vS ICould not add filter '%s' because a snapshot is already generated. Set @force_invalidate_snapshot to 1 to force this and invalidate the existing snapshot.№№№0wS OCould not add filter '%s' because there are active subscriptions. Set @force_reinit_subscription to 1 to force this and reintialize the active subscriptions.0xS ЁThe specified offload server name contains the invalid character '%s'.a0yS …Could not remove publication '%s' from Active Directory.КЇ0zS {The resync date specified '%s' is not a valid date.0{S ЃCould not propagate the change on publication '%s' to Active Directory.0|S Cannot drop filter '%s' from publication '%s' because its snapshot has been run and this publication could have active subscriptions.0}S ХCould not open database %s. Replication settings and system objects could not be upgraded. If the database is used for replication, run sp_vupgrade_replication in the [master] database when the database is available.0~S ™Upgrading distribution settings and system objects in database %s.ОЇ0S —Upgrading publication settings and system objects in database %s.]]]] р˜ ПЇ%(x;Јџ ЪЪЪЪЪрD|\И<ДРt дPјTаЈX Є L  Дœ„pФФXј `эы<Ь(ьВ Q$СЗ<юЧБ- і8 -- 8.0 version of sp_add_server_sortinfo -- create procedure sp_add_server_sortinfo75 as -- spt_server_info has unigue clustered index on attribute_id delete spt_server_info where attribute_id in (16, 18) declare @sortid int, @csid int, @sortname varchar(255), @attribute_value varchar(255) declare @case_sensitive bit declare @ncase_sensitive bit select @case_sensitive = case when 'a' <> 'A' then 1 else 0 end select @ncase_sensitive = case when N'a' <> N'A' then 1 else 0 end select @sortid = convert(int, ServerProperty('sqlsortorder')) select @csid = convert(int, ServerProperty('sqlcharset')) select @sortname = name from master.dbo.syscharsets where id = @sortid if @sortid = 0 -- Non-SQL Collations BEGIN select @attribute_value = 'charset=' + name + ' collation=' + isnull(convert(sysname, ServerProperty('collation')), ' ') from syscharsets where id = @csid END else BEGIN select @attribute_value = 'charset='+ name +' sort_order=' + @sortname + ' charset_num=' + rtrim(convert(char(4),@csid))+ ' sort_order_num=' + rtrim(convert(char(4),@sortid)) from syscharsets where id = @csid END insert into spt_server_info values (18,'COLLATION_SEQ', isnull(@attribute_value, ' ')) if @case_sensitive = 1 /* If case sensitive server */ begin insert into spt_server_info values (16,'IDENTIFIER_CASE','SENSITIVE') end else begin insert into spt_server_info values (16,'IDENTIFIER_CASE','MIXED') end update spt_datatype_info set CASE_SENSITIVE = @case_sensitive where DATA_TYPE in (-1, 1, 12) /* CHAR types */ update spt_datatype_info set CASE_SENSITIVE = @ncase_sensitive where DATA_TYPE in (-10, -9, -8) /* NCHAR types */ update spt_provider_types set case_sensitive = @case_sensitive where oledb_data_type = 129 /*DBTYPE_STR*/ update spt_provider_types set case_sensitive = @ncase_sensitive where oledb_data_type = 130 /*DBTYPE_WSTR*/ /* sp_add_server_info75 */ <вц- X8create procedure sp_defaultdb @loginame sysname, -- login name @defdb sysname -- default db as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) AND not @loginame = suser_sname() begin dbcc auditevent (106, 1, 0, @loginame, NULL, NULL, NULL) raiserror(15132,-1,-1) return (1) end ELSE begin dbcc auditevent (106, 1, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_defaultdb') return (1) end -- VALIDATE DATABASE NAME -- if db_id(@defdb) IS NULL begin raiserror(15010,-1,-1,@defdb) return (1) end -- ADD ROW FOR NT LOGIN IF NEEDED -- if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15007,-1,-1,@loginame) return (1) end end -- CHANGE DEFAULT DATABASE -- update master.dbo.sysxlogins set dbid = db_id(@defdb), xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE IF (@@error <> 0) return (1) raiserror(15486,-1,-1) return (0) -- sp_defaultdb <Qік. Y8create procedure sp_defaultlanguage @loginame sysname, -- login name @language sysname = NULL -- default language as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) AND not @loginame = suser_sname() begin dbcc auditevent (106, 2, 0, @loginame, NULL, NULL, NULL) raiserror(15247,-1,-1) return (1) end ELSE begin dbcc auditevent (106, 2, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_defaultlanguage') return (1) end -- VALIDATE LANGUAGE -- IF (@language is not Null) begin Execute @ret = sp_validlang @language IF (@ret <> 0) return (1) end else begin select @language = name from master.dbo.syslanguages where langid = @@default_langid --default language if @language is null select @language = N'us_english' end -- ADD ROW FOR NT LOGIN IF NEEDED -- if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15007,-1,-1,@loginame) return (1) end end -- CHANGE DEFAULT LANGUAGE -- update master.dbo.sysxlogins set language = @language, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE if @@error <> 0 return (1) raiserror(15487,-1,-1,@loginame,@language) return (0) -- sp_defaultlanguage <`š/ 8 /* Procedure for 8.0 server */ create procedure sp_catalogs_rowset ( @catalog_name sysname ) as select CATALOG_NAME = name, DESCRIPTION = convert(nvarchar(1),null) from master.dbo.sysdatabases where name = @catalog_name <`š/ 8create procedure sp_catalogs_rowset;2 ( @dummy int /* remove when Hydra bug 17032 is fixed */ ) as select CATALOG_NAME = name, DESCRIPTION = convert(nvarchar(1),null) from master.dbo.sysdatabases order by 1 <`š/ 8create procedure sp_catalogs_rowset;5 ( @server_name sysname, @catalog_name sysname = NULL ) as select CATALOG_NAME, DESCRIPTION from master.dbo.SYSREMOTE_CATALOGS < @server_name, @catalog_name > order by 1 Possibly due to active schema change activity.40ŠS щSchema change failed on publication '%s'. Possibly due to active snapshot or other schema change activity.c0‹S лThe expanded dynamic snapshot view definition of one of the articles exceeds the system limit of 3499 characters. Consider using the default mechanism instead of the dynamic snapshot for initializing the specified subscription.0ŒS ЭThe concurrent snapshot for publication '%s' has not been activated by the Log Reader Agent.0S sWarning: only Subscribers running SQL Server 2000 can synchronize with publication '%s' because column-level collation is scripted out with the article schema creation script.ФЅGGGGаЅ`ЅИФљІз’’’’’ЧЧЧЧјЅЈЅЙфБЂ€rrrrrЅ,'''' рІаЅКфБЂ€ттттт2ЗЗЗЗˆЅ№ЅXDx;Ј ЯЯЯЯЯ<`’d’€4 ЄЅššššriИЅ ЅY x;ЈЕ пппппdlevelŠŠŠŠel `’ˆЅZ PtˆММ4(ДшL„ ь P ˆ h ФHРЬ&!ЎV`юь<2ФэВP$й(I}<C[е* D8 /* Procedure for 8.0 server */ create procedure sp_tableswc( @table_name nvarchar(384) = null, @table_owner nvarchar(384) = null, @table_qualifier sysname = null, @table_type varchar(100) = null) as declare @databasename sysname declare @qualprocname nvarchar(141) /* 128 + '..sp_tables' */ create table #sptables ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default null, TABLE_TYPE varchar(32) collate database_default null, REMARKS varchar(254) collate database_default null) declare databases CURSOR FOR select name from master..sysdatabases where name like @table_qualifier and name <> 'model' and has_dbaccess(name)=1 for read only open databases fetch next from databases into @databasename while (@@FETCH_STATUS <> -1) begin if (charindex('%', @databasename) = 0) begin /* skip dbnames w/wildcard characters to prevent loop */ select @qualprocname = @databasename + '..sp_tables' insert into #sptables exec @qualprocname @table_name, @table_owner, @databasename, @table_type end fetch next from databases into @databasename end deallocate databases select * from #sptables order by 4, 1, 2, 3 <me + v8create procedure sp_denylogin @loginame sysname AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) begin dbcc auditevent (105, 3, 0, @loginame, NULL, NULL, NULL) raiserror(15247,-1, -1) return (1) end ELSE begin dbcc auditevent (105, 3, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_denylogin') return (1) end -- DISALLOW SQL LOGIN (IE. MUST BE 'DOMAIN\USER') -- if (charindex('\', @loginame) = 0) begin raiserror(15407, -1, -1, @loginame) return (1) end -- ADD ROW FOR NT LOGIN IF NEEDED -- if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15401,-1,-1 ,@loginame) return (1) end end -- UPDATE LOGIN BITS -- update master.dbo.sysxlogins set xstatus = (xstatus & ~2) | 1, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE if @@error <> 0 begin raiserror(15482,-1,-1,@loginame) return (1) end else begin raiserror(15483,-1,-1,@loginame) return (0) end -- sp_denylogin <І‰ў+ 8create procedure sp_revokelogin @loginame sysname AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @sid varbinary(85) -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) begin dbcc auditevent (105, 2, 0, @loginame, NULL, NULL, NULL) raiserror(15247,-1,-1) return (1) end ELSE begin dbcc auditevent (105, 2, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_revokelogin') return (1) end -- DISALLOW SQL LOGIN (IE. MUST BE 'DOMAIN\USER') -- if (charindex('\', @loginame) = 0) begin raiserror(15407, -1, -1, @loginame) return (1) end -- REMOVE ROW IF EXISTS FOR LOGIN PROVIDED IT IS AN NT NAME -- -- select @sid = suser_sid(@loginame) -- if @sid is not null if exists(select * from master.dbo.syslogins where loginname = @loginame and isntname = 1) begin select @sid = sid from master.dbo.syslogins where loginname = @loginame and isntname = 1 -- For nt logins, skip sid foreign-key checks. -- -- also deletes remote logins mapped to this user -- delete from master.dbo.sysxlogins where sid = @sid -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') end else begin -- CHECK IF THIS IS A VALID NT NAME BY GETTING ITS SID FROM NT declare @newsid varbinary(85) select @newsid = get_sid('\U'+@loginame, NULL) -- NT user IF (@newsid IS Null) begin select @newsid = get_sid('\G'+@loginame, NULL) -- NT group IF (@newsid IS Null) begin raiserror(15401,-1,-1 ,@loginame) return (1) end end end -- FINALIZATION: RETURN SUCCESS/FAILURE if @@error <> 0 begin raiserror(15484,-1,-1,@loginame) return (1) end else begin raiserror(15485,-1,-1,@loginame) return (0) end -- sp_revokelogin <ЕЃН, - 8 /* ** (2/11/98) ** The following SP is shared by instcat.sql and the server to add information ** related to server language collations. The server calls it at the end of ** collation change to update the catalog with the new language collations ** Everything in this SP should NOT use tempdb. */ create procedure sp_add_server_sortinfo as -- spt_server_info has unigue clustered index on attribute_id delete spt_server_info where attribute_id in (16,18) --insert into spt_server_info -- select 18,'COLLATION_SEQ', -- 'charset='+t2.name+' sort_order='+t1.name -- +' charset_num='+rtrim(convert(char(4),t1.csid))+ -- ' sort_order_num='+rtrim(convert(char(4),t1.id)) -- from master.dbo.syscharsets t1, master.dbo.syscharsets t2, master.dbo.sysconfigures t3 -- where t1.csid=t2.id and t1.id=t3.value and t3.config in (123,1123) declare @sortid int, @csid int, @sortname varchar(255), @attribute_value varchar(255) declare @case_sensitive bit declare @ncase_sensitive bit select @case_sensitive = case when 'a' <> 'A' then 1 else 0 end select @ncase_sensitive = case when N'a' <> N'A' then 1 else 0 end select @sortid = value from sysconfigures where config = 1123 select @csid = csid, @sortname = name from master.dbo.syscharsets where id = @sortid select @attribute_value = 'charset='+ name +' sort_order=' + @sortname + ' charset_num=' + rtrim(convert(char(4),@csid))+ ' sort_order_num=' + rtrim(convert(char(4),@sortid)) from syscharsets where id = @csid insert into spt_server_info values (18,'COLLATION_SEQ', isnull(@attribute_value, ' ')) if @case_sensitive = 1 /* If case sensitive server */ begin insert into spt_server_info values (16,'IDENTIFIER_CASE','SENSITIVE') end else begin insert into spt_server_info values (16,'IDENTIFIER_CASE','MIXED') end update spt_datatype_info set CASE_SENSITIVE = @case_sensitive where DATA_TYPE in (-1, 1, 12) /* CHAR types */ update spt_datatype_info set CASE_SENSITIVE = @ncase_sensitive where DATA_TYPE in (-10, -9, -8) /* NCHAR types */ update spt_provider_types set case_sensitive = @case_sensitive where oledb_data_type = 129 /*DBTYPE_STR*/ update spt_provider_types set case_sensitive = @ncase_sensitive where oledb_data_type = 130 /*DBTYPE_WSTR*/ /* sp_add_server_sortinfo */ <п­ђ, k8create procedure xp_revokelogin @loginame sysname AS set nocount on -- IF NAME NOT 'DOMAIN\USER', ADD DEFAULT DOMAIN -- if (charindex('\', @loginame) = 0) begin declare @defdom varchar(25) exec master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer', 'DefaultDomain', @defdom out select @loginame = @defdom + '\' + @loginame end Declare @ret int -- return value of sp call execute @ret = sp_revokelogin @loginame return (@ret) pФиш А`ДЬРРјрpќ,P d ˜ ь р ˜Y, Є`яэ<У/юІѕ7"ъRh<бэ(  ь8 create procedure sp_ddopen; 9( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774), @p4 nvarchar(774), @p5 nvarchar(774), @p6 nvarchar(774)) as set nocount on declare @ret int create table #spstatistics ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default not null, NON_UNIQUE smallint null, INDEX_QUALIFIER sysname collate database_default null, INDEX_NAME sysname collate database_default null, TYPE smallint not null, SEQ_IN_INDEX smallint null, COLUMN_NAME sysname collate database_default null, COLLATION char(1) collate database_default null, CARDINALITY int null, PAGES int null, FILTER_CONDITION varchar(128) collate database_default null ) insert into #spstatistics exec sp_statistics @p1,@p2,@p3,@p4,@p5,@p6 exec @ret = sp_cursoropen @handle output, 'select * from #spstatistics', @scrollopt output, @ccopt output, @rows output drop table #spstatistics return @ret <бэ(  т8 create procedure sp_ddopen; 10( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774)) as set nocount on declare @ret int create table #spprocedures ( PROCEDURE_QUALIFIER sysname collate database_default null, PROCEDURE_OWNER sysname collate database_default null, PROCEDURE_NAME nvarchar(134) collate database_default not null, /*134=sysname+';'+ltrim(str(c.number,5))*/ NUM_INPUT_PARAMS int null, NUM_OUTPUT_PARAMS int null, NUM_RESULT_SETS int null, REMARKS varchar(254) collate database_default null, PROCEDURE_TYPE smallint null ) insert into #spprocedures exec sp_stored_procedures @p1,@p2,@p3 exec @ret = sp_cursoropen @handle output, 'select * from #spprocedures', @scrollopt output, @ccopt output, @rows output drop table #spprocedures return @ret <бэ(  Т8 create procedure sp_ddopen; 11( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774)) as set nocount on declare @ret int create table #sptabpriv ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default not null, GRANTOR sysname collate database_default null, GRANTEE sysname collate database_default not null, PRIVILEGE varchar(32) collate database_default not null, IS_GRANTABLE varchar(3) collate database_default null ) insert into #sptabpriv exec sp_table_privileges @p1,@p2,@p3 exec @ret = sp_cursoropen @handle output, 'select * from #sptabpriv', @scrollopt output, @ccopt output, @rows output drop table #sptabpriv return @ret <бэ(  8 create procedure sp_ddopen; 12( @handle int output, @procname sysname, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774), @p4 nvarchar(774), @p5 nvarchar(774)) as set nocount on declare @ret int create table #sptables ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default null, TABLE_TYPE varchar(32) collate database_default null, REMARKS varchar(254) collate database_default null) if @procname = 'sp_tables' begin insert into #sptables exec sp_tables @p1,@p2,@p3,@p4 end else begin insert into #sptables exec sp_tables_ex @p1,@p2,@p3,@p4,@p5 end exec @ret = sp_cursoropen @handle output, 'select * from #sptables', @scrollopt output, @ccopt output, @rows output drop table #sptables return @ret <бэ(  8 create procedure sp_ddopen; 13( @handle int output, @procname sysname, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), -- @table_name @p2 nvarchar(774), -- @table_owner @p3 nvarchar(774), -- @table_qualifier @p4 nvarchar(774)) -- @table_type as -- this code was copied from sp_tableswc (for 8.0). Any changes -- made here need to be evaluated for porting to sp_tableswc. set nocount on declare @ret int declare @databasename sysname declare @qualprocname nvarchar(141) /* 128 + '..sp_tables' */ create table #sptables ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default null, TABLE_TYPE varchar(32) collate database_default null, REMARKS varchar(254) collate database_default null) declare databases CURSOR FOR select name from master..sysdatabases where name like @p3 and name <> 'model' and has_dbaccess(name)=1 for read only open databases fetch next from databases into @databasename while (@@FETCH_STATUS <> -1) begin if (charindex('%', @databasename) = 0) begin /* skip dbnames w/wildcard characters to prevent loop */ select @qualprocname = @databasename + '..sp_tables' insert into #sptables exec @qualprocname @p1, @p2, @databasename, @p4 end fetch next from databases into @databasename end deallocate databases exec @ret = sp_cursoropen @handle output, 'select * from #sptables', @scrollopt output, @ccopt output, @rows output drop table #sptables return @ret <ћ") 8create proc sp_validatelogins AS -- Must be securityadmin (or sysadmin) to execute if is_srvrolemember('securityadmin') = 0 and is_srvrolemember('sysadmin') = 0 begin raiserror(15247,-1,-1) return 1 end -- Use get_sid() to determine if nt name is still valid (builtin is only available from system procs!) select 'SID' = sid, 'NT Login' = loginname from master.dbo.syslogins where isntname = 1 and get_sid(loginname, NULL) is null return 0 -- sp_validatelogins <4A* 8create procedure xp_grantlogin @loginame sysname, @logintype varchar(5) = Null -- ignored unless 'admin' AS set nocount on -- IF NAME NOT 'DOMAIN\USER', ADD DEFAULT DOMAIN -- if (charindex('\', @loginame) = 0) begin declare @defdom varchar(25) exec master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer', 'DefaultDomain', @defdom out select @loginame = @defdom + '\' + @loginame end Declare @ret int -- return value of sp call execute @ret = sp_grantlogin @loginame if (@ret = 0 and @logintype = 'admin') execute @ret = sp_addsrvrolemember @loginame, 'sysadmin' return (@ret) auto-generate custom procedures schema option is not enabled.d0T sReplication custom procedures for article '%s':0ЂS SSnapshot Agent startup message.0ЃS [Distribution Agent startup message.Tј , М H Ј    , ИЈ L ј dxˆ№ . L`јю<фяІˆО7"œЬ=’<бэ( ?8 create procedure sp_ddopen; 3( @handle int output, @procname sysname, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774), @p4 nvarchar(774), @p5 nvarchar(774), @ODBCVer int) as set nocount on declare @ret int create table #spcolumns ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default not null, COLUMN_NAME sysname collate database_default not null, DATA_TYPE smallint not null, TYPE_NAME sysname collate database_default not null, "PRECISION" int null, LENGTH int null, SCALE smallint null, RADIX smallint null, NULLABLE smallint not null, REMARKS varchar(254) collate database_default null, COLUMN_DEF nvarchar(3000) collate database_default null, SQL_DATA_TYPE smallint null, SQL_DATETIME_SUB smallint null, CHAR_OCTET_LENGTH int null, ORDINAL_POSITION int not null, IS_NULLABLE varchar(254) collate database_default null, SS_DATA_TYPE tinyint null ) if @procname = 'sp_columns' begin insert into #spcolumns exec sp_columns @p1,@p2,@p3,@p4,@ODBCVer end else begin insert into #spcolumns exec sp_columns_ex @p1,@p2,@p3,@p4,@p5,@ODBCVer end exec @ret = sp_cursoropen @handle output, 'select * from #spcolumns', @scrollopt output, @ccopt output, @rows output drop table #spcolumns return @ret <бэ( Y8 create procedure sp_ddopen; 4( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p7 int, @ODBCVer int) as set nocount on declare @ret int create table #spdatatypeinfo ( TYPE_NAME sysname collate database_default not null, DATA_TYPE smallint not null, "PRECISION" int null, LITERAL_PREFIX varchar(32) collate database_default null, LITERAL_SUFFIX varchar(32) collate database_default null, CREATE_PARAMS varchar(32) collate database_default null, NULLABLE smallint not null, CASE_SENSITIVE smallint not null, SEARCHABLE smallint not null, UNSIGNED_ATTRIBUTE smallint null, MONEY smallint not null, AUTO_INCREMENT smallint null, LOCAL_TYPE_NAME sysname collate database_default null, MINIMUM_SCALE smallint null, MAXIMUM_SCALE smallint null, SQL_DATA_TYPE smallint not null, SQL_DATETIME_SUB smallint null, NUM_PREC_RADIX int null, INTERVAL_PRECISION smallint NULL, USERTYPE smallint not null) insert into #spdatatypeinfo exec sp_datatype_info @p7,@ODBCVer exec @ret = sp_cursoropen @handle output, 'select * from #spdatatypeinfo', @scrollopt output, @ccopt output, @rows output drop table #spdatatypeinfo return @ret <бэ( C8 create procedure sp_ddopen; 5( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774), @p4 nvarchar(774), @p5 nvarchar(774), @p6 nvarchar(774)) as set nocount on declare @ret int create table #spfkeys ( PKTABLE_QUALIFIER sysname collate database_default null, PKTABLE_OWNER sysname collate database_default null, PKTABLE_NAME sysname collate database_default not null, PKCOLUMN_NAME sysname collate database_default not null, FKTABLE_QUALIFIER sysname collate database_default null, FKTABLE_OWNER sysname collate database_default null, FKTABLE_NAME sysname collate database_default not null, FKCOLUMN_NAME sysname collate database_default not null, KEY_SEQ smallint not null, UPDATE_RULE smallint null, DELETE_RULE smallint null, FK_NAME sysname collate database_default null, PK_NAME sysname collate database_default null, DEFERRABILITY smallint null ) insert into #spfkeys exec sp_fkeys @p1,@p2,@p3,@p4,@p5,@p6 exec @ret = sp_cursoropen @handle output, 'select * from #spfkeys', @scrollopt output, @ccopt output, @rows output drop table #spfkeys return @ret <бэ( _8 create procedure sp_ddopen; 6( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774)) as set nocount on declare @ret int create table #sppkeys ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default not null, COLUMN_NAME sysname collate database_default not null, KEY_SEQ smallint not null, PK_NAME sysname collate database_default null ) insert into #sppkeys exec sp_pkeys @p1,@p2,@p3 exec @ret = sp_cursoropen @handle output, 'select * from #sppkeys', @scrollopt output, @ccopt output, @rows output drop table #sppkeys return @ret <бэ( Ы8 create procedure sp_ddopen; 7( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774), @p4 nvarchar(774), @p5 nvarchar(774), @p6 nvarchar(774), @ODBCVer int) as set nocount on declare @ret int create table #spspeccol ( SCOPE smallint null, COLUMN_NAME sysname collate database_default not null, DATA_TYPE smallint not null, TYPE_NAME sysname collate database_default not null, "PRECISION" int null, LENGTH int null, SCALE smallint null, PSEUDO_COLUMN smallint null ) insert into #spspeccol exec sp_special_columns @p1,@p2,@p3,@p4,@p5,@p6,@ODBCVer exec @ret = sp_cursoropen @handle output, 'select * from #spspeccol', @scrollopt output, @ccopt output, @rows output drop table #spspeccol return @ret <бэ( Ћ8 create procedure sp_ddopen; 8( @handle int output, @scrollopt int output, @ccopt int output, @rows int output, @p1 nvarchar(774), @p2 nvarchar(774), @p3 nvarchar(774), @p4 nvarchar(774), @ODBCVer int) as set nocount on declare @ret int create table #spproccol ( PROCEDURE_QUALIFIER sysname collate database_default null, PROCEDURE_OWNER sysname collate database_default null, PROCEDURE_NAME sysname collate database_default not null, COLUMN_NAME sysname collate database_default not null, COLUMN_TYPE smallint not null, DATA_TYPE smallint null, TYPE_NAME sysname collate database_default not null, "PRECISION" int null, LENGTH int null, SCALE smallint null, RADIX smallint null, NULLABLE smallint not null, REMARKS varchar(254) collate database_default null, COLUMN_DEF nvarchar(3000) collate database_default null, SQL_DATA_TYPE smallint null, SQL_DATETIME_SUB smallint null, CHAR_OCTET_LENGTH int null, ORDINAL_POSITION int not null, IS_NULLABLE varchar(254) collate database_default null, SS_DATA_TYPE tinyint null ) insert into #spproccol exec sp_sproc_columns @p1,@p2,@p3,@p4,@ODBCVer exec @ret = sp_cursoropen @handle output, 'select * from #spproccol', @scrollopt output, @ccopt output, @rows output drop table #spproccol return @ret ЖЖЖЖ@˜№˜МфБЂ€\ХХХХР˜˜Н`АБЂй}}}}}Replication custom procedures for article '%s':((((˜@˜О(x;Јп      ЇЇ/а4$˜/ѕѕѕѕX˜Р˜П/ФљІзReplication custom procedures for article '%s':MMMM ˜˜Р(x;Јџ 88 М˜@@@@ р˜X˜СФљІз RRRRpˆф$$„ь 8 ˆ д €eš;ј Ÿ`€WZdЏЦ„Д №V0  P  P @P €P P P P P P  P @P €P P P P P P  P @P € P !P "P #P $P %P  &P @'P €(P )P *P +P ,P -P  .P @/P €0P 1P 2P 3P 4P 5P  6P @7P €8P 9P :P ;P <P =P  >P @?P €@P AP BP CP DP EP FP @GP €HP IP JP KP LP MP NP @OP €PP QP RP SP TP UP VP @WP €XP YP ZP [P \P ]P ^P @_P €`P aP bP cP dP eP fP @gP €hP iP jP kP lP mP  nP @oP €pP ame““““№KК˜KКыАБЂкFFFFFnumberКXLКРKКьDx;Ј ЎЎЎЎЎдLКŒOК@3€4 tLКћћћћ(ˆLК№KКэ x;ЈЕ nnnnnnumber;;;;ЌLКИLКXLКю АБЂк{{{{{type.... MКˆLКяDx;Ј RRRRR$PКMК€4 0) as t where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 TпП`пПиоП>x;ЈЧ ІІІІІnameѓѓѓѓЈпП8пП?$x;Ј 44444єоП8пПІaaaact РН`пП@8x;Јг ОООООЌЖй/Q( ччFа4д œ .`њј<ЕCљІˆЇ7"Ћy-ъ<&І& Y8create procedure sp_primarykeys( @table_server sysname, @table_name sysname = null, @table_schema sysname = null, @table_catalog sysname = null) as select TABLE_CAT = TABLE_CATALOG, TABLE_SCHEM = TABLE_SCHEMA, TABLE_NAME = TABLE_NAME, COLUMN_NAME = COLUMN_NAME, KEY_SEQ = ORDINAL, PK_NAME = convert(sysname, NULL) from master.dbo.SYSREMOTE_PRIMARY_KEYS < @table_server, @table_catalog, @table_schema, @table_name > order by TABLE_CAT, TABLE_SCHEM, TABLE_NAME, KEY_SEQ <PАE& с8create procedure sp_droplogin @loginame sysname as declare @exec_stmt nvarchar(890) -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @sid varbinary(85) /*Create temp tables before any DML to ensure dynamic*/ -- CREATE TEMPORARY TABLES FOR LATER USE -- create table #db_list (dbname sysname collate database_default not null, user_name sysname collate database_default not null) create table #retval (job_count int not null) -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) begin dbcc auditevent (104, 2, 0, @loginame, NULL, NULL, NULL) raiserror(15247,-1,-1) return (1) end ELSE begin dbcc auditevent (104, 2, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_droplogin') return (1) end -- VALIDATE LOGIN NAME (SQL LOGIN) -- select @sid = sid from master.dbo.syslogins where loginname = @loginame and isntname = 0 if (@sid is null) begin raiserror(15007,10,-1,@loginame) return(1) end -- CANNOT CHANGE SA ROLES -- else if @sid = 0x1 -- 'sa' begin raiserror(15405, -1 ,-1, @loginame) return (1) end -- CHECK IF @sid IS CURRENTLY LOGGED IN (ignore cached remote connections) -- if exists(select * from master.dbo.sysprocesses where sid = @sid and status != 'dormant') begin raiserror(15434, -1, -1, @loginame) return(1) end -- CHECK IF ANY DATABASES ARE OWNED BY LOGIN -- if exists(select * from master.dbo.sysdatabases where sid = @sid) begin raiserror(15174, -1, -1, @loginame) select 'Databases owned by login:' = name from master.dbo.sysdatabases where sid = @sid return(1) end -- COLLECT ALL INSTANCES OF USE OF THIS LOGIN IN SYSUSERS -- declare @dbname sysname declare ms_crs_dbname cursor local keyset for select name from master.dbo.sysdatabases open ms_crs_dbname fetch ms_crs_dbname into @dbname while @@fetch_status >= 0 begin if (has_dbaccess(@dbname) = 1) begin select @exec_stmt = 'use ' + quotename( @dbname , '[') + ' insert into #db_list (dbname, user_name) select N'+ quotename( @dbname , '''')+', name from sysusers where sid = suser_sid(N' + quotename( @loginame , '''') + ') ' exec (@exec_stmt) end else raiserror(15622,-1,-1, @dbname) fetch ms_crs_dbname into @dbname end deallocate ms_crs_dbname -- ERROR IF LOGIN USED AS USER IN ANY DATABASE -- if (select count(*) from #db_list) <> 0 begin raiserror(15175,-1,-1,@loginame) select 'Database name:' = dbname, 'User name:' = user_name, 'Mapping type:' = 'user' from #db_list order by dbname return (1) end -- VERIFY NO JOBS IN MSDB OWNED BY THIS LOGIN -- if db_id('msdb') is not null and object_id('msdb.dbo.sp_check_for_owned_jobs') is not null begin exec msdb.dbo.sp_check_for_owned_jobs @loginame, '#retval' if exists (select job_count from #retval where job_count > 0) begin declare @job_count int select @job_count = job_count from #retval raiserror(14248, -1, -1, @job_count) return (1) end end -- DELETE THIS LOGIN (ALSO DELETES REMOTE LOGINS MAPPED TO IT) -- delete from master.dbo.sysxlogins where sid = @sid -- FINALIZATION: SUCCESS/FAILURE MESSAGE if @@rowcount > 0 begin -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') raiserror(15479,-1,-1) return (0) end else begin raiserror(15007,10,-1,@loginame) return (1) end -- sp_droplogin <‰д9' 18---------------------------------------- -- NOTE: FOR INTERNAL SECURITY USE ONLY! -- DO NOT DOCUMENT OR USE! ---------------------------------------- create procedure sp_MSaddlogin_implicit_ntlogin @loginame sysname AS declare @default_lang sysname -- NO-OP IF LOGIN ALREADY EXISTS -- -- if suser_sid(@loginame) is null if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin -- MUST BE NT NAME -- if (charindex('\', @loginame) = 0) return (1) declare @newsid varbinary(85), @status smallint -- OBTAIN NT SID FOR THIS LOGIN (SET STATUS BITS) -- select @status = 4 -- ntlogin(4) select @newsid = get_sid('\U'+@loginame, NULL) -- NT user if (@newsid IS Null) begin select @newsid = get_sid('\G'+@loginame, NULL) -- NT group IF (@newsid IS Null) return (1) end else select @status = @status | 8 -- NTUser -- FAIL IF SID ALREADY IN SYSLOGINS if exists(select * from master.dbo.syslogins where sid = @newsid) return (1) select @default_lang = name from master.dbo.syslanguages where langid = @@default_langid --server default language -- ADD IMPLICIT LOGIN ENTRY -- INSERT into master.dbo.sysxlogins Values (NULL, @newsid, @status, getdate(), getdate(), @loginame, NULL, 1, isnull(@default_lang, N'us_english')) if @@error <> 0 -- this indicates we saw duplicate row return @@error -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') end -- RETURN FAILURE/SUCCESS return (0) -- sp_MSaddlogin_implicit_ntlogin <Тј-( x8create procedure sp_grantlogin @loginame sysname AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) begin dbcc auditevent (105, 1, 0, @loginame, NULL, NULL, NULL) raiserror(15247,-1,-1) return (1) end ELSE begin dbcc auditevent (105, 1, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_grantlogin') return (1) end -- DISALLOW SQL LOGIN (IE. MUST BE 'DOMAIN\USER') -- if (charindex('\', @loginame) = 0) begin raiserror(15407, -1, -1, @loginame) return (1) end -- ADD ROW FOR NT LOGIN IF NEEDED -- if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15401,-1,-1 ,@loginame) return (1) end end -- UPDATE LOGIN BITS -- update master.dbo.sysxlogins set xstatus = (xstatus & ~1) | 2, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE if @@error <> 0 begin raiserror(15480,-1,-1,@loginame) return (1) end else begin raiserror(15481,-1,-1,@loginame) return (0) end -- sp_grantlogin  |пН пНпНК x;ЈЧ яяяяяnumberККККп ЖШпН`пНЛx;ЈЯ =====фйН4ОЙмпНˆ hhhhxпН ЖпНМx;ЈЯ 22222даНФНЙionЄ‰ ЫšЙ`ћљ<>КњІˆM7"‡шI0<оg]$ J 8create procedure sp_addlogin @loginame sysname ,@passwd sysname = Null ,@defdb sysname = 'master' -- UNDONE: DEFAULT CONFIGURABLE??? ,@deflanguage sysname = Null ,@sid varbinary(16) = Null ,@encryptopt varchar(20) = Null AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on Declare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) begin dbcc auditevent (104, 1, 0, @loginame, NULL, NULL, @sid) raiserror(15247,-1,-1) return (1) end ELSE begin dbcc auditevent (104, 1, 1, @loginame, NULL, NULL, @sid) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addlogin') return (1) end -- VALIDATE LOGIN NAME AS: -- (1) Valid SQL Name (SQL LOGIN) -- (2) No backslash (NT users only) -- (3) Not a reserved login name execute @ret = sp_validname @loginame if (@ret <> 0) return (1) if (charindex('\', @loginame) > 0) begin raiserror(15006,-1,-1,@loginame) return (1) end --Note: different case sa is allowed. if (@loginame = 'sa' or lower(@loginame) in ('public')) begin raiserror(15405, -1 ,-1, @loginame) return (1) end -- LOGIN NAME MUST NOT ALREADY EXIST -- if exists(select * from master.dbo.syslogins where loginname = @loginame) begin raiserror(15025,-1,-1,@loginame) return (1) end -- VALIDATE DEFAULT DATABASE -- IF db_id(@defdb) IS NULL begin raiserror(15010,-1,-1,@defdb) return (1) end -- VALIDATE DEFAULT LANGUAGE -- IF (@deflanguage IS NOT Null) begin Execute @ret = sp_validlang @deflanguage IF (@ret <> 0) return (1) end ELSE begin select @deflanguage = name from master.dbo.syslanguages where langid = @@default_langid --server default language if @deflanguage is null select @deflanguage = N'us_english' end -- VALIDATE SID IF GIVEN -- if ((@sid IS NOT Null) and (datalength(@sid) <> 16)) begin raiserror(15419,-1,-1) return (1) end else if @sid is null select @sid = newid() if (suser_sname(@sid) IS NOT Null) begin raiserror(15433,-1,-1) return (1) end -- VALIDATE AND USE ENCRYPTION OPTION -- declare @xstatus smallint select @xstatus = 2 -- access if @encryptopt is null select @passwd = pwdencrypt(@passwd) else if @encryptopt = 'skip_encryption_old' begin select @xstatus = @xstatus | 0x800, -- old-style encryption @passwd = convert(sysname, convert(varbinary(30), convert(varchar(30), @passwd))) end else if @encryptopt <> 'skip_encryption' begin raiserror(15600,-1,-1,'sp_addlogin') return 1 end -- ATTEMPT THE INSERT OF THE NEW LOGIN -- INSERT INTO master.dbo.sysxlogins VALUES (NULL, @sid, @xstatus, getdate(), getdate(), @loginame, convert(varbinary(256), @passwd), db_id(@defdb), @deflanguage) if @@error <> 0 -- this indicates we saw duplicate row return (1) -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE -- raiserror(15298,-1,-1) return (0) -- sp_addlogin <Уwч$ 8create proc sp_prop_oledb_provider ( @p1 nvarchar(255)=NULL) as begin IF (not is_srvrolemember(N'setupadmin') = 1) begin raiserror(15003,-1,-1, N'setupadmin') return (1) end exec master.dbo.xp_prop_oledb_provider @p1 end <э% 98create procedure sp_foreignkeys( @table_server sysname, @pktab_name sysname = null, @pktab_schema sysname = null, @pktab_catalog sysname = null, @fktab_name sysname = null, @fktab_schema sysname = null, @fktab_catalog sysname = null) as select PKTABLE_CAT = PK_TABLE_CATALOG, PKTABLE_SCHEM = PK_TABLE_SCHEMA, PKTABLE_NAME = PK_TABLE_NAME, PKCOLUMN_NAME = PK_COLUMN_NAME, FKTABLE_CAT = FK_TABLE_CATALOG, FKTABLE_SCHEM = FK_TABLE_SCHEMA, FKTABLE_NAME = FK_TABLE_NAME, FKCOLUMN_NAME = FK_COLUMN_NAME, KEY_SEQ = ORDINAL, UPDATE_RULE = case UPDATE_RULE when 'CASCADE' then 0 when 'NO ACTION' then 1 when 'SET NULL' then 2 else null end, DELETE_RULE = case DELETE_RULE when 'CASCADE' then 0 when 'NO ACTION' then 1 when 'SET NULL' then 2 else null end, FK_NAME = convert(sysname, NULL), PK_NAME = convert(sysname, NULL), DEFERRABILITY = convert(smallint, null) from master.dbo.SYSREMOTE_FOREIGN_KEYS < @table_server, @pktab_catalog, @pktab_schema, @pktab_name, @fktab_catalog, @fktab_schema, @fktab_name > order by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, KEY_SEQ <ŒQ% С 8create procedure sp_password @old sysname = NULL, -- the old (current) password @new sysname, -- the new password @loginame sysname = NULL -- user to change password on as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @self int select @self = CASE WHEN @loginame is null THEN 1 ELSE 2 END -- RESOLVE LOGIN NAME if @loginame is null select @loginame = suser_sname() -- CHECK PERMISSIONS (SecurityAdmin per Richard Waymire) -- IF (not is_srvrolemember('securityadmin') = 1) AND not @self = 1 begin dbcc auditevent (107, @self, 0, @loginame, NULL, NULL, NULL) raiserror(15210,-1,-1) return (1) end ELSE begin dbcc auditevent (107, @self, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_password') return (1) end -- RESOLVE LOGIN NAME (disallows nt names) if not exists (select * from master.dbo.syslogins where loginname = @loginame and isntname = 0) begin raiserror(15007,-1,-1,@loginame) return (1) end -- IF non-SYSADMIN ATTEMPTING CHANGE TO SYSADMIN, REQUIRE PASSWORD (218078) -- if (@self <> 1 AND is_srvrolemember('sysadmin') = 0 AND exists (SELECT * FROM master.dbo.syslogins WHERE loginname = @loginame and isntname = 0 AND sysadmin = 1) ) SELECT @self = 1 -- CHECK OLD PASSWORD IF NEEDED -- if (@self = 1 or @old is not null) if not exists (select * from master.dbo.sysxlogins where srvid IS NULL and name = @loginame and ( (@old is null and password is null) or (pwdcompare(@old, password, (CASE WHEN xstatus&2048 = 2048 THEN 1 ELSE 0 END)) = 1) ) ) begin raiserror(15211,-1,-1) return (1) end -- CHANGE THE PASSWORD -- update master.dbo.sysxlogins set password = convert(varbinary(256), pwdencrypt(@new)), xdate2 = getdate(), xstatus = xstatus & (~2048) where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE -- if @@error <> 0 return (1) raiserror(15478,-1,-1) return (0) -- sp_password 88 ќРллллžР˜Р6ФљІзWWWWWerpžРрР7Dx;Ј чччччДРк€488 ВВВВ$иžРžР8HXЁЂWФФФФФ|ЋОќ О>‹ИУ(ŸР‘‘‘‘  ОpžР9px;ЈWLЂОД ` @И(< О@УџџPPPP9АБЂк§§§§§@msglang`X€Р№ŸР:$x;Ј OOOOOфžР”ˆН‡hh ЌРЛЛЛЛXљРЊ `ќњ<Ч+ћІf7"‰хЖ<3ћ€! F8create procedure sp_addextendedproperty @name sysname, @value sql_variant = NULL, @level0type varchar(128) = NULL, @level0name sysname = NULL, @level1type varchar(128) = NULL, @level1name sysname = NULL, @level2type varchar(128) = NULL, @level2name sysname = NULL as declare @id int ,@smallid smallint ,@type tinyint ,@ret int ,@exists int ,@fullname nvarchar(400) ,@objname nvarchar(517) if datalength(@value) > 7500 begin raiserror(15097,-1,-1) return 1 end execute @ret = sp_validatepropertyinputs @name ,@level0type ,@level0name ,@level1type ,@level1name ,@level2type ,@level2name ,@id OUTPUT ,@smallid OUTPUT ,@type OUTPUT ,@exists OUTPUT ,@fullname OUTPUT ,@objname OUTPUT if @ret = 2 raiserror(15600,-1,-1,'sp_addextendedproperty') if @ret <> 0 return (1) if ( @exists = 1 ) --Indicates property for object does exist begin raiserror(15233,-1,-1,@name, @fullname) return(1) end BEGIN TRANSACTION if @objname is not null DBCC LockObjectSchema(@objname) insert into sysproperties (type, id, smallid, name, value) values (@type, @id, @smallid, @name, @value) COMMIT TRANSACTION return(0) <B@" Y8create procedure sp_table_privileges_ex( @table_server sysname, @table_name sysname = null, @table_schema sysname = null, @table_catalog sysname = null) as select TABLE_CAT = TABLE_CATALOG, TABLE_SCHEM = TABLE_SCHEMA, TABLE_NAME = TABLE_NAME, GRANTOR = GRANTOR, GRANTEE = GRANTEE, PRIVILEGE = PRIVILEGE_TYPE, IS_GRANTABLE = case IS_GRANTABLE when 1 then 'YES' when 0 then 'NO' else null end from master.dbo.SYSREMOTE_TABLE_PRIVILEGES < @table_server, @table_catalog, NULL, NULL > where (TABLE_SCHEMA like @table_schema or @table_schema is NULL or (TABLE_SCHEMA is NULL and @table_schema = N'%')) and (TABLE_NAME like @table_name or @table_name is NULL) order by TABLE_CAT, TABLE_SCHEM, TABLE_NAME, PRIVILEGE <lu" e8create procedure sp_updateextendedproperty @name sysname, @value sql_variant = NULL, @level0type varchar(128) = NULL, @level0name sysname = NULL, @level1type varchar(128) = NULL, @level1name sysname = NULL, @level2type varchar(128) = NULL, @level2name sysname = NULL as declare @id int ,@smallid smallint ,@type tinyint ,@ret int ,@exists int ,@fullname nvarchar(400) ,@objname nvarchar(517) if datalength(@value) > 7500 begin raiserror(15097,-1,-1) return 1 end execute @ret = sp_validatepropertyinputs @name ,@level0type ,@level0name ,@level1type ,@level1name ,@level2type ,@level2name ,@id OUTPUT ,@smallid OUTPUT ,@type OUTPUT ,@exists OUTPUT ,@fullname OUTPUT ,@objname OUTPUT if @ret = 2 raiserror(15600,-1,-1,'sp_updateextendedproperty') if @ret <> 0 return (1) if ( @exists = 0 ) --Indicates property for object does not exist begin raiserror(15217,-1,-1,@name,@fullname) return(1) end BEGIN TRANSACTION if @objname is not null DBCC LockObjectSchema(@objname) update sysproperties set value = @value where @type = type and @id = id and @smallid = smallid and @name = name COMMIT TRANSACTION return(0) <Q/џ" љ8create proc sp_enum_oledb_providers as begin IF (not is_srvrolemember(N'setupadmin') = 1) begin raiserror(15003,-1,-1, N'setupadmin') return (1) end exec master.dbo.xp_enum_oledb_providers end <{94# G8create procedure sp_column_privileges_ex( @table_server sysname, @table_name sysname = null, @table_schema sysname = null, @table_catalog sysname = null, @column_name sysname = null) as select TABLE_CAT = TABLE_CATALOG, TABLE_SCHEM = TABLE_SCHEMA, TABLE_NAME = TABLE_NAME, COLUMN_NAME = COLUMN_NAME, GRANTOR = GRANTOR, GRANTEE = GRANTEE, PRIVILEGE = PRIVILEGE_TYPE, IS_GRANTABLE = case IS_GRANTABLE when 1 then 'YES' when 0 then 'NO' else null end from master.dbo.SYSREMOTE_COLUMN_PRIVILEGES < @table_server, @table_catalog, @table_schema, @table_name, NULL > where (COLUMN_NAME like @column_name or @column_name is NULL) order by TABLE_CAT, TABLE_SCHEM, TABLE_NAME, COLUMN_NAME, PRIVILEGE <ЅCi# и8create procedure sp_dropextendedproperty @name sysname, @level0type varchar(128) = NULL, @level0name sysname = NULL, @level1type varchar(128) = NULL, @level1name sysname = NULL, @level2type varchar(128) = NULL, @level2name sysname = NULL as declare @id int ,@smallid smallint ,@type int ,@ret int ,@exists int ,@fullname nvarchar(400) ,@objname nvarchar(517) execute @ret = sp_validatepropertyinputs @name ,@level0type ,@level0name ,@level1type ,@level1name ,@level2type ,@level2name ,@id OUTPUT ,@smallid OUTPUT ,@type OUTPUT ,@exists OUTPUT ,@fullname OUTPUT ,@objname OUTPUT if @ret = 2 raiserror(15600,-1,-1,'sp_dropextendedproperty') if @ret <> 0 return (1) if (@exists = 0) --Indicates property for object does not exist begin raiserror(15217,-1,-1,@name,@fullname) return (1) end BEGIN TRANSACTION if @objname is not null DBCC LockObjectSchema(@objname) delete from sysproperties where @type = type and @id = id and @smallid = smallid and @name = name COMMIT TRANSACTION return(0) <Д]($ Џ8create procedure sp_indexes( @table_server sysname, @table_name sysname = null, @table_schema sysname = null, @table_catalog sysname = null, @index_name sysname = null, @is_unique bit = null) as select TABLE_CAT = TABLE_CATALOG, TABLE_SCHEM = TABLE_SCHEMA, TABLE_NAME = TABLE_NAME, NON_UNIQUE = convert(smallint, 1 - [UNIQUE]), INDEX_QUALIFIER = TABLE_NAME, INDEX_NAME = INDEX_NAME, TYPE = case [CLUSTERED] when 1 then 1 else 3 end, ORDINAL_POSITION = ORDINAL_POSITION, COLUMN_NAME = COLUMN_NAME, ASC_OR_DESC = case [COLLATION] when 1 then 'A' when 2 then 'D' else null end, CARDINALITY = CARDINALITY, PAGES = case [CLUSTERED] when 1 then PAGES else NULL end, FILTER_CONDITION = FILTER_CONDITION from master.dbo.SYSREMOTE_INDEXES < @table_server, @table_catalog, @table_schema, @index_name, NULL, /* TYPE (index type) */ @table_name > where @is_unique is null or @is_unique = [UNIQUE] order by NON_UNIQUE, TYPE, INDEX_QUALIFIER, INDEX_NAME, ORDINAL_POSITION r, 'data access', 'off' if @retcode <> 0 return @retcode --SET 'local login mapping', 'off' (make rpc-s behave as in 6.5) update master.dbo.sysservers set srvstatus = srvstatus & ~32, schemadate = getdate() where srvname = @server -- SUCCESS return (0) -- sp_addserver џџџџџџџџџџџџББББШНК@НК… АБЂкХХХХХ@alt_optvalueјНКˆНК† АБЂйѓѓѓѓѓFULLІІІІ@ОКШНК‡ (x;Јп :::::ЇЇа4\ОКoooohОКјНКˆ ФљІзFULLFFFFРОК@ОК‰ 8x;Јг 44444 ЧЧU(ЇЇа4LтНaaaa(ПКhОКŠ HXЁЂWжжжжжlfКќ`КDaКщi€iРƒƒƒƒ `КРОК‹ px;ЈW\\\\\fК\eКД ` О(<`К@ Рџџџџ |Є]dџІ`§ћ<™cќВB$6nb‡<њжŒ  Г8create procedure sp_validatepropertyinputs @name sysname ,@level0type varchar(128) ,@level0name sysname ,@level1type varchar(128) ,@level1name sysname ,@level2type varchar(128) ,@level2name sysname ,@id int OUTPUT ,@smallid smallint OUTPUT ,@type tinyint OUTPUT ,@exists int OUTPUT ,@fullname nvarchar(400) OUTPUT ,@objname nvarchar(517) OUTPUT -- level 1 object name as ----------------------------------------------------- -- NOTE: FOR INTERNAL USE ONLY (sp_addextendedproperty,sp_updateextendedproperty,sp_dropextendedproperty) -- DO NOT DOCUMENT OR USE! ----------------------------------------------------- declare @ret int select @id = 0, @smallid = 0 --Initialize 0 is used instead of null Select @level0type = UPPER(@level0type) ,@level1type = UPPER(@level1type) ,@level2type = UPPER(@level2type) declare @invalidlevel varchar(25) ,@objtype varchar(2) ,@uid int ,@objid int ,@lev2objexists tinyint if @name is null return (2) --return to calling proc which will raiserror execute @ret = sp_validname @name if (@ret <> 0) return (1) if (@level2type is not null and (@level1type is null or @level0type is null)) or (@level1type is not null and @level0type is null) return (2) --return to called proc which will raiserror select @fullname = case when (@level2name is not null) then @level0name + '.' + @level1name + '.' + @level2name when (@level1name is not null) then @level0name + '.' + @level1name when (@level0name is not null) then @level0name end select @fullname = isnull(@fullname,'object specified') if @level0type is null and @level0name is null begin --must be dbo if is_member('db_owner') = 0 begin raiserror(15247,-1,-1) return (1) end --Database Property select @type = 0 --Indicates database entry end else if @level0type = 'TYPE' and @level0name is not null begin select @smallid = xusertype,@type = 1 from systypes where name = @level0name and xusertype > 256 --only udtypes end else if @level0type = 'USER' and @level0name is not null begin select @type = 2, @smallid = uid from sysusers where name = @level0name and (issqluser = 1 or isntname = 1 or @level1type is not null) and --no alias/should only be users (any owner ok for objects) uid NOT IN (3,4) --no INFORMATION_SCHEMA, system_function_schema end else return (2) --return to called proc which will raiserror --Check is user/type does not exits then @type will be null if @type is null or (@level1type is null and @smallid in (1,2)) --Not permitted to add prop to dbo/guest begin raiserror(15135,-1,-1,@fullname) return (1) end if @level1type in ('TABLE', 'VIEW', 'PROCEDURE', 'RULE', 'DEFAULT', 'FUNCTION') and @level1name is not null begin if not (@level0type = 'USER') return (2) --return to called proc which will raiserror --Not for temp tables if substring(@level1name,1,1) = N'#' begin raiserror(15135,-1,-1,@fullname) return (1) end select @uid = @smallid select @smallid = 0 if (@level1type = 'FUNCTION') begin select @id = id,@type = 3, @objtype = xtype from sysobjects where name = @level1name and uid = @uid and xtype in ('FN','TF','IF') and parent_obj = 0 end else begin --Can only be for objects and not default/rule constraints select @objtype = case @level1type when 'TABLE' then 'U' when 'VIEW' then 'V' when 'PROCEDURE' then 'P' when 'RULE' then 'R' when 'DEFAULT' then 'D' end select @id = id,@type = 3 from sysobjects where name = @level1name and uid = @uid and xtype = @objtype and parent_obj = 0 end --if object not found than @id will = 0 if @id = 0 begin raiserror(15135,-1,-1, @fullname) return (1) end select @objname = QUOTENAME(@level0name) + '.' + QUOTENAME(@level1name) end else if not (@level1type is null and @level1name is null) return (2) --return to called proc which will raiserror --Check Permissions if @id <> 0 and is_member('db_owner') = 0 and is_member(@level0name) = 0 and is_member('db_ddladmin') = 0 begin raiserror(15247,-1,-1) return (1) end else if @smallid <> 0 and is_member('db_owner') = 0 and (@level0type = 'USER') OR -- For type: may also be db_ddladmin or an owner (@level0type = 'TYPE' and is_member('db_ddladmin')=0 and is_member(user_name((select uid from systypes where xusertype=@smallid)))=0) begin raiserror(15247,-1,-1) return (1) end if @level2type = 'COLUMN' and @level2name is not null begin if @level1type not in ('TABLE','VIEW','FUNCTION') return (2) --return to called proc which will raiserror select @smallid = colid, @type = 4,@lev2objexists = 1 from syscolumns where id = @id and name = @level2name and number = 0 --specified columns entry end else if @level2type = 'PARAMETER' and @level2name is not null begin if @level1type not in ('PROCEDURE','FUNCTION') return (2) --return to called proc which will raiserror --scalar function params have number as 0 for params if @objtype = 'FN' select @smallid = colid, @type = 5,@lev2objexists = 1 from syscolumns where id = @id and name = @level2name and number = 0 --specified parameter entry else select @smallid = colid, @type = 5,@lev2objexists = 1 from syscolumns where id = @id and name = @level2name and number = 1 --specified parameter entry end else if @level2type ='TRIGGER' and @level2name is not null begin if @level1type not in ('TABLE','VIEW') return (2) --return to called proc which will raiserror select @objid = @id select @id = 0 select @id = id, @type = 3, @lev2objexists = 1 from sysobjects where name = @level2name and parent_obj = @objid and xtype = N'TR' end else if @level2type = 'CONSTRAINT' and @level2name is not null begin if not @level1type in ('TABLE','FUNCTION') return (2) --return to called proc which will raiserror select @objid = @id select @id = 0 select @id = id, @type = 3, @lev2objexists = 1 from sysobjects where name = @level2name and parent_obj = @objid and xtype in ('C','D','F', 'PK', 'UQ') end else if @level2type = 'INDEX' and @level2name is not null begin if not @level1type in ('TABLE', 'VIEW') return (2) --return to called proc which will raiserror select @smallid = indid, @type = 6, @lev2objexists = 1 from sysindexes where name = @level2name and id = @id and indid not in (0,255) and status&0x1800 = 0 --no PK/U constraints end else if not (@level2type is null and @level2name is null) return (2) --return to called proc which will raiserror --Does the level2 obj exists if @lev2objexists is null and @level2type is not null begin raiserror(15135,-1,-1, @fullname) return (1) end --Check if property exists select @exists = (select count(*) from sysproperties where @type = type and @id = id and @smallid = smallid and @name = name) return (0) < ёK! P€8„ghЈа>Љ2FЊ 128 = 128 and @server <> @netname begin raiserror(15577,-1,-1) end -- DO THE UPDATE update master.dbo.sysservers set datasource = @netname, schemadate = getdate() where srvname = @server -- SUCCESS return (0) -- sp_setnetname ‘‘‘РžЕ@žЕ”$x;Ј ДЏЛžЕІча4YYYYŸЕxžЕ•$XЁЂu EEEEE$ŸЕ”žЕІ88 PŸЕРžЕ–(x;ЈЈ #####hžЕ88 lŸЕ vvvvxŸЕŸЕ—ФљІз     џџџџѕѕѕѕ(ŸЕ ТPŸЕ˜(XЁЂ… *****мžЕvaF88 ФбЇАБЂйПППППOFFъъъъРє `ўќ<.Ъ§ВРE$9ж<OjА Щ8create procedure sp_fixindex @dbname sysname, @tabname sysname, /* system table name */ @indid int /* index id value */ as declare @indexname sysname /* ** Description: allow the SA to force a drop and then a ** create index on system catalogs. ** ** Usage: sp_fixindex database, systemcatalog, ind_id ** ** Note: before using this procedure the database has to ** be in single user mode. The sp_dboption has to ** be used for user databases, and update of ** sysdatabases for master. ** */ /* Check that current db is db for processing*/ if db_name() <> @dbname begin raiserror(15555,-1,-1, @dbname) return(1) end /* ** Make sure we are 'fixing' a system catalog. */ if not exists (select name from sysobjects where name = @tabname and type = 'S') begin raiserror(15193,-1,-1) return (1) end /* Check database is in single user mode */ if ((select status from master..sysdatabases where name = @dbname) & (select number from master..spt_values where name = 'single user' and type = 'D') = 0) and (select value from master..syscurconfigs where config = 102) <> 1 begin raiserror(15308,-1,-1, @dbname) return(1) end /* ** Make sure that we are doing this on somenthing that ** has indexes (or real tables). */ if exists (select id from sysindexes where id = object_id(@tabname) and status & 8 <> 0) begin raiserror(15194,-1,-1) return (1) end /* Get the index name */ select @indexname = name from sysindexes where id = object_id(@tabname) and indid = @indid if @indexname is null begin raiserror(15323,-1,-1, @tabname) return (1) end if (object_id(@tabname) <= 100) begin dbcc dbrepair(@dbname, repairindex, @tabname, @indid) end else begin dbcc dbreindex(@tabname, @indexname) end return (0) <^„o ё8create procedure sp_catalogs( @server_name sysname) as select CATALOG_NAME, convert (nvarchar(255),DESCRIPTION) from master.dbo.SYSREMOTE_CATALOGS < @server_name > order by CATALOG_NAME <ˆŽЄ 8create procedure sp_settriggerorder @triggername nvarchar(517), -- name of the trigger (may be 2-part) @order varchar(10), -- first, last, or none @stmttype varchar(10) -- insert, update, or delete as set nocount on declare @firstbit int -- bit for first-trigger of given @stmttype ,@lastbit int -- bit for last-trigger of given @stmttype ,@setbit int -- status bit to set (0 for clear) based on @stmttype/@order ,@trigid int -- objid of the trigger ,@tableid int -- objid of the trigger's table ,@uid smallint --user id ,@tabname nvarchar(517) -- name of the trigger's table -- VALIDATE PARAMETERS and obtain bits affected -- SELECT @order = rtrim(@order), @stmttype = rtrim(@stmttype) SELECT @firstbit = case lower(@stmttype) when 'delete' then 16384 when 'update' then 65536 when 'insert' then 262144 else NULL end SELECT @lastbit = @firstbit * 2 -- NOTE DEPENDENCY ON BIT LAYOUT HERE! SELECT @setbit = case lower(@order) when 'none' then 0 when 'first' then @firstbit when 'last' then @lastbit else NULL end IF @setbit is NULL OR @firstbit IS NULL begin raiserror(15600,-1,-1, 'sp_settriggerorder') return (1) end -- BEGIN TRAN AND LOCK SCHEMA (also checks permissions) -- BEGIN TRAN DBCC LOCKOBJECTSCHEMA(@triggername) if @@error <> 0 goto abort_exit -- VERIFY PROPER OBJECT TYPE -- select @trigid = object_id(@triggername, 'local') select @tableid = parent_obj, @uid = uid from sysobjects where id = @trigid AND xtype='TR' and ObjectProperty(@trigid,'ExecIsInsteadofTrigger')=0 and ObjectProperty(@trigid,'ExecIs'+@stmttype+'Trigger')=1 if (@tableid is NULL) begin if ObjectProperty(@trigid,'ExecIs'+@stmttype+'Trigger')=0 raiserror(15125,-1,-1, @triggername, @stmttype) else if ObjectProperty(@trigid,'ExecIsInsteadofTrigger')=1 raiserror(15133, -1, -1, @triggername) else raiserror(15126,-1,-1,@triggername) goto abort_exit end -- LOCK THE TABLE SCHEMA TOO -- select @tabname = quotename(user_name(@uid))+'.'+quotename(object_name(@tableid)) DBCC LOCKOBJECTSCHEMA(@tabname) if @@error <> 0 goto abort_exit -- VERIFY FIRST/LAST OF GIVEN TYPE DOESN'T ALREADY EXIST -- IF EXISTS (select * from sysobjects where parent_obj = @tableid AND xtype='TR' AND id <> @trigid AND ObjectProperty(id, 'ExecIs'+@order+@stmttype+'Trigger') = 1) BEGIN raiserror(15130,-1,-1,@tabname, @order, @stmttype) goto abort_exit END -- SET THE ORDER AS REQUESTED, COMMIT & RETURN SUCCESS -- update sysobjects set status = ((status&~(@firstbit|@lastbit))|@setbit) where id = @trigid commit transaction return(0) -- ROLLBACK TRAN & EXIT-FAIL -- abort_exit: rollback transaction return(1) <—Јc І8create procedure sp_tables_ex( @table_server sysname, @table_name sysname = null, @table_schema sysname = null, @table_catalog sysname = null, @table_type sysname = null) as declare @table_catalog_param sysname if ((isnull(charindex('%', @table_catalog),0) = 0) and (isnull(charindex('[', @table_catalog),0) = 0) and (isnull(charindex('_', @table_catalog),0) = 0)) select @table_catalog_param = @table_catalog else select @table_catalog_param = null if ((isnull(charindex('%', @table_name),0) = 0) and (isnull(charindex('[', @table_name),0) = 0) and (isnull(charindex('_', @table_name),0) = 0)) begin /* If no wild carding */ select TABLE_CAT = TABLE_CATALOG, TABLE_SCHEM = TABLE_SCHEMA, TABLE_NAME = TABLE_NAME, TABLE_TYPE = TABLE_TYPE, REMARKS = convert(nvarchar(255),DESCRIPTION) from master.dbo.SYSREMOTE_TABLES < @table_server, @table_catalog_param, NULL, @table_name, NULL > where (TABLE_SCHEMA like @table_schema or @table_schema is NULL or (TABLE_SCHEMA is NULL and @table_schema = N'%')) and (TABLE_CATALOG like @table_catalog or @table_catalog is NULL or (TABLE_CATALOG is NULL and @table_catalog = N'%')) and (charindex ('''' + TABLE_TYPE + '''', @table_type) <> 0 or @table_type is NULL) order by TABLE_TYPE, TABLE_CAT, TABLE_SCHEM, TABLE_NAME end else begin /* If wild carding */ select TABLE_CAT = TABLE_CATALOG, TABLE_SCHEM = TABLE_SCHEMA, TABLE_NAME = TABLE_NAME, TABLE_TYPE = TABLE_TYPE, REMARKS = convert(nvarchar(255),DESCRIPTION) from master.dbo.SYSREMOTE_TABLES < @table_server, @table_catalog_param, NULL, NULL, NULL > where (TABLE_SCHEMA like @table_schema or @table_schema is NULL or (TABLE_SCHEMA is NULL and @table_schema = N'%')) and (TABLE_CATALOG like @table_catalog or @table_catalog is NULL or (TABLE_CATALOG is NULL and @table_catalog = N'%')) and (charindex ('''' + TABLE_TYPE + '''', @table_type) <> 0 or @table_type is NULL) and TABLE_NAME like @table_name order by TABLE_TYPE, TABLE_CAT, TABLE_SCHEM, TABLE_NAME end ysxlogins where srvid = @srvid AND ishqoutmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) -- ATTEMPT TO TAG THIS ONTO EXISTING ROW -- update master.dbo.sysxlogins set xstatus = (xstatus & ~192) | @status, xdate2 = getdate(), password = convert(varbinary(256), encrypt(@rmtpassword)) where srvid = @srvid AND isrpcinmap = 1 AND ((sid IS NULL AND @localsid IS NULL) OR sid = @localsid) AND ((name IS NULL AND @rmtuser IS NULL) OR name = @rmtuser) -- IF NO ROW UPDATED, INSERT NEW ROW -- if (@@rowcount = 0) insert master.dbo.sysxlogins values (@srvid, @localsid, @status, getdate(), getdate(), @rmtuser, convert(varbinary(256), encrypt(@rmtpassword)), 0, NULL) COMMIT TRAN -- RETURN SUCCESS return(0) -- sp_addlinkedsrvlog$ )`џ§<„vўІ 7"@)Hв<ь;‡ k8 /* Procedure for 8.0 server */ create procedure sp_tables( @table_name nvarchar(384) = null, @table_owner nvarchar(384) = null, @table_qualifier sysname = null, @table_type varchar(100) = null) as declare @type1 varchar(3) declare @tableindex int /* Special feature #1: enumerate databases when owner and name are blank but qualifier is explicitly '%'. */ if @table_qualifier = '%' and @table_owner = '' and @table_name = '' begin /* If enumerating databases */ select TABLE_QUALIFIER = convert(sysname,d.name), TABLE_OWNER = convert(sysname,null), TABLE_NAME = convert(sysname,null), TABLE_TYPE = convert(varchar(32),null), REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from master.dbo.sysdatabases d where d.name <> 'model' /* eliminate MODEL database */ order by 1 end /* Special feature #2: enumerate owners when qualifier and name are blank but owner is explicitly '%'. */ else if @table_qualifier = '' and @table_owner = '%' and @table_name = '' begin /* If enumerating owners */ select distinct TABLE_QUALIFIER = convert(sysname,null), TABLE_OWNER = convert(sysname,user_name(uid)), TABLE_NAME = convert(sysname,null), TABLE_TYPE = convert(varchar(32),null), REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from sysobjects order by 2 end /* Special feature #3: enumerate table types when qualifier, owner and name are blank but table type is explicitly '%'. */ else if @table_qualifier = '' and @table_owner = '' and @table_name = '' and @table_type = '%' begin /* If enumerating table types */ select TABLE_QUALIFIER = convert(sysname,null), TABLE_OWNER = convert(sysname,null), TABLE_NAME = convert(sysname,null), TABLE_TYPE = convert(varchar(32),rtrim(substring('SYSTEM TABLETABLE VIEW',(colid-1)*12+1,12))), REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from sysobjects o, syscolumns c where o.id=c.id and o.name='sysusers' and colid<=3 end else begin /* end of special features - do normal processing */ if @table_qualifier is not null begin if db_name() <> @table_qualifier begin if @table_qualifier = '' begin /* If empty qualifier supplied */ /* Force an empty result set */ select @table_name = '' select @table_owner = '' end else begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end end if @table_type is null begin /* Select all ODBC supported table types */ select @type1 = 'SUV' end else begin /* TableType is case sensitive if CS server */ select @type1 = '' if (charindex('''SYSTEM TABLE''',@table_type) <> 0) select @type1 = @type1 + 'S' /* Add System Tables */ if (charindex('''TABLE''',@table_type) <> 0) select @type1 = @type1 + 'U' /* Add User Tables */ if (charindex('''VIEW''',@table_type) <> 0) select @type1 = @type1 + 'V' /* Add Views */ end if @table_name is null begin /* If table name not supplied, match all */ select @table_name = '%' end else begin if (@table_owner is null) and (charindex('%', @table_name) = 0) begin /* If owner not specified and table is specified */ if exists (select * from sysobjects where uid = user_id() and name = @table_name and (type = 'U' or type = 'V' or type = 'S')) begin /* Override supplied owner w/owner of table */ select @table_owner = user_name() end end end if @table_owner is null /* If no owner supplied, force wildcard */ select @table_owner = '%' select TABLE_QUALIFIER = convert(sysname,db_name()), TABLE_OWNER = convert(sysname,user_name(o.uid)), TABLE_NAME = convert(sysname,o.name), /* make nullable */ TABLE_TYPE = convert(varchar(32),rtrim( substring('SYSTEM TABLE TABLE VIEW ', (ascii(o.type)-83)*12+1,12))), /* 'S'=0,'U'=2,'V'=3 */ REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from sysobjects o where o.name like @table_name and user_name(o.uid) like @table_owner and o.type in ('U','V','S') and charindex(substring(o.type,1,1),@type1) <> 0 /* Only desired types */ and permissions (o.id)&4096 <> 0 order by 4, 1, 2, 3 end <FМ 8create procedure sp_helptrigger --- 1997/06/24 @tabname nvarchar(776), /* Table name */ @triggertype char(6) = NULL /* Trigger type */ as declare @objid int, /* id of the object */ @dbname sysname, @deltrig int, @instrig int, @updtrig int -- Check to see that the object names are local to the current database. select @dbname = parsename(@tabname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end select @objid = id from sysobjects where id = object_id(@tabname) and type in ('S','U', 'V') if @objid is null begin select @dbname = db_name() raiserror(15009,-1,-1,@tabname,@dbname) return(1) end /* Check that input type is UPDATE, INSERT, DELETE */ if @triggertype is not null and not UPPER(@triggertype ) in ('UPDATE', 'INSERT', 'DELETE') begin raiserror(15305,-1,-1) return(1) end if @triggertype is NULL select trigger_name = name, trigger_owner = user_name(uid), isupdate = ObjectProperty( id, 'ExecIsUpdateTrigger'), isdelete = ObjectProperty( id, 'ExecIsDeleteTrigger'), isinsert = ObjectProperty( id, 'ExecIsInsertTrigger'), isafter = ObjectProperty( id, 'ExecIsAfterTrigger'), isinsteadof = ObjectProperty( id, 'ExecIsInsteadOfTrigger') from sysobjects where parent_obj = @objid and type = 'TR' else begin set @deltrig = case when upper(@triggertype ) = 'DELETE' then 0 else -1 end set @instrig = case when upper(@triggertype ) = 'INSERT' then 0 else -1 end set @updtrig = case when upper(@triggertype ) = 'UPDATE' then 0 else -1 end select trigger_name = name, trigger_owner = user_name(uid), isupdate = ObjectProperty( id, 'ExecIsUpdateTrigger'), isdelete = ObjectProperty( id, 'ExecIsDeleteTrigger'), isinsert = ObjectProperty( id, 'ExecIsInsertTrigger'), isafter = ObjectProperty( id, 'ExecIsAfterTrigger'), isinsteadof = ObjectProperty( id, 'ExecIsInsteadOfTrigger') from sysobjects where parent_obj = @objid and ObjectProperty( id, 'ExecIsDeleteTrigger') > @deltrig and ObjectProperty( id, 'ExecIsInsertTrigger') > @instrig and ObjectProperty( id, 'ExecIsUpdateTrigger') > @updtrig and type = 'TR' end return(0) --sp_helptrigger <%`{ ž8create proc sp_linkedservers as IF is_srvrolemember('sysadmin') = 1 begin select SRV_NAME = srvname, SRV_PROVIDERNAME = providername, SRV_PRODUCT = srvproduct, SRV_DATASOURCE = datasource, SRV_PROVIDERSTRING = providerstring, SRV_LOCATION = location, SRV_CAT = catalog from master.dbo.sysservers order by 1 end ELSE begin select SRV_NAME = srvname, SRV_PROVIDERNAME = providername, SRV_PRODUCT = srvproduct, SRV_DATASOURCE = datasource, SRV_PROVIDERSTRING = NULL, SRV_LOCATION = location, SRV_CAT = catalog from master.dbo.sysservers order by 1 end џџџџ‚‚‚‚XОПНПќ `}Ј_ьььььЄППŸџџџџRYPYЪћћћћ€ОПˆНП6 px;ЈWюююююД ` О(œОПЙЙЙЙ ОП˜НП§$x;Ј[*****$НПЛЛЛЛЖџџџџџџџџџџџџаОПXОПў АБЂкззззз@len‚‚‚‚ПП ОПџ(x;Јџ ХХХХХ004ПП@ППаОПФљІзccccc6666žžžžˆПППП$x;Ј ,ЙЛtчКƒhhддддИПП@ПП АБЂкююююю@lenЛЛЛЛ `ПˆПП(x;Јџ 0000044<`ПиЫ`ў<ж&џЅxъ7"ИО§0<Є§г •8 CREATE PROCEDURE sp_createstats @indexonly CHAR(9)= 'NO', -- Optional 'INDEXONLY' text - if present, then only the columns -- covered by indexes are subject of statistics creation @fullscan CHAR(9)= 'NO', -- Optional 'FULLSCAN' text - if present, then the statistics -- will be updated with full scan rather than sampling @norecompute CHAR(12)= 'NO' -- Optional 'NORECOMPUTE' text - if present, then statistics -- will not be updated automatically AS /* NOTE: This sp will update statistics for *all* columns of all tables which the user has the privilege to update stats on (sysadmin, dbo, owner). The following columns are not considered - first column of an index - column which already has statistics - unelligible columns (Text and image columns consisting of ntext, text, or image data type, bit, and computed columns) */ declare @sysadmin int ,@dbname sysname -- remember dbname SELECT @dbname = db_name() -- create temporary table (column, index position) create table #colpostab ( col_name sysname collate database_default , col_pos int, ) set nocount on -- required for sp_createstats so it can update stats on on ICC/IVs set ansi_nulls on set quoted_identifier on set ansi_warnings on set ansi_padding on set arithabort on set concat_null_yields_null on set numeric_roundabort off DECLARE @exec_stmt nvarchar(540) DECLARE @tablename sysname DECLARE @columnname sysname --DECLARE @shortcolumnname sysname DECLARE @indexname sysname DECLARE @uid smallint DECLARE @indid smallint DECLARE @position smallint DECLARE @table_id int DECLARE @user_name sysname DECLARE @numcols int -- number of eligible columns found DECLARE @msg nvarchar(386) DECLARE @timestamp varchar(17) DECLARE @tablename_header varchar(267) DECLARE ms_crs_tnames CURSOR LOCAL STATIC FOR SELECT name, id, uid FROM sysobjects WHERE type = 'U' and ((object_id('[#colpostab]') is NULL) OR (id <> object_id('[#colpostab]'))) SELECT @numcols = 0 OPEN ms_crs_tnames FETCH NEXT FROM ms_crs_tnames INTO @tablename, @table_id, @uid WHILE (@@fetch_status <> -1) BEGIN IF ((@@fetch_status <> -2) AND (is_member('db_owner')=1) OR (is_member('ddl_admin')=1) OR (is_member(user_name(@uid))=1) OR (user_id() = @uid)) BEGIN -- these are all columns for which the statistics will be updated DECLARE ms_crs_cnames CURSOR LOCAL FOR SELECT c.name FROM syscolumns c, systypes t WHERE c.id = @table_id AND c.xtype = t.xusertype AND (t.name NOT IN ('text', 'ntext', 'image', 'timestamp','bit')) AND ((c.colstat & 0x0004) <> 0x0004) AND (c.length<=900) AND c.name NOT IN (SELECT col_name FROM #colpostab WHERE col_pos = 1) AND ((c.name IN (SELECT col_name FROM #colpostab)) OR (@indexonly <> 'indexonly')) -- populate temporary table of all (column, index position) tuples for this table TRUNCATE TABLE #colpostab -- for each index on the table, loop though all columns and insert rows -- OPEN CURSOR OVER INDEXES DECLARE ms_crs_ind CURSOR LOCAL STATIC FOR SELECT indid, name FROM sysindexes where id = @table_id and indid > 0 and indid < 255 order by indid OPEN ms_crs_ind FETCH ms_crs_ind into @indid , @indexname -- IF AN INDEX EXISTS WHILE @@fetch_status >= 0 BEGIN -- Every index has at least one column at position 1 INSERT INTO #colpostab VALUES (index_col(@tablename,@indid,1),1) -- now try position 2 and beyond.... SELECT @columnname = index_col(@tablename, @indid, 2) SELECT @position = 2 WHILE (@columnname is not null ) BEGIN INSERT INTO #colpostab VALUES (@columnname,@position) SELECT @position = @position +1 SELECT @columnname = index_col(@tablename, @indid, @position) END -- Next Index FETCH ms_crs_ind into @indid , @indexname END CLOSE ms_crs_ind DEALLOCATE ms_crs_ind -- now go over all columns which are eligible for updating statistics -- and are not first columns of any index -- optionaly we test if they are covered by some index (as non-leading) SELECT @user_name = user_name(@uid) OPEN ms_crs_cnames FETCH NEXT FROM ms_crs_cnames INTO @columnname IF @@fetch_status < 0 BEGIN select @msg = @dbname +'.'+ @user_name +'.'+ @tablename raiserror(15013,-1,-1,@msg) END ELSE BEGIN select @msg = @dbname +'.'+ @user_name +'.'+ @tablename raiserror(15018, -1, -1, @msg) END WHILE @@fetch_status >= 0 BEGIN SELECT @numcols = @numcols +1 -- use the column name as the name for the statistics as well select @exec_stmt = 'CREATE STATISTICS ' + quotename(@columnname, '[') + ' ON ' + quotename( @user_name ,'[')+'.' + quotename( @tablename, '[')+'('+ quotename( @columnname, '[')+')' -- determining the correct suffix if ((@fullscan = 'FULLSCAN') AND (@norecompute = 'NORECOMPUTE')) select @exec_stmt = @exec_stmt + ' WITH FULLSCAN, NORECOMPUTE' else if (@fullscan = 'FULLSCAN') select @exec_stmt = @exec_stmt + ' WITH FULLSCAN' else if (@norecompute = 'NORECOMPUTE') select @exec_stmt = @exec_stmt + ' WITH NORECOMPUTE' EXEC (@exec_stmt) --PRINT 'Statement='+@exec_stmt if (@@ERROR = 0) -- otherwise the CREATE STATS will give a message PRINT ' ' + @columnname FETCH NEXT FROM ms_crs_cnames INTO @columnname END CLOSE ms_crs_cnames DEALLOCATE ms_crs_cnames END FETCH NEXT FROM ms_crs_tnames INTO @tablename, @table_id, @uid END PRINT ' ' raiserror(15020,-1,-1,@numcols) DEALLOCATE ms_crs_tnames IF (object_id('[#colpostab]') is not null) begin drop table [#colpostab] end return(0) -- sp_createstats <н!Ш 18create procedure sp_cycle_errorlog --- 1997/06/24 as if (not (is_srvrolemember('sysadmin') = 1)) -- Make sure that it is the SA executing this. begin raiserror(15247,-1,-1) return(1) end dbcc errorlog return (0) ========================================' raiserror(15544,-1,-1,'syslogins.name') print ' ' raiserror(15565,-1,-1) raiserror(15546,-1,-1, 'sp_droplogin'' and ''sp_addlogin') print ' ' select sid, loginname from master.dbo.syslogins where convert(varchar(132), loginname) like @pat end if exists (select dbname from master.dbo.syslogins where convert(varchar(132), dbname) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'syslogins.dbname') print ' ' raiserror(15547,-1,-1) raiserror(15548,-1,-1) raiserror(15549,-1,-1) print ' ' select sid,loginname,dbname from master.dbo;Ј00бX7(server internal)д;РџџџџЃЃЃЃx<Р(;Р< `}Ј_#####ллллˆ<Р;Р‚ px;ЈWФФФФФМ>РД ` О(Є<Р@ СџџџџvvvvР<РИ;Р=$x;Ј[?????D;Р_Жџџџџџџџџџџџџjjjj№<Рx<Р>АБЂкссссс@tnameДДДД =РР<Р?АБЂйсссссbinaryДДДДh=Р№<Р@(x;Јп “““““NNNNЇЇа4„=РЦЦЦЦ=Р =РAФљІзbinaryAAAAи=Рh=РB$x;Ј ddddd<РєтК_o hh 1111=Р >Р=РC$x;Ј ˆˆˆˆˆЌ=РULBннннЮЮЮЮX>Ри=РDАБЂйDDDDDvarbinaryа4 >Р >РE(x;Јп rrrrrзhЇЇ а4М>Р ''''а>РX>РF ФљІзpppppvarbinary%%%%(ЇЇ?Р >РG$x;Ј ааааа<РЌтКѕѕѕѕ hh …………lцП`?Ра>РH$x;Ј ВВВВВь>РBчччч ˜?Р?РIx;ЈЯ єєєєєь>РДхПˆ ЁЁЁЁ рП`?РJ АБЂйŽŽŽŽŽcharлллл@ Рџџџџ‡‡‡‡„ ѕ`џ<ЕEЅxЛ7"ЗЂ?<2Еы Ч 8CREATE PROCEDURE sp_autostats @tblname nvarchar(776), @flagc varchar(10)=null, @indname sysname=null AS BEGIN DECLARE @flag bit, @nrc_mask int /* ** Check flag */ SET @flag = CASE lower(@flagc) WHEN 'on' THEN 1 WHEN 'off' THEN 0 ELSE NULL END IF @flag IS NULL AND @flagc IS NOT NULL BEGIN RAISERROR(17000,-1,-1) RETURN (1) END /* ** Set NORECOMPUTE mask */ SET @nrc_mask = 16777216 /* ** Check we are executing in the correct database */ DECLARE @db sysname SELECT @db = parsename(@tblname, 3) IF (@db IS NOT NULL AND @db <> db_name()) BEGIN RAISERROR(15387,-1,-1) RETURN (1) END /* ** PRINT or UPDATE status? */ IF (@flag IS NULL) BEGIN -- Display global settings (sp_dboption) -- PRINT 'Global statistics settings for ' + quotename(db_name(), '[') + ':' PRINT ' Automatic update statistics: ' + (CASE WHEN DatabaseProperty(db_name(), 'IsAutoUpdateStatistics') = 1 THEN 'ON' ELSE 'OFF' END) PRINT ' Automatic create statistics: ' + (CASE WHEN DatabaseProperty(db_name(), 'IsAutoCreateStatistics') = 1 THEN 'ON' ELSE 'OFF' END) PRINT '' -- Display the current status of the index(s) -- PRINT 'Settings for table ' + quotename(@tblname, '[') PRINT '' SELECT 'Index Name' = quotename(si.name, '['), 'AUTOSTATS' = CASE (si.status & @nrc_mask) WHEN @nrc_mask THEN 'OFF' ELSE 'ON' END, 'Last Updated' = stats_date(object_id(@tblname), si.indid) FROM sysindexes si WHERE si.id = object_id(@tblname) AND -- Table si.indid BETWEEN 1 AND 254 AND -- Skip HEAP/TEXT index CASE -- Match name WHEN @indname IS NULL THEN 1 WHEN @indname = si.name THEN 1 ELSE 0 END = 1 END ELSE BEGIN DECLARE @_rowcount int, @tabid int, @objtype varchar(2) -- VERIFY WE HAVE A USER-TABLE/INDEXED-VIEW BY THIS NAME IN THE DATABASE SELECT @tabid = id, @objtype = xtype FROM sysobjects WHERE id = OBJECT_ID(@tblname, 'local') AND (xtype = 'U' OR xtype = 'V') IF (@tabid IS NULL OR (@objtype = 'V' AND (ObjectProperty(@tabid, 'IsIndexed') = 0 OR ObjectProperty(@tabid, 'IsMSShipped') = 1)) ) begin raiserror(15390,-1,-1,@tblname) RETURN @@ERROR end BEGIN TRANSACTION upd_tran -- Lock the table schema and check permissions -- DBCC LOCKOBJECTSCHEMA(@tblname) -- Flip the status bits -- DECLARE @batch varchar(8000) UPDATE sysindexes SET status = CASE @flag WHEN 1 THEN status &~ @nrc_mask ELSE status | @nrc_mask END WHERE id = object_id(@tblname) AND -- Table indid <> 255 AND -- Skip TEXT index CASE -- Match name WHEN @indname IS NULL THEN 1 WHEN @indname = name THEN 1 ELSE 0 END = 1 -- Save the affected rowcount SET @_rowcount = @@rowcount COMMIT TRANSACTION upd_tran -- Show the user how many indices were affected PRINT 'Automatic statistics maintenance turned ' + CASE @flag WHEN 1 THEN 'ON' ELSE 'OFF' END + ' for ' + convert(varchar(5), @_rowcount) + ' indices.' END -- All done -- RETURN(0) -- sp_autostats END <kйп А8CREATE PROCEDURE sp_updatestats @resample CHAR(8)='NO' AS DECLARE @dbsid varbinary(85) SELECT @dbsid = sid FROM master.dbo.sysdatabases WHERE name = db_name() /*Check the user sysadmin*/ IF NOT is_srvrolemember('sysadmin') = 1 AND suser_sid() <> @dbsid BEGIN RAISERROR(15247,-1,-1) RETURN (1) END if UPPER(@resample)<>'RESAMPLE' AND UPPER(@resample)<>'NO' begin raiserror(N'Invalid option: %s', 1, 1, @resample) return (1) end -- required so it can update stats on on ICC/IVs set ansi_nulls on set quoted_identifier on set ansi_warnings on set ansi_padding on set arithabort on set concat_null_yields_null on set numeric_roundabort off DECLARE @exec_stmt nvarchar(540) DECLARE @tablename sysname DECLARE @uid smallint DECLARE @user_name sysname DECLARE @tablename_header varchar(267) DECLARE ms_crs_tnames CURSOR LOCAL FAST_FORWARD READ_ONLY FOR SELECT name, uid FROM sysobjects WHERE type = 'U' OPEN ms_crs_tnames FETCH NEXT FROM ms_crs_tnames INTO @tablename, @uid WHILE (@@fetch_status <> -1) BEGIN IF (@@fetch_status <> -2) BEGIN SELECT @user_name = user_name(@uid) SELECT @tablename_header = 'Updating ' + @user_name +'.'+ RTRIM(@tablename) PRINT @tablename_header SELECT @exec_stmt = 'UPDATE STATISTICS ' + quotename( @user_name , '[')+'.' + quotename( @tablename, '[') if (UPPER(@resample)='RESAMPLE') SET @exec_stmt = @exec_stmt + ' WITH RESAMPLE' EXEC (@exec_stmt) END FETCH NEXT FROM ms_crs_tnames INTO @tablename, @uid END PRINT ' ' PRINT ' ' raiserror(15005,-1,-1) DEALLOCATE ms_crs_tnames RETURN(0) -- sp_updatestats <zѓž n 8 /* Procedure for 7.0 and later servers */ CREATE PROCEDURE sp_table_privileges ( @table_name nvarchar(384), @table_owner nvarchar(384) = null, @table_qualifier sysname = null) as if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_name is null select @table_name = '%' if @table_owner is null /* If no owner supplied, force wildcard */ select @table_owner = '%' select convert(sysname,db_name()) TABLE_QUALIFIER, convert(sysname,user_name(o.uid)) TABLE_OWNER, convert(sysname,object_name(o.id)) TABLE_NAME, convert(sysname,user_name(p.grantor)) GRANTOR, convert(sysname,user_name(u.uid)) GRANTEE, convert(varchar(32),case p.action when 193 then 'SELECT' when 195 then 'INSERT' when 196 then 'DELETE' when 197 then 'UPDATE' else 'REFERENCES' end) PRIVILEGE, convert(varchar(3),case when p.protecttype = 205 then 'NO' else 'YES' end) IS_GRANTABLE from sysprotects p, sysobjects o, sysusers u, sysmembers m where p.id = o.id and o.type in ('U','V','S') and object_name(o.id) like @table_name and user_name(o.uid) like @table_owner /* expand groups - AKUNDONE: only 1 level of grp unrolling. */ and (u.uid > 0 and u.uid < 16384) and ((p.uid = u.uid) or (p.uid = m.groupuid and u.uid = m.memberuid)) and p.protecttype <> 206 /* only grant rows */ and p.action in (26,193,195,196,197) and o.uid <> u.uid /* no rows for owner */ and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = p.action and p1.id = p.id and p1.uid = u.uid) union select /* Add rows for table owner */ convert(sysname,db_name()) TABLE_QUALIFIER, convert(sysname,user_name(o.uid)) TABLE_OWNER, convert(sysname,object_name(o.id)) TABLE_NAME, convert(sysname,user_name(u.uid)) GRANTOR, convert(sysname,user_name(o.uid)) GRANTEE, convert(varchar(32),case v.number when 193 then 'SELECT' when 195 then 'INSERT' when 196 then 'DELETE' when 197 then 'UPDATE' else 'REFERENCES' end) PRIVILEGE, convert(varchar(3),'YES') IS_GRANTABLE from sysobjects o, master.dbo.spt_values v, sysusers u where object_name(o.id) like @table_name and o.type in ('U','V','S') and user_name(o.uid) like @table_owner and u.uid = 1 /* grantor is 'dbo' of database */ and v.type = N'P' /* cross product to get all exposed privileges */ and v.number in (26,193,195,196,197) and not exists ( /* exclude revoke'd privileges */ select * from sysprotects p1 where p1.protecttype = 206 and p1.action = v.number and p1.id = o.id and p1.uid = o.uid) order by 2,3,6,5 уtЗ+securityadminD„`єЬЈфЬА4|з' `<hГ0\$зФ<‡H i 8create procedure sp_check_removable @autofix varchar(4) as declare @dbosid varbinary (86) declare @dbname sysname declare @exec_stmt nvarchar(540) declare @fgname sysname select @dbname=db_name() /* Verify that SA owns the database. */ select @dbosid = sid from master..sysdatabases where name = @dbname if @dbosid <> 0x01 if @autofix='auto' begin -- changing DBO to SA update sysdatabases set sid = 0x01 where name = @dbname update sysusers set sid = 0x01 where uid = 1 end else begin raiserror(15258,-1,-1, @dbname) return(1) end -- USE CORRECT non-dbo/guest CHECKING declare @ret int exec @ret = sp_check_removable_sysusers @autofix if @ret <> 0 return 1 -- Run UPDATE STATISTICS on all user tables if there are -- no user defined filegroups if @autofix='auto' and (select count(*) from sysfilegroups) = 1 begin select @exec_stmt = N'USE ' + quotename( @dbname , '[') + N' exec sp_updatestats ''RESAMPLE'' ' exec (@exec_stmt) end exec('dump tran '+@dbname+' with no_log') if (select count(*) from sysfilegroups) > 1 begin if @autofix='auto' begin -- Mark any non-primary filegroups as READONLY DECLARE ms_crs_fg CURSOR LOCAL STATIC FOR SELECT groupname FROM sysfilegroups fg WHERE fg.groupid > 1 -- not primary AND fg.status & 0x8 = 0 -- not already readonly AND (SELECT count (*) FROM sysfiles f WHERE f.groupid = fg.groupid) > 0 -- has some files OPEN ms_crs_fg FETCH NEXT FROM ms_crs_fg INTO @fgname WHILE (@@FETCH_STATUS <> -1) BEGIN SELECT @exec_stmt = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' MODIFY FILEGROUP ' + quotename( @fgname , '[') + ' READONLY' EXEC (@exec_stmt) FETCH NEXT FROM ms_crs_fg INTO @fgname END CLOSE ms_crs_fg DEALLOCATE ms_crs_fg end else begin if exists (SELECT groupname FROM sysfilegroups fg WHERE fg.groupid > 1 -- not primary AND fg.status & 0x8 = 0 -- not already readonly AND (SELECT count (*) FROM sysfiles f WHERE f.groupid = fg.groupid) > 0) -- has some files begin raiserror(15358,-1,-1) SELECT groupname FROM sysfilegroups fg WHERE fg.groupid > 1 -- not primary AND fg.status & 0x8 = 0 -- not already readonly return (-1) end end end return(0) <Рl s8CREATE PROCEDURE sp_certify_removable --1996/03/12 12:02 @dbname sysname, @autofix nvarchar(4) = null as set nocount on declare @ret_value int, @char_autofix varchar(25) if (not (is_srvrolemember('sysadmin') = 1)) -- Make sure that it is the SA executing this. begin raiserror(15247,-1,-1) return(1) end select @autofix = lower(@autofix) if @autofix <> 'auto' and @autofix is not null begin raiserror(15255,-1,-1,@autofix) return(1) end if @dbname is null -- Show usage diagram if no dbname supplied. begin raiserror(15256,-1,-1) return(1) end --See if DB exists. if not exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15010,-1,-1,@dbname) return(1) end --Cannot take master, tempdb or model databases offline. if lower(@dbname) in ('master','tempdb','model') begin raiserror(15266,-1,-1,@dbname) return(1) end -- Will not be able to take db offline if user is in it. if @dbname = db_name() begin raiserror(15257,-1,-1) return(1) end ------------- Check things that exist only in the db. ------------------- select @char_autofix = CASE When @autofix IS NOT Null Then '''Auto''' Else 'Null' END execute( 'use ' + @dbname + ' declare @inx_ret_value int ,@int1 int select @inx_ret_value = 1 exec @inx_ret_value = sp_check_removable ' + @char_autofix + ' --Use @@rowcount for a user_assignable global variable for communication. if @inx_ret_value <> 0 --bad!!!! begin select @int1 = 1 return end else begin select @int1 = 1 where 1=2 return end ' ) if @@rowcount > 0 return (1) --Error was returned by other proc, so exit -- Take it offline raiserror('' ,0,1) exec sp_dboption @dbname,'offline','true' return(0) <Я†Т 38 /* 8.0 version */ create procedure sp_stored_procedures( @sp_name nvarchar(390) = null, @sp_owner nvarchar(384) = null, @sp_qualifier sysname = null) as declare @proc_type smallint if @sp_qualifier is not null begin if db_name() <> @sp_qualifier begin if @sp_qualifier = '' begin /* in this case, we need to return an empty result set */ /* because the user has requested a database with an empty name */ select @sp_name = '' select @sp_owner = '' end else begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end end if @sp_name is null begin /* If procedure name not supplied, match all */ select @sp_name = '%' end else begin if (@sp_owner is null) and (charindex('%', @sp_name) = 0) begin if exists (select * from sysobjects where uid = user_id() and name = @sp_name and type in ('P', 'FN', 'TF', 'IF')) /* Procedures, scalar UDF, table UDF */ begin select @sp_owner = user_name() end end end if @sp_owner is null /* If procedure owner not supplied, match all */ select @sp_owner = '%' select @proc_type=2 /* Return 2 for 4.2 and later servers. */ select PROCEDURE_QUALIFIER = convert(sysname,db_name()), PROCEDURE_OWNER = convert(sysname,user_name(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), NUM_INPUT_PARAMS = -1, /* Constant since value unknown */ NUM_OUTPUT_PARAMS = -1, /* Constant since value unknown */ NUM_RESULT_SETS = -1, /* Constant since value unknown */ REMARKS = convert(varchar(254),null), /* Remarks are NULL */ PROCEDURE_TYPE = @proc_type from sysobjects o,syscomments c where o.name like @sp_name and c.colid = 1 and user_name(o.uid) like @sp_owner and o.type in ('P', 'FN', 'TF', 'IF') /* Object type of Procedure, scalar UDF, table UDF */ and c.id = o.id and permissions (o.id)&32 <> 0 order by 1, 2, 3 <љї !8create procedure MS_sqlctrs_users --- 1996/08/30 21:49 as select lg.loginname + ' - ' + convert(varchar(30),pr.spid) ,pr.memusage as 'Memory (8K Pages)' -- 2K in 6.5 ,pr.cpu as 'CPU time' ,pr.physical_io ,count(lk.spid) as 'Locks held' ,pr.spid from master.dbo.sysprocesses pr left outer join master.dbo.syslocks lk on pr.spid=lk.spid ,master.dbo.syslogins lg where pr.sid = lg.sid group by lg.loginname ,pr.spid ,pr.memusage ,pr.cpu ,pr.physical_io o<Щ `<0ЮЅx7"§ИЧх<N$ n8CREATE PROCEDURE sp_who2 --- 1995/11/03 10:16 @loginame sysname = NULL as set nocount on declare @retcode int declare @sidlow varbinary(85) ,@sidhigh varbinary(85) ,@sid1 varbinary(85) ,@spidlow int ,@spidhigh int declare @charMaxLenLoginName varchar(6) ,@charMaxLenDBName varchar(6) ,@charMaxLenCPUTime varchar(10) ,@charMaxLenDiskIO varchar(10) ,@charMaxLenHostName varchar(10) ,@charMaxLenProgramName varchar(10) ,@charMaxLenLastBatch varchar(10) ,@charMaxLenCommand varchar(10) declare @charsidlow varchar(85) ,@charsidhigh varchar(85) ,@charspidlow varchar(11) ,@charspidhigh varchar(11) -------- select @retcode = 0 -- 0=good ,1=bad. --------defaults select @sidlow = convert(varbinary(85), (replicate(char(0), 85))) select @sidhigh = convert(varbinary(85), (replicate(char(1), 85))) select @spidlow = 0 ,@spidhigh = 32767 -------------------------------------------------------------- IF (@loginame IS NULL) --Simple default to all LoginNames. GOTO LABEL_17PARM1EDITED -------- -- select @sid1 = suser_sid(@loginame) select @sid1 = null if exists(select * from master.dbo.syslogins where loginname = @loginame) select @sid1 = sid from master.dbo.syslogins where loginname = @loginame IF (@sid1 IS NOT NULL) --Parm is a recognized login name. begin select @sidlow = suser_sid(@loginame) ,@sidhigh = suser_sid(@loginame) GOTO LABEL_17PARM1EDITED end -------- IF (lower(@loginame) IN ('active')) --Special action, not sleeping. begin select @loginame = lower(@loginame) GOTO LABEL_17PARM1EDITED end -------- IF (patindex ('%[^0-9]%' , isnull(@loginame,'z')) = 0) --Is a number. begin select @spidlow = convert(int, @loginame) ,@spidhigh = convert(int, @loginame) GOTO LABEL_17PARM1EDITED end -------- RaisError(15007,-1,-1,@loginame) select @retcode = 1 GOTO LABEL_86RETURN LABEL_17PARM1EDITED: -------------------- Capture consistent sysprocesses. ------------------- SELECT spid ,status ,sid ,hostname ,program_name ,cmd ,cpu ,physical_io ,blocked ,dbid ,convert(sysname, rtrim(loginame)) as loginname ,spid as 'spid_sort' , substring( convert(varchar,last_batch,111) ,6 ,5 ) + ' ' + substring( convert(varchar,last_batch,113) ,13 ,8 ) as 'last_batch_char' INTO #tb1_sysprocesses from master.dbo.sysprocesses (nolock) --------Screen out any rows? IF (@loginame IN ('active')) DELETE #tb1_sysprocesses where lower(status) = 'sleeping' and upper(cmd) IN ( 'AWAITING COMMAND' ,'MIRROR HANDLER' ,'LAZY WRITER' ,'CHECKPOINT SLEEP' ,'RA MANAGER' ) and blocked = 0 --------Prepare to dynamically optimize column widths. Select @charsidlow = convert(varchar(85),@sidlow) ,@charsidhigh = convert(varchar(85),@sidhigh) ,@charspidlow = convert(varchar,@spidlow) ,@charspidhigh = convert(varchar,@spidhigh) SELECT @charMaxLenLoginName = convert( varchar ,isnull( max( datalength(loginname)) ,5) ) ,@charMaxLenDBName = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),db_name(dbid))))) ,6) ) ,@charMaxLenCPUTime = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),cpu)))) ,7) ) ,@charMaxLenDiskIO = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),physical_io)))) ,6) ) ,@charMaxLenCommand = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),cmd)))) ,7) ) ,@charMaxLenHostName = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),hostname)))) ,8) ) ,@charMaxLenProgramName = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),program_name)))) ,11) ) ,@charMaxLenLastBatch = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),last_batch_char)))) ,9) ) from #tb1_sysprocesses where -- sid >= @sidlow -- and sid <= @sidhigh -- and spid >= @spidlow and spid <= @spidhigh --------Output the report. EXECUTE( ' SET nocount off SELECT SPID = convert(char(5),spid) ,Status = CASE lower(status) When ''sleeping'' Then lower(status) Else upper(status) END ,Login = substring(loginname,1,' + @charMaxLenLoginName + ') ,HostName = CASE hostname When Null Then '' .'' When '' '' Then '' .'' Else substring(hostname,1,' + @charMaxLenHostName + ') END ,BlkBy = CASE isnull(convert(char(5),blocked),''0'') When ''0'' Then '' .'' Else isnull(convert(char(5),blocked),''0'') END ,DBName = substring(case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end,1,' + @charMaxLenDBName + ') ,Command = substring(cmd,1,' + @charMaxLenCommand + ') ,CPUTime = substring(convert(varchar,cpu),1,' + @charMaxLenCPUTime + ') ,DiskIO = substring(convert(varchar,physical_io),1,' + @charMaxLenDiskIO + ') ,LastBatch = substring(last_batch_char,1,' + @charMaxLenLastBatch + ') ,ProgramName = substring(program_name,1,' + @charMaxLenProgramName + ') ,SPID = convert(char(5),spid) --Handy extra for right-scrolling users. from #tb1_sysprocesses --Usually DB qualification is needed in exec(). where spid >= ' + @charspidlow + ' and spid <= ' + @charspidhigh + ' -- (Seems always auto sorted.) order by spid_sort SET nocount on ' ) /*****AKUNDONE: removed from where-clause in above EXEC sqlstr sid >= ' + @charsidlow + ' and sid <= ' + @charsidhigh + ' and **************/ LABEL_86RETURN: if (object_id('tempdb..#tb1_sysprocesses') is not null) drop table #tb1_sysprocesses return @retcode -- sp_who2 Р`< уЅ§7"—йLm<$ц ƒ8 /* Procedure for 8.0 server */ CREATE PROCEDURE sp_statistics ( @table_name sysname, @table_owner sysname = null, @table_qualifier sysname = null, @index_name sysname = '%', @is_unique char(1) = 'N', @accuracy char(1) = 'Q') AS set nocount on DECLARE @indid int DECLARE @lastindid int DECLARE @table_id int DECLARE @full_table_name nvarchar(257) create table #TmpIndex( TABLE_QUALIFIER sysname collate database_default NULL, TABLE_OWNER sysname collate database_default NULL, TABLE_NAME sysname collate database_default NOT NULL, INDEX_QUALIFIER sysname collate database_default null, INDEX_NAME sysname collate database_default null, NON_UNIQUE smallint null, TYPE smallint NOT NULL, SEQ_IN_INDEX smallint null, COLUMN_NAME sysname collate database_default null, COLLATION char(1) collate database_default null, index_id int null, CARDINALITY int null, PAGES int null, status int NOT NULL) if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @accuracy not in ('Q','E') begin raiserror (15251,-1,-1,'accuracy','''Q'' or ''E''') return end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = quotename(@table_name) end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @full_table_name = quotename(@table_owner) end else begin SELECT @full_table_name = quotename(@table_owner) + '.' + quotename(@table_name) end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) /* Start at lowest index id */ SELECT @indid = min(indid) FROM sysindexes WHERE not (@table_id is null) AND id = @table_id AND indid > 0 AND indid < 255 /* Create a temp table to correct the ordinal position of the columns */ create table #TmpColumns (ordinal int identity(1,1), colid smallint not null) /* Load columns into the temp table */ insert into #TmpColumns (colid) select c.colid from syscolumns c where c.id = @table_id order by c.colid WHILE @indid is not NULL BEGIN INSERT #TmpIndex /* Add all columns that are in index */ SELECT DB_NAME(), /* TABLE_QUALIFIER */ USER_NAME(o.uid), /* TABLE_OWNER */ o.name, /* TABLE_NAME */ o.name, /* INDEX_QUALIFIER */ x.name, /* INDEX_NAME */ case /* NON_UNIQUE */ WHEN x.status&2 <> 2 then 1 /* Nonunique index */ else 0 /* Unique index */ end, case /* TYPE */ when @indid > 1 then 3 /* Non-Clustered */ else 1 /* Clustered index */ end, tc.ordinal, /* SEQ_IN_INDEX */ INDEX_COL(@full_table_name, indid, tc.ordinal),/* COLUMN_NAME */ 'A', /* COLLATION */ @indid, /* index_id */ case /* CARDINALITY */ when @indid > 1 then NULL /* Non-Clustered */ else x.rows /* Clustered index */ end, case /* PAGES */ when @indid > 1 then NULL /* Non-Clustered */ else x.dpages /* Clustered index */ end, x.status /* status */ FROM sysindexes x, syscolumns c, sysobjects o, #TmpColumns tc WHERE not (@table_id is null) AND x.id = @table_id AND x.id = o.id AND x.id = c.id AND tc.colid = c.colid AND tc.ordinal < keycnt+(x.status&18)/18 /* all but Unique Clust indices have an extra key */ AND INDEX_COL(@full_table_name, indid, tc.ordinal) IS NOT NULL AND indid = @indid AND (x.status&2 = 2 OR @is_unique <> 'Y') AND (x.status&32) = 0 /* ** Now move @indid to the next index. */ SELECT @lastindid = @indid SELECT @indid = NULL SELECT @indid = min(indid) FROM sysindexes WHERE not (@table_id is null) AND id = @table_id AND indid > @lastindid AND indid < 255 END /* now add row for table statistics */ INSERT #TmpIndex SELECT DB_NAME(), /* TABLE_QUALIFIER */ USER_NAME(o.uid), /* TABLE_OWNER */ o.name, /* TABLE_NAME */ null, /* INDEX_QUALIFIER */ null, /* INDEX_NAME */ null, /* NON_UNIQUE */ 0, /* SQL_TABLE_STAT */ null, /* SEQ_IN_INDEX */ null, /* COLUMN_NAME */ null, /* COLLATION */ 0, /* index_id */ x.rows, /* CARDINALITY */ x.dpages, /* PAGES */ 0 /* status */ FROM sysindexes x, sysobjects o WHERE not (@table_id is null) AND o.id = @table_id AND x.id = o.id AND (x.indid = 0 or x.indid = 1) /* If there are no indexes */ /* then table stats are in */ /* a row with indid =0 */ SELECT TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, NON_UNIQUE, INDEX_QUALIFIER, INDEX_NAME, TYPE, SEQ_IN_INDEX, COLUMN_NAME, COLLATION, CARDINALITY, PAGES, FILTER_CONDITION = convert(varchar(128),null) FROM #TmpIndex WHERE INDEX_NAME like @index_name /* If matching name */ or INDEX_NAME is null /* If SQL_TABLE_STAT row */ ORDER BY 4, 7, 6, 8 DROP TABLE #TmpIndex, #TmpColumns 5~`д§ЌmmmmmX—š88886~р5~д§Ќ kkkkkФ5~>>>>Ш6~`6~ §ЌФаааааф6~d7~…………H7~6~`д§Ќ/////X—šzzzzx7~Ш6~д§Ќ ћћћћћЌ6~ЎЎЎЎА7~H7~  §ЌФ*****Ь7~L8~08~x7~ `д§Ќ§§§§§X—šЈЈЈЈ`8~А7~ д§Ќ ˆˆˆˆˆ”7~нннн˜8~08~  §ЌФД8~49~SSSS9~`8~ `д§Ќ€€€€€X—šееееH9~˜8~д§Ќ !!!!!|8~tttt€9~9~ §ЌФјјјјјœ9~:~­­­­:~H9~`д§ЌцццццX—šГГГГ0:~€9~д§Ќ сссссd9~ДДДДh:~:~ §ЌФёёёёё„:~;~ЄЄЄЄш:~0:~`д§Ќ:::::X—šoooo;~h:~д§Ќ ЖЖЖЖЖL:~ууууP;~ш:~ §ЌФ=====l;~ь;~hhhhа;~;~`д§ЌHHHHHX—šVV<~P;~д§Ќ DDDDD4;~8<~а;~ §ЌФэээээT<~д<~ИИИИИ<~<~`д§ЌžžžžžX—šЫЫЫЫш<~8<~д§Ќ <~IIII =~И<~ §ЌФййййй<=~М=~ŒŒŒŒ =~ш<~`д§ЌНННННX—šшшшша=~ =~д§Ќ ххххх=~АААА>~ =~ §ЌФyyyyy$>~Є>~,,,,ˆ>~а=~`д§Ќ{{{{{X—š....И>~>~ д§Ќ |||||ь=~gg))))№>~ˆ>~! §ЌФууууу ?~Œ?~ЖЖЖЖp?~И>~"`д§Ќ<<<<~#д§Ќ гггггд>~†††† €p?~$ §ЌФXXXXX<€М€Єx\L8 мдМЄ”€МL4 ьмФЌ„t`<‹qЅш7"„„q<мл2 ?8create procedure sp_unbindrule --- 1996/08/13 13:33 @objname nvarchar(776), /* table/column or datatype name */ @futureonly varchar(15) = NULL /* flag to indicate extent of binding */ as declare @oldrule int /* current rule for type */ declare @tabname sysname /* name of table */ declare @colname sysname /* name of column */ declare @futurevalue varchar(15) /* the value of @futureonly that causes ** the binding to be limited */ declare @vc1 nvarchar(517) declare @obj_id integer ,@cur_tab_id integer ,@colid integer ,@domain integer ,@xusertype smallint ,@owner_name sysname ,@obj_name sysname ,@UnqualObj sysname ,@QualObj1 sysname ,@QualObj2 sysname ,@QualObj3 sysname set cursor_close_on_commit off select @futurevalue = 'futureonly' /* initialize @futurevalue */ /* ** When a default or rule is bound to a user-defined datatype, it is also ** bound, by default, to any columns of the user datatype that are currently ** using the existing default or rule as their default or rule. This default ** action may be overridden by setting @futureonly = @futurevalue when the ** procedure is invoked. In this case existing columns with the user ** datatype won't have their existing default or rule changed. */ -- get name parts -- select @UnqualObj = parsename(@objname, 1), @QualObj1 = parsename(@objname, 2), @QualObj2 = parsename(@objname, 3), @QualObj3 = parsename(@objname, 4) IF (@UnqualObj is NULL OR @QualObj3 is not null) begin raiserror(15253,-1,-1,@objname) return (1) end ------------------ Verify database. if (@QualObj2 is not null and @QualObj1 is null) begin raiserror(15084,-1,-1) return (1) end /* ** If @objname is of the form tab.col then we are unbinding a column. ** Otherwise its a datatype. In the column case, we need to extract ** and verify the table and column names and make sure the user owns ** the table that is getting the default unbound. */ if @QualObj1 is not null begin if (@QualObj2 is not null) select @vc1 = QuoteName(@QualObj2) + '.' + QuoteName(@QualObj1) else select @vc1 = QuoteName(@QualObj1) select @obj_id = c.id, @colid = c.colid, @domain = c.domain from syscolumns c, sysobjects o where c.id = o.id and c.name = @UnqualObj and o.id = object_id(@vc1,'local') and o.xtype = N'U ' if @obj_id is null begin raiserror(15104,-1,-1,@QualObj1,@UnqualObj) return (1) end if @domain = 0 begin raiserror(15238,-1,-1,@objname) return (1) end BEGIN TRANSACTION txn_unbindrule_1 /* ** Update schema count ** for the object in the sysobjects table. */ dbcc LockObjectSchema(@vc1) -- Locks Object and increments schema_ver. update syscolumns set domain = 0 from syscolumns c where id = @obj_id and colid = @colid COMMIT TRANSACTION txn_unbindrule_1 raiserror(15522,-1,-1) end else begin select @oldrule = domain, @xusertype = xusertype from systypes where name = @UnqualObj and xusertype > 256 AND (is_member('db_owner') = 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @xusertype is null begin raiserror(15036,-1,-1,@UnqualObj) return (1) end if @oldrule = 0 begin raiserror(15239,-1,-1,@UnqualObj) return (1) end update systypes set domain = 0 from systypes where xusertype = @xusertype raiserror(15523,-1,-1) select @futureonly = lower(@futureonly) if isnull(@futureonly, ' ') <> @futurevalue begin declare ms_crs_unbindrule_1 cursor local static for select distinct o.id ,user_name(o.uid) ,o.name ,c.colid from syscolumns c ,sysobjects o where o.id = c.id and o.xtype = N'U ' and c.xusertype = @xusertype and c.domain = @oldrule order by o.id for read only open ms_crs_unbindrule_1 BEGIN TRANSACTION txn_unbindrule_2 fetch next from ms_crs_unbindrule_1 into @obj_id ,@owner_name ,@obj_name ,@colid while @@fetch_status = 0 begin select @vc1 = quotename(@owner_name) + '.' + quotename(@obj_name) dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. select @cur_tab_id = @obj_id while @cur_tab_id = @obj_id and @@fetch_status = 0 begin update syscolumns set domain = 0 from syscolumns where id = @obj_id and colid = @colid fetch next from ms_crs_unbindrule_1 into @obj_id ,@owner_name ,@obj_name ,@colid end end COMMIT TRANSACTION txn_unbindrule_2 deallocate ms_crs_unbindrule_1 raiserror(15524,-1,-1) end end return (0) --sp_unbindrule <' в8create procedure sp_who --- 1995/11/28 15:48 @loginame sysname = NULL --or 'active' as declare @spidlow int, @spidhigh int, @spid int, @sid varbinary(85) select @spidlow = 0 ,@spidhigh = 32767 if ( @loginame is not NULL AND upper(@loginame) = 'ACTIVE' ) begin select spid , ecid, status ,loginame=rtrim(loginame) ,hostname ,blk=convert(char(5),blocked) ,dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where spid >= @spidlow and spid <= @spidhigh AND upper(cmd) <> 'AWAITING COMMAND' return (0) end if (@loginame is not NULL AND upper(@loginame) <> 'ACTIVE' ) begin if (@loginame like '[0-9]%') -- is a spid. begin select @spid = convert(int, @loginame) select spid, ecid, status, loginame=rtrim(loginame), hostname,blk = convert(char(5),blocked), dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where spid = @spid end else begin select @sid = suser_sid(@loginame) if (@sid is null) begin raiserror(15007,-1,-1,@loginame) return (1) end select spid, ecid, status, loginame=rtrim(loginame), hostname ,blk=convert(char(5),blocked), dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where sid = @sid end return (0) end /* loginame arg is null */ select spid, ecid, status, loginame=rtrim(loginame), hostname, blk=convert(char(5),blocked), dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where spid >= @spidlow and spid <= @spidhigh return (0) -- sp_who Ÿ`< оЅЎ7"–Н<ЃЗ> ~8create procedure sp_unbindefault --- 1996/08/13 13:34 @objname nvarchar(776), /* table/column or datatype name */ @futureonly varchar(15) = NULL /* flag to indicate extent of binding */ as declare @futurevalue varchar(15) /* the value of @futureonly that causes ** the binding to be limited */ declare @vc1 nvarchar(517) declare @tab_id integer ,@cur_tab_id integer ,@colid integer ,@cdefault integer ,@olddefault integer ,@xusertype smallint ,@UnqualObj sysname ,@QualObj1 sysname ,@QualObj2 sysname ,@QualObj3 sysname set cursor_close_on_commit off select @futurevalue = 'futureonly' /* initialize @futurevalue */ /* ** When a default or rule is bound to a user-defined datatype, it is also ** bound, by default, to any columns of the user datatype that are currently ** using the existing default or rule as their default or rule. This default ** action may be overridden by setting @futureonly = @futurevalue when the ** procedure is invoked. In this case existing columns with the user ** datatype won't have their existing default or rule changed. */ -- get name parts -- select @UnqualObj = parsename(@objname, 1), @QualObj1 = parsename(@objname, 2), @QualObj2 = parsename(@objname, 3), @QualObj3 = parsename(@objname, 4) IF (@UnqualObj is NULL OR @QualObj3 is not null) begin raiserror(15253,-1,-1,@objname) return (1) end ------------------ Verify database. if (@QualObj2 is not null and @QualObj1 is null) begin raiserror(15084,-1,-1) return (1) end /* ** If @objname is of the form tab.col then we are unbinding a column. ** Otherwise its a datatype. In the column case, we need to extract ** and verify the table and column names and make sure the user owns ** the table that is getting the default unbound. */ if @QualObj1 is not null begin if (@QualObj2 is not null) select @vc1 = QuoteName(@QualObj2) + '.' + QuoteName(@QualObj1) else select @vc1 = QuoteName(@QualObj1) /* ** Find it and unbind it. */ select @tab_id = c.id, @colid = c.colid, @cdefault = c.cdefault from syscolumns c, sysobjects o where c.id = o.id and c.name = @UnqualObj and o.id = object_id(@vc1,'local') and o.xtype = N'U ' if @tab_id is null begin raiserror(15104,-1,-1,@QualObj1,@UnqualObj) return(1) end if @cdefault = 0 begin raiserror(15236,-1,-1,@objname) return(1) end if exists (select * from sysobjects o where @cdefault = o.id and @tab_id = o.parent_obj) begin raiserror(15049,-1,-1, @objname) return (1) end BEGIN TRANSACTION txn_unbindefault_1 /* ** Since binding a default is a schema change, ** update schema count ** for the object in the sysobjects table. */ dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. update syscolumns set cdefault = 0 from syscolumns where id = @tab_id and colid = @colid COMMIT TRANSACTION txn_bindefault_1 raiserror(15519,-1,-1) return (0) end else begin /* ** We're unbinding to a user type. In this case, the @objname ** is really the name of the user datatype. ** When we unbind to a user type, any existing columns get changed ** to the new binding unless their current binding is not equal ** to the current binding for the usertype or if they set the ** @futureonly parameter to @futurevalue. */ /* ** Get the current default for the datatype. */ select @olddefault = tdefault, @xusertype = xusertype from systypes where name = @UnqualObj and xusertype > 256 AND (is_member('db_owner') = 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @olddefault is null begin raiserror(15036,-1,-1,@UnqualObj) return (1) end if @olddefault = 0 begin raiserror(15237,-1,-1,@UnqualObj) return (1) end update systypes set tdefault = 0 from systypes where xusertype = @xusertype raiserror(15520,-1,-1) /* ** Now see if there are any columns with the usertype that ** need the new binding. */ select @futureonly = lower(@futureonly) if isnull(@futureonly, ' ') <> @futurevalue begin declare ms_crs_unbindefault_1 cursor local static for select distinct c.id ,c.colid from syscolumns c JOIN sysobjects o ON c.id = o.id AND o.xtype = N'U ' where c.xusertype = @xusertype and c.cdefault = @olddefault order by c.id for read only open ms_crs_unbindefault_1 fetch next from ms_crs_unbindefault_1 into @tab_id ,@colid BEGIN TRANSACTION txn_unbindefault_2 while @@fetch_status = 0 begin select @vc1 = quotename(user_name(OBJECTPROPERTY(@tab_id,'OwnerId'))) + '.' + quotename(object_name(@tab_id)) dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. select @cur_tab_id = @tab_id while @cur_tab_id = @tab_id and @@fetch_status = 0 begin update syscolumns set cdefault = 0 from syscolumns where id = @tab_id and colid = @colid fetch next from ms_crs_unbindefault_1 into @tab_id ,@colid end end --loop 3 /* COMMIT TRANSACTION txn_unbindefault_2 deallocate ms_crs_unbindefault_1 raiserror(15521,-1,-1) end end return (0) -- sp_unbindefault ййййpИ5`д§ЌvvvvvX—š#### №6д§Ќ aaaaaд884444иp7 §ЌФєtIIIIX 8`д§Ќ;;;;;X—šШ;`д§Ќnnnnˆи9д§Ќ YYYYYМ РX: §ЌФрррррм\ЕЕЕЕ@ˆ;`д§ЌX—šCCCCpР<д§Ќ XXXXXЄ Ј@= §ЌФюююююФDЛЛЛЛ€(p>`д§Ќ™™™™™X—šЙ > §ЌЬЬЬЬXЈ?д§Ќ ВВВВВŒчччч(@ §ЌФчччччЌ,ВВВВXA`д§Ќ–––––X—šУУУУ@Bд§Ќ FFFFFtxC §ЌФ”BBBBј@D`д§ЌHHHHHX—šиˆA(xEд§Ќ ŸŸŸŸŸ\ЪЪЪЪ`јF §ЌФMMMMM|ќр(G`д§Ќ‚‚‚‚‚X—šАDзззз`Hд§Ќ uuuuuD HрI §ЌФ]]]]]dфШJ`д§ЌƒƒƒƒƒX—šжжжжјHKд§Ќ TTTTT,0ШL §ЌФ–––––LЬУУУУвАјM`д§ЌnnnnnX—š;;;;р0Nд§Ќ иииииАO §ЌФГГГГГ4Дцццц˜рP`д§Ќ‘‘‘‘‘X—šФФФФШQд§Ќ SSSSSќ  ~˜R §ЌФ]]]]]< ~М ~мШ`<CЗЅ€7"U|я<1oV Ђ8create procedure sp_spaceused --- 1996/08/20 17:01 @objname nvarchar(776) = null, -- The object we want size on. @updateusage varchar(5) = false -- Param. for specifying that -- usage info. should be updated. as declare @id int -- The object id of @objname. declare @type character(2) -- The object type. declare @pages int -- Working variable for size calc. declare @dbname sysname declare @dbsize dec(15,0) declare @logsize dec(15) declare @bytesperpage dec(15,0) declare @pagesperMB dec(15,0) /*Create temp tables before any DML to ensure dynamic ** We need to create a temp table to do the calculation. ** reserved: sum(reserved) where indid in (0, 1, 255) ** data: sum(dpages) where indid < 2 + sum(used) where indid = 255 (text) ** indexp: sum(used) where indid in (0, 1, 255) - data ** unused: sum(reserved) - sum(used) where indid in (0, 1, 255) */ create table #spt_space ( rows int null, reserved dec(15) null, data dec(15) null, indexp dec(15) null, unused dec(15) null ) /* ** Check to see if user wants usages updated. */ if @updateusage is not null begin select @updateusage=lower(@updateusage) if @updateusage not in ('true','false') begin raiserror(15143,-1,-1,@updateusage) return(1) end end /* ** Check to see that the objname is local. */ if @objname IS NOT NULL begin select @dbname = parsename(@objname, 3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end if @dbname is null select @dbname = db_name() /* ** Try to find the object. */ select @id = null select @id = id, @type = xtype from sysobjects where id = object_id(@objname) /* ** Does the object exist? */ if @id is null begin raiserror(15009,-1,-1,@objname,@dbname) return (1) end if not exists (select * from sysindexes where @id = id and indid < 2) if @type in ('P ','D ','R ','TR','C ','RF') --data stored in sysprocedures begin raiserror(15234,-1,-1) return (1) end else if @type = 'V ' -- View => no physical data storage. begin raiserror(15235,-1,-1) return (1) end else if @type in ('PK','UQ') -- no physical data storage. --?!?! too many similar messages begin raiserror(15064,-1,-1) return (1) end else if @type = 'F ' -- FK => no physical data storage. begin raiserror(15275,-1,-1) return (1) end end /* ** Update usages if user specified to do so. */ if @updateusage = 'true' begin if @objname is null dbcc updateusage(0) with no_infomsgs else dbcc updateusage(0,@objname) with no_infomsgs print ' ' end set nocount on /* ** If @id is null, then we want summary data. */ /* Space used calculated in the following way ** @dbsize = Pages used ** @bytesperpage = d.low (where d = master.dbo.spt_values) is ** the # of bytes per page when d.type = 'E' and ** d.number = 1. ** Size = @dbsize * d.low / (1048576 (OR 1 MB)) */ if @id is null begin select @dbsize = sum(convert(dec(15),size)) from dbo.sysfiles where (status & 64 = 0) select @logsize = sum(convert(dec(15),size)) from dbo.sysfiles where (status & 64 <> 0) select @bytesperpage = low from master.dbo.spt_values where number = 1 and type = 'E' select @pagesperMB = 1048576 / @bytesperpage select database_name = db_name(), database_size = ltrim(str((@dbsize + @logsize) / @pagesperMB,15,2) + ' MB'), 'unallocated space' = ltrim(str((@dbsize - (select sum(convert(dec(15),reserved)) from sysindexes where indid in (0, 1, 255) )) / @pagesperMB,15,2)+ ' MB') print ' ' /* ** Now calculate the summary data. ** reserved: sum(reserved) where indid in (0, 1, 255) */ insert into #spt_space (reserved) select sum(convert(dec(15),reserved)) from sysindexes where indid in (0, 1, 255) /* ** data: sum(dpages) where indid < 2 ** + sum(used) where indid = 255 (text) */ select @pages = sum(convert(dec(15),dpages)) from sysindexes where indid < 2 select @pages = @pages + isnull(sum(convert(dec(15),used)), 0) from sysindexes where indid = 255 update #spt_space set data = @pages /* index: sum(used) where indid in (0, 1, 255) - data */ update #spt_space set indexp = (select sum(convert(dec(15),used)) from sysindexes where indid in (0, 1, 255)) - data /* unused: sum(reserved) - sum(used) where indid in (0, 1, 255) */ update #spt_space set unused = reserved - (select sum(convert(dec(15),used)) from sysindexes where indid in (0, 1, 255)) select reserved = ltrim(str(reserved * d.low / 1024.,15,0) + ' ' + 'KB'), data = ltrim(str(data * d.low / 1024.,15,0) + ' ' + 'KB'), index_size = ltrim(str(indexp * d.low / 1024.,15,0) + ' ' + 'KB'), unused = ltrim(str(unused * d.low / 1024.,15,0) + ' ' + 'KB') from #spt_space, master.dbo.spt_values d where d.number = 1 and d.type = 'E' end /* ** We want a particular object. */ else begin /* ** Now calculate the summary data. ** reserved: sum(reserved) where indid in (0, 1, 255) */ insert into #spt_space (reserved) select sum(reserved) from sysindexes where indid in (0, 1, 255) and id = @id /* ** data: sum(dpages) where indid < 2 ** + sum(used) where indid = 255 (text) */ select @pages = sum(dpages) from sysindexes where indid < 2 and id = @id select @pages = @pages + isnull(sum(used), 0) from sysindexes where indid = 255 and id = @id update #spt_space set data = @pages /* index: sum(used) where indid in (0, 1, 255) - data */ update #spt_space set indexp = (select sum(used) from sysindexes where indid in (0, 1, 255) and id = @id) - data /* unused: sum(reserved) - sum(used) where indid in (0, 1, 255) */ update #spt_space set unused = reserved - (select sum(used) from sysindexes where indid in (0, 1, 255) and id = @id) update #spt_space set rows = i.rows from sysindexes i where i.indid < 2 and i.id = @id select name = object_name(@id), rows = convert(char(11), rows), reserved = ltrim(str(reserved * d.low / 1024.,15,0) + ' ' + 'KB'), data = ltrim(str(data * d.low / 1024.,15,0) + ' ' + 'KB'), index_size = ltrim(str(indexp * d.low / 1024.,15,0) + ' ' + 'KB'), unused = ltrim(str(unused * d.low / 1024.,15,0) + ' ' + 'KB') from #spt_space, master.dbo.spt_values d where d.number = 1 and d.type = 'E' end return (0) -- sp_spaceused <j“J q8 create procedure sp_sqlexec --- 1996/04/08 00:00 @p1 text as exec(@p1) <y­  D€8Оh.0:/s`<Я)Г d$ИЁF<•9 !8 /* Procedure for 8.0 and later servers */ CREATE PROCEDURE sp_special_columns ( @table_name sysname, @table_owner sysname = null, @table_qualifier sysname = null, @col_type char(1) = 'R', @scope char(1) = 'T', @nullable char(1) = 'U', @ODBCVer int = 2) AS DECLARE @indid int DECLARE @table_id int DECLARE @full_table_name nvarchar(257) DECLARE @scopeout smallint if @col_type not in ('R','V') or @col_type is null begin raiserror (15251,-1,-1,'col_type','''R'' or ''V''') return end if @scope = 'C' select @scopeout = 0 else if @scope = 'T' select @scopeout = 1 else begin raiserror (15251,-1,-1,'scope','''C'' or ''T''') return end if @nullable not in ('U','O') or @nullable is null begin raiserror (15251,-1,-1,'nullable','''U'' or ''O''') return end if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = quotename(@table_name) end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @full_table_name = quotename(@table_owner) end else begin SELECT @full_table_name = quotename(@table_owner) + '.' + quotename(@table_name) end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) if @col_type = 'V' BEGIN /* if ROWVER, just run that query */ SELECT SCOPE = convert(smallint,NULL), COLUMN_NAME = convert(sysname,c.name), DATA_TYPE = convert(smallint, -2), TYPE_NAME = t.name, "PRECISION" = convert(int,8), LENGTH = convert(int,8), SCALE = convert(smallint, NULL), PSEUDO_COLUMN = convert(smallint,1) FROM systypes t, syscolumns c WHERE not (@table_id is null) AND c.id = @table_id AND t.name = 'timestamp' /* TIMESTAMP */ AND t.xtype = c.xtype AND t.xusertype = c.xusertype RETURN END /* ROWID, now find the id of the 'best' index for this table */ IF @nullable = 'O' /* Don't include any indexes that contain nullable columns. */ SELECT @indid = MIN(indid) FROM sysindexes x, syscolumns c, syscolumns c2 WHERE not (@table_id is null) AND x.status&2 = 2 /* If Unique Index */ AND c.id = x.id AND c2.id = c.id AND c2.colid < x.keycnt + (x.status&18)/18 AND x.id = @table_id AND indid > 0 /* Eliminate Table Row */ AND c.name = index_col(@table_name,x.indid,c2.colid) GROUP BY indid HAVING SUM(c.status&8) = 0 ELSE /* Include indexes that are partially nullable. */ SELECT @indid = MIN(indid) FROM sysindexes x WHERE not (@table_id is null) AND status&2 = 2 /* If Unique Index */ AND id = @table_id AND indid > 0 /* Eliminate Table Row */ SELECT SCOPE = @scopeout, COLUMN_NAME = convert(sysname,INDEX_COL(@full_table_name,indid,c2.colid)), d.DATA_TYPE, convert(sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME collate database_default end) TYPE_NAME, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), PSEUDO_COLUMN = convert(smallint,1) FROM sysindexes x, syscolumns c, master.dbo.spt_datatype_info d, systypes t, syscolumns c2 /* Self-join to generate list of index columns and */ /* to extract datatype names */ WHERE not (@table_id is null) AND x.id = @table_id AND c.name = INDEX_COL(@full_table_name,@indid,c2.colid) AND c.id = x.id AND c2.id = x.id AND c2.colid < x.keycnt + (x.status&16)/16 AND x.indid = @indid AND t.xtype = d.ss_dtype AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentity'),0) AND c.xusertype = t.xusertype <П&n N8-- -- Name: sp_add_data_file_recover_suspect_db -- Purpose: Adds a data file to a suspect database and runs -- recovery on the database. This SP should only be used -- on databases that have been marked suspect due to -- insufficient data (error 1105) or log (error 9002) space. -- create procedure sp_add_data_file_recover_suspect_db @dbName sysname -- database name ,@filegroup nvarchar(260) -- file group for new file ,@name nvarchar(260) -- logical file name ,@filename nvarchar(260) -- OS file name ,@size nvarchar(20) = NULL -- initial file size ,@maxsize nvarchar(20) = NULL -- maximum file size ,@filegrowth nvarchar(20) = NULL -- growth increment as execute sp_add_file_recover_suspect_db @dbName, 'DATA', @filegroup, @name, @filename, @size, @maxsize, @filegrowth <јJb 8-- -- Name: sp_add_log_file_recover_suspect_db -- Purpose: Adds a log file to a suspect database and runs -- recovery on the database. This SP should only be used -- on databases that have been marked suspect due to -- insufficient data (error 1105) or log (error 9002) space. -- create procedure sp_add_log_file_recover_suspect_db @dbName sysname -- database name ,@name nvarchar(260) -- logical file name ,@filename nvarchar(260) -- OS file name ,@size nvarchar(20) = NULL -- initial file size ,@maxsize nvarchar(20) = NULL -- maximum file size ,@filegrowth nvarchar(20) = NULL -- growth increment as execute sp_add_file_recover_suspect_db @dbName, 'LOG', NULL, @name, @filename, @size, @maxsize, @filegrowth <нZь N8create proc sp_eventlog( @p1 varchar(255) = NULL, @p2 int = NULL, @p3 int = NULL, @p4 int = NULL ) as begin if (not is_srvrolemember(N'securityadmin') = 1) begin raiserror(15003,-1,-1, N'securityadmin') return (1) end exec master.dbo.xp_eventlog @p1,@p2,@p3,@p3 end лЯ` <Ш 6ЅˆБ7"$Oт <†z  ж8-- -- Name: sp_add_file_recover_suspect_db -- Purpose: Adds a data or log file to a suspect database and runs -- recovery on the database. This SP should only be used -- on databases that have been marked suspect due to -- insufficient data (error 1105) or log (error 9002) space. -- Note: This SP is not documented. Only sp_add_data_file_recover_suspect_db -- and sp_add_log_file_recover_suspect_db below are documented -- create procedure sp_add_file_recover_suspect_db @dbName sysname -- database name ,@fileType nvarchar(4) -- "data" or "log" ,@filegroup nvarchar(260) -- file group for new file ,@name nvarchar(260) -- logical file name ,@filename nvarchar(260) -- OS file name ,@size nvarchar(20) = NULL -- initial file size ,@maxsize nvarchar(20) = NULL -- maximum file size ,@filegrowth nvarchar(20) = NULL -- growth increment as declare @currentStatus int declare @suspectBit int declare @dboOnlyBit int declare @emergencyModeBit int declare @returnCode int declare @addCmd nvarchar(4000) declare @isLog int set nocount on select @suspectBit = 0x100 select @currentStatus = 0 select @returnCode = 0 --------------------- Restrict to SA ------------------------- if (not (is_srvrolemember('sysadmin') = 1)) begin RaisError(15247,-1,-1) Select @returnCode = 1 GOTO LABEL_FAILURE end ------------------ Get Status Bit id values ------------------ SELECT @suspectBit = min(number) from master..spt_values where type = 'D ' and name = 'not recovered' -- 256, Suspect SELECT @dboOnlyBit = min(number) from master..spt_values where type = 'D ' and name = 'dbo use only' -- 2048, dbo only SELECT @emergencyModeBit = min(number) from master..spt_values where type = 'D ' and name = 'emergency mode' -- 32768, dbo only --print 'Bit values ' + convert(char(10), @suspectBit) + convert(char(10), @dboOnlyBit) + convert(char(10), @emergencyModeBit) -- Determine if this is a data or log file -- IF (UPPER (@fileType) = 'DATA') begin select @isLog = 0 end ELSE IF (UPPER (@fileType) = 'LOG') begin select @isLog = 1 end ELSE begin print 'Must specify data or log file type' select @returnCode = 1 GOTO LABEL_FAILURE end IF @@trancount > 0 begin RaisError(15002,-1,-1,'sp_add_file_recover_suspect_db') Select @returnCode = 1 GOTO LABEL_FAILURE end -- check that current status includes suspect or emergency-mode -- otherwise fail with database does not exist -- select @currentStatus = status from master.dbo.sysdatabases where name = @dbName if (@currentStatus is null) begin RaisError(15010,-1,-1,@dbName) select @returnCode = 1 goto LABEL_FAILURE end -- set new temporary status to dbo-only and emergency-mode -- BEGIN TRAN update master.dbo.sysdatabases set status = (status | @dboOnlyBit | @emergencyModeBit) where name = @dbName IF @@error <> 0 begin ROLLBACK TRANSACTION RaisError(15055,-1,-1) Select @returnCode = 1 GOTO LABEL_FAILURE end COMMIT TRAN checkpoint -- Build the Alter Database Add File string -- select @addCmd = 'ALTER DATABASE ' + @dbName + ' ADD' IF (@isLog = 1) begin select @addCmd = @addCmd + ' LOG FILE' end ELSE begin select @addCmd = @addCmd + ' FILE' end select @addCmd = @addCmd + '(NAME = [' + @name + '], FILENAME = ''' + @filename + '''' if (@size IS NOT NULL) begin select @addCmd = @addCmd + ', SIZE = ' + @size end if (@maxsize IS NOT NULL) begin select @addCmd = @addCmd + ', MAXSIZE = ' + @maxsize end if (@filegrowth IS NOT NULL) begin select @addCmd = @addCmd + ', FILEGROWTH = ' + @filegrowth end select @addCmd = @addCmd + ' )' if (@filegroup IS NOT NULL) begin select @addCmd = @addCmd + ' TO FILEGROUP [' + @filegroup + ']' end print @addCmd EXECUTE (@addCmd) -- restore status to what it was before adding the file -- BEGIN TRAN update master.dbo.sysdatabases set status = @currentStatus where name = @dbName IF @@error <> 0 begin ROLLBACK TRANSACTION RaisError(15055,-1,-1) Select @returnCode = 1 GOTO LABEL_FAILURE end COMMIT TRAN checkpoint -- Turn off suspect bit if it is on -- if ((@currentStatus & @suspectBit) <> 0) begin exec sp_resetstatus @dbName end -- Run recovery on the database -- select @addCmd = 'dbcc dbrecover (' + @dbName + ')' exec (@addCmd) GOTO LABEL_SUCCESS LABEL_FAILURE: --print 'Failed to add file to and recover the suspect database.' return @returnCode LABEL_SUCCESS: --print 'Successfully added file to the database' return @returnCode -- sp_add_file_recover_suspect_db qР` <–b Ѕˆ‡7"B›ё$< в  д8create procedure sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517), /* (owner.)name of function to call */ @dllname varchar(255) /* name of DLL containing function */ as /* ** If we're in a transaction, disallow the addition of the ** extended stored procedure. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addextendedproc') return (1) end -- Disallow 0-length string & NULL if @dllname is null or datalength(@dllname) = 0 begin raiserror(15311,-1,-1,@dllname) return (1) end /* ** Create the extended procedure mapping. */ dbcc addextendedproc( @functname, @dllname) return (0) -- sp_addextendedproc <К‘  D€8#Hh,+7-<>ФЦ  8create procedure sp_helpextendedproc --- 1996/08/14 15:53 @funcname sysname = NULL as set nocount on if (select count(*) from master.dbo.sysobjects where xtype = N'X ') = 0 begin raiserror(15326,-1,-1) return (0) end if @funcname is not null begin /* ** Make sure the function name exists */ if not exists (select * from master.dbo.sysobjects where xtype = N'X ' and name = @funcname) begin raiserror(15019,-1,-1,@funcname) return (1) end /*print out select function name info*/ select distinct name = o.name, dll = substring(c.text,1,255) from master.dbo.sysobjects o, master.dbo.syscomments c where o.id = c.id and o.name = @funcname and o.xtype = N'X ' order by o.name end else /* ** or print out all function name info */ select distinct name = o.name, dll = substring(c.text,1,255) from master.dbo.sysobjects o, master.dbo.syscomments c where o.id = c.id and o.xtype = N'X ' order by o.name return (0) -- sp_helpextendedproc <Mо…  Я 8 CREATE PROCEDURE sp_resetstatus -- 1995/11/30 14:12 #12092 @DBName sysname as Set nocount on Declare @msg nvarchar(280) ,@RetCode integer ,@_error integer ,@_rowcount integer ,@int1 integer ,@bitSuspect integer ,@mode integer ,@status integer Select @RetCode = 0 -- 0=no_problem, 1=some_problem --------------------- Restrict to SA ------------------------- if (not (is_srvrolemember('sysadmin') = 1)) begin RaisError(15247,-1,-1) Select @RetCode = 1 GOTO LABEL_86BYEBYE end ------------------ Get SuspectBit id value ------------------ SELECT @bitSuspect = min(number) from master..spt_values where type = 'D ' and name = 'not recovered' -- 256, Suspect ---------------------- Forbid active txn --------------------- --- (Prior spt_values Sel trips SET implicit_transactions!) IF @@trancount > 0 begin RaisError(15002,-1,-1,'sp_resetstatus') Select @RetCode = 1 GOTO LABEL_86BYEBYE end --------------- Obtain/Report pre-Update values -------------------- SELECT @mode = min(mode) ,@status = min(status) from master..sysdatabases where name = @DBName IF @@error <> 0 OR @status IS Null begin RaisError(15010,-1,-1,@DBName) Select @RetCode = 1 GOTO LABEL_86BYEBYE end Select @int1 = @status & @bitSuspect Raiserror(15052,-1,-1 ,@DBName ,@mode ,@status ,@int1) --------------------- Update sysdatabases row --------------------- BEGIN TRANSACTION UPDATE master..sysdatabases set mode = 0 ,status = status & (~ @bitSuspect) where name = @DBName and (mode <> 0 OR status & @bitSuspect > 0 ) Select @_error = @@error ,@_rowcount = @@rowcount IF @_error <> 0 begin ROLLBACK TRANSACTION RaisError(15055,-1,-1) Select @RetCode = 1 GOTO LABEL_86BYEBYE end COMMIT TRANSACTION -------- Report the results IF @_rowcount = 0 begin Raiserror(15056,-1,-1) end ELSE begin Raiserror(15073,-1,-1, @DBName,@bitSuspect) Raiserror(15074,-1,-1) end LABEL_86BYEBYE: RETURN @RetCode 88 Єq{щщщщАq{@q{ЖФљІзAAAA00r{ˆq{ЗDx;Ј ЂЂЂЂЂќr{\q{€4їїїї`r{Аq{И$АБЂй˜˜˜˜˜db_denydatareaderЭЭЭЭ r{Јr{r{Й(x;Јп ЇЇа4Фr{FFFFрr{`r{КФљІзtttttdb_denydatareader!!!!oooHs{Јr{ЛDx;Ј јјјјјЌs{|r{Рr{€4­­­­ќ№s{рr{М(x;Ј3 ЄЄЄЄЄ0s{ ёёёёјs{Hs{НDx;Ј ЃЃЃЃЃЌt{ds{­b€4іііі0в{ t{s{ОАБЂsХХХХ ht{јs{П(x;Јж 00ЅЅ„t{WWWWt{ t{РФљІзAAAA јt{ht{СDx;Ј лллллŒu{>>>h{{xz{гx;Јъ ,,,,,sysusersyyyyр{{8{{дXXЁЂЗ ^HYYYY(|{h{{е(x;Јџ BBBBBќ88 D|{P|{р{{жФљІз @PPPPћИ|{(|{зDx;Ј D}{ќ{{ €4****h|{}{P|{и(x;Јџ ššššš88 }{ЯЯЯЯ(}{И|{йФљІзЦЦЦЦЦ““““8}{}{кDx;Ј t~{д|{ф№{€4ZZZZћ+и}{(}{л$АБЂйdb_denydatawriterAAAAX ~{}{м(x;Јп ЏЏЏЏЏЇЇа4<~{њњњњX~{и}{нФљІзdb_denydatawriterAAAAьььŒŒ˜Р~{ ~{оDx;Ј ${є}{€4TTTT{X~{п(x;Ј3 ГГГГГ ццццp{Р~{рDx;Ј ЙЙЙЙЙd zм~{ф№{€4ььььћ'˜{{сАБЂ№LLLL0  zp{т(x;Јж ЈЈЈЈЈ0o{ЅЅ< z§§§§`Фp$рœPШ„“x4` <ц ВˆA$ьЋт<xgt  ™8 /* Procedure for 8.0 server */ CREATE PROCEDURE sp_pkeys( @table_name sysname, @table_owner sysname = null, @table_qualifier sysname = null ) as DECLARE @table_id int DECLARE @full_table_name nvarchar(255) if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = quotename(@table_name) end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @full_table_name = quotename(@table_owner) end else begin SELECT @full_table_name = quotename(@table_owner) + '.' + quotename(@table_name) end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) select TABLE_QUALIFIER = convert(sysname,db_name()), TABLE_OWNER = convert(sysname,user_name(o.uid)), TABLE_NAME = convert(sysname,o.name), COLUMN_NAME = convert(sysname,c.name), --KEY_SEQ = convert(smallint,c.colid), KEY_SEQ = case when c.name = index_col(@full_table_name, i.indid, 1) then convert (smallint,1) when c.name = index_col(@full_table_name, i.indid, 2) then convert (smallint,2) when c.name = index_col(@full_table_name, i.indid, 3) then convert (smallint,3) when c.name = index_col(@full_table_name, i.indid, 4) then convert (smallint,4) when c.name = index_col(@full_table_name, i.indid, 5) then convert (smallint,5) when c.name = index_col(@full_table_name, i.indid, 6) then convert (smallint,6) when c.name = index_col(@full_table_name, i.indid, 7) then convert (smallint,7) when c.name = index_col(@full_table_name, i.indid, 8) then convert (smallint,8) when c.name = index_col(@full_table_name, i.indid, 9) then convert (smallint,9) when c.name = index_col(@full_table_name, i.indid, 10) then convert (smallint,10) when c.name = index_col(@full_table_name, i.indid, 11) then convert (smallint,11) when c.name = index_col(@full_table_name, i.indid, 12) then convert (smallint,12) when c.name = index_col(@full_table_name, i.indid, 13) then convert (smallint,13) when c.name = index_col(@full_table_name, i.indid, 14) then convert (smallint,14) when c.name = index_col(@full_table_name, i.indid, 15) then convert (smallint,15) when c.name = index_col(@full_table_name, i.indid, 16) then convert (smallint,16) end, PK_NAME = convert(sysname,i.name) from sysindexes i, syscolumns c, sysobjects o --, syscolumns c1 where o.id = @table_id and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 --and c.name = index_col (@full_table_name, i.indid, c1.colid) and (c.name = index_col (@full_table_name, i.indid, 1) or c.name = index_col (@full_table_name, i.indid, 2) or c.name = index_col (@full_table_name, i.indid, 3) or c.name = index_col (@full_table_name, i.indid, 4) or c.name = index_col (@full_table_name, i.indid, 5) or c.name = index_col (@full_table_name, i.indid, 6) or c.name = index_col (@full_table_name, i.indid, 7) or c.name = index_col (@full_table_name, i.indid, 8) or c.name = index_col (@full_table_name, i.indid, 9) or c.name = index_col (@full_table_name, i.indid, 10) or c.name = index_col (@full_table_name, i.indid, 11) or c.name = index_col (@full_table_name, i.indid, 12) or c.name = index_col (@full_table_name, i.indid, 13) or c.name = index_col (@full_table_name, i.indid, 14) or c.name = index_col (@full_table_name, i.indid, 15) or c.name = index_col (@full_table_name, i.indid, 16) ) --and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ --and c1.id = @table_id order by 1, 2, 3, 5 <ЂqЉ  J8create procedure sp_renamedb --- 1996/08/20 13:52 @dbname sysname, /* old (current) db name */ @newname sysname /* new name we want to call it */ as -- Use sp_rename instead. declare @objid int /* object id of the thing to rename */ declare @bitdesc varchar(30) /* bit description for the db */ declare @curdbid int /* id of database to be changed */ declare @execstring nvarchar (4000) /* ** If we're in a transaction, disallow this since it might make recovery ** impossible. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_renamedb') return (1) end /* ** Only the SA can do this. */ if not (is_srvrolemember('dbcreator') = 1) begin raiserror(15247,-1,-1) return (1) end /* ** Make sure the database exists. */ if not exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15010,-1,-1,@dbname) return (1) end /* ** Make sure that the @newname db doesn't already exist. */ if exists (select * from master.dbo.sysdatabases where name = @newname) begin raiserror(15032,-1,-1,@newname) return (1) end /* ** Check to see that the @newname is valid. */ declare @returncode int exec @returncode = sp_validname @newname if @returncode <> 0 begin raiserror(15224,-1,15,@newname) return(1) end /* ** Don't allow the names of master, tempdb, and model to be changed. */ if @dbname in ('master', 'model', 'tempdb') begin raiserror(15227,-1,-1,@dbname) return (1) end select @execstring = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' MODIFY NAME = ' + quotename( @newname , '[') exec (@execstring) if @@error <> 0 begin -- No need to raiserror as the CREATE DATABASE will do so return(1) end return (0) -- sp_renamedb <Ь{о  ь8create procedure sp_dropextendedproc --- 1996/08/30 20:13 @functname nvarchar(517) -- name of function as /* ** If we're in a transaction, disallow the dropping of the ** extended stored procedure. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dropextendedproc') return (1) end /* ** Drop the extended procedure mapping. */ dbcc dropextendedproc( @functname ) return (0) -- sp_dropextendedproc <‡3  ё8create proc sp_enumerrorlogs as begin IF (not is_srvrolemember(N'securityadmin') = 1) begin raiserror(15003,-1,-1, N'securityadmin') return (1) end exec master.dbo.xp_enumerrorlogs end <Б‹h  ,8 create proc sp_server_info ( @attribute_id int = null) as if @attribute_id is not null select * from master.dbo.spt_server_info where attribute_id = @attribute_id else select * from master.dbo.spt_server_info order by attribute_id <л•  Т8create procedure sp_remove_tempdb_file @filename sysname as declare @fileid smallint set nocount on select @fileid = fileid from sysaltfiles where dbid = 2 -- limit to tempdb files and name = @filename if @fileid is null begin -- file name does not exist raiserror(15311,-1,-1,@filename) return (1) end if @fileid < 3 begin -- file is one of the primary files raiserror(15312,-1,-1,@filename) return (1) end delete sysaltfiles where dbid = 2 and fileid = @fileid if @@error>0 begin raiserror(15321,-1,-1, @filename) return (1) end else begin raiserror(15322,-1,-1, @filename) return (0) end Єt8Œ` м L /Cљ`5 <$Ъ Ѓ@€?/˜0<:€$фžќLЋЊЊ>ЋЊЊ>C2=C2=-d CИA€?€@-dC€@T\,@`A€?Р@€?@@€?0<;"0<<$p‡ќLaa>РŒ;/л:—9з:PA@D€?€@€@€@рш@Th|ЄИЬ€C€?тB€?€?€?@€? €?€?œB€?2ђB€?<€@€?@a0<< $эЇ5Ж!L]]ЋЊЊ>€@@D€@]e/FD€?@A€?€?€?]0<< $хЈ6Ж!L^^@?%I’= €@€D€@U]Xo†ДЫтљ'>@C€?žC€?dB€?ˆA€?€@€? A€?€?€?€?€?€?€? €?€? @@@ €?€? ^0<<  "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Ј УжfD`‚ ‹<6ц Ѓ@№х?Д0<< $эЇ5Ж!L]]ЋЊЊ>€@@D€@]e/FD€?@A€?€?€?]0<< $хЈ6Ж!L^^@?%I’= €@€D€@U]Xo†ДЫтљ'>@C€?žC€?dB€?ˆA€?€@€? A€?€?€?€?€?€?€? €?€? @@@ €?€? ^0<<  "0<< $’Љ6Ж!L__~пw?^e;ОО€@РD€@ №5Lcz‘ЈПжэ2I`wŽЅМгъ/F]t‹ЂЙачў , C Z q ˆ Ÿ Ж Э ф ћ  ) @ W n … œ Г Ъ с ј  & = T k ‚ ™ А Ч о ѕ # : Q h  – ­ Ф л ђ 7 N e | “ Њ С и я 4KbyЇОеь1H_vЄЛвщ.E\sŠЁИЯц§+BYp‡žЕЬуњ(?Vm„›ВЩрї%<Sj˜ЏЦнє "9Pg~•ЌУкё6Md{’ЉРзю3JaxІНды @€?@€?@@€?@@€?@€?€?@€?€?€?€?@@€?€?@@€?€@€?€?"@€?€?)@@€?*@@@,€@€?€?.@@@@€?2@Р@@8@€?€?:€@€?€?<@€?@@@€?€?C@@€?€?E€?€?€?H@€?€?J@@@N€?€?€?R@€?€?Z@€?[@€?€?]@@€?€?_@@€?`@@@b€?€?€?f€?€?€?j€?@€?r€?@@€?|€?@@€?€?@@€?f€?@@€?я€?€?€?ћ€?€?€?ў€?€?€?€?€?€?€?€?€?€?€?€?€?€?€? €?€?€? €?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€?€? €?€?€?"€?€?€?'€?€?€?)€?€?€?+€?€?€?-@@€?@@@@@@@@@@€?@@@@@€?€?€?’U€?@@€?†;ž€?@@€?щiЧ€?@@€?1Јz @€?€?ЏЦ€?€?€?Ори€?@@€?їЭ€?€?€?0)С€? @€?Ь{о €?€?€?Б‹h €?€?€? в €?€?€?К‘ €?€?€?љЩ €?€?€?wшК €?€?€?†z €?€?€?k€?€?€?П&n€?€?€?Є6ј€?€?€?"U—€?€?€?1oV€?€?€?р€?€?€?”€?€?€?y­ €?€?€?ЭСs€?€?€?мл2€?€?€?СыМ€?€?€?? \€?@€?N$€?@€?‡H€?€?€?lX™€?@@€?Я†Т€?€?€?#›,€?@@€?Хu€?@@€?zѓž€?р@€?FМ€?€?€?ћUF€?@@€?4z:€?€?€?ˆŽЄ€?@@€?ыМЭ€?р@€? "€?€?€?lu"€?€?€?Q/џ"€?@@€?ŠSѓ#€?€?€?оg]$€?€?€?Уwч$€?€?€?ŒQ%€?€?€?ќ›л%€?€?€?PАE&€?€?€?‰д9'€?€?€?Тј-(PA€?€?бэ(€?€?€?р,Ќ)€?€?€?Q *€?€?€?me +@@€?|Щ+€?€?€?а“3,€?€?€?ЕЃН,€?€?€? И'-€?€?€?юЧБ-€?€?€?Bм.@@€@€?`š/€?@@€?У>У0@@@€?вX‚1€?€?€?&mь1€?€?€?5‡Ћ2€?€?€?—53€?€?€?˜Ед3@@€?€?}Х^4€?€?€?бйШ4@€@€?я G6€?€?€?C"Б6@€@€?aV/8€?€?€?Еj™8€@€@€?гž:€?€?€?'Г:€?€?€?6Э@;@@@€?TП<@@€?~ є<€?€?€?в^=@@€?ЦIЇ>€@€?№Sм>€?€?€?DhF?@@€?8’@€?€?€?ŒІљ@@€?€?qЖƒA€?€?€?яд"B@@€? ЁC€?@€?p7ЪD€?@€?гeѓE@€?Иu}F€?@€?ЄІG@€?€?*ОeH€?@€?ьŽI@€?€?œNJ€?@€?џ4wK@@€?€?O6L€?@€?q}_M€?@€?дЋˆN@€?ЙЛO€?@€?ъ;P@@@€?d(яQ€?@€?ЧVS@€?€?жpзS€?@€?9ŸU@@€?€?HЙПU@@€?нГV@@€?КЈW€?@@€?G:Y€?@@€?xЙZ€?@@€?зЖl\€?@@€?:х•]€?@@€?П^€?р@€?vfa€?@@€?Єb€?@@€?ЩтBd€?@@€?­sh€?@@€?иУнp€?@@€?­:яs€?@@МTЎt@@€?Ыnmu€?@@€?­ w€?@@€?ЪяГx€?@@€?Јy€?@@€?ї=ёz€?р@€?НšC}€?@@€?лЮС~€?€?€?/у+€?€?ѓЕ_!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!TM`‚<@К ИРxЂ#іћ0<)$LЅќL-o ?8p`; ˜F;>Ž*:ФФ A РD€@@€@МФ 7Ne|“ЊСия4KbyЇОеь1H_vЄЛвщ  . E \ s Š Ё И Я ц §  + B Y p ‡ ž Е Ь у њ  ( ? V m „ › В Щ р ї  % < S j  ˜ Џ Ц н є " 9 P g ~ • Ќ У к ё 6Md{’ЉРзю3JaxІНды0G^uŒЃКбшџ-D[r‰ ЗЮхќ*AXo†ДЫтљ'>UlƒšБШпі $;Ri€—ЎХмѓ !8Of}”ЋТй№5Lcz‘ЈПжэ2I`wŽЅ`A€?A€?@A€?€@€?Р@€?Р@€? @€? @€?B€?A€?јA€?pA€?A€?0A€?р@€?0A0A0A'€A€?) A A A+A€?, @€?- A€?. @€?/Р@€?0 @€?1PA€?2@A€?30A€?6р@€?7 A€?8 @€?9A€?:р@€?;Р@€?<A€?@Р@€?A @€?C A€?Dр@€?E€@€?G @€?HиA€?IР@Р@Р@K @€?NAAAR€@€?U€@€?Z@A€?[ @€?\р@€?]Р@€?^A€?_ A€?`Р@€?aA€?b@€?h €?@@€?Z=@€?щiЧ @€?L˜№0A€?vЂ%€?€?…МфР@€?ЏЦ @€?ОриР@€?Эњ—€?€?їЭA€?!@@€?0)С A€?Z3і€@€?9K@@€?iMЕA€?“Wъ@@@@@ЂqЉ @@@€? в @@€?К‘ A@€?†z р@€?•9р@€?П&nР@€?јJb€@€?нZь @@@Р?y­ @@@мл2€?€?'Р@€?$ц@@€?Рl@@@@@@2Еы€?€?kйп@@@@@@Є§г€@€?ь;‡@@@@OjА€?€?^„o@@€?ˆŽЄ @€?—ЈcPA€?њжŒ Р@€? ёK!A€?3ћ€!€@€?B@"A€?lu" @€?{94#р@€?ЅCi#Р@€?Д]($Р@€?оg]$€?€?Уwч$р@€?э%€@@@@@&І&ьB@@€?бэ(€@@@C[е*€?€?me +A€?|Щ+€?€?€?п­ђ,@@@Qік.€@€?`š/@@@У>У0€A€?вX‚1@@€?nЋŸ3 A€?}Х^4@@@@@Œп5€?€?рѓ‡5 @€?Х6€?@@@@|6€@€?ў'7р@@@Р?aV/8€?€?‹`d8A€?ppю8@€?Ф„X9ЈA€?гž:@@€?€?тИж:pA@€?TП< A€?~ є<@@@с9>pA€?ЦIЇ>A€?№Sм>@@€?^?pA@@€?8’@@@@ŒІљ@€?€?ЖА.AР@€?qЖƒA€?@@яд"BР@@@Р? ЁC€@€?7жC@€?€?p7ЪD€@@@€?Иu}F@€?тВF@@@€?*ОeH@@@€?œNJ@@€?€?№ИJ A@@Р?O6L@@@€?›‡”M @@€?ЙЛO@@€?уХGOР@€? а|Oр@€?ъ;P @€?FєpP@@@@eQ @€?d(яQ€@@@@@ИPg~•ЌУкё€?€?€?€?€?€?€?€?€?€?€?€?€?€? €?€? €?€?y€?€?€?{€?€?€?}€?@€?єЌ`€ <Й`Q"нk{q<<|Щ+$­[šU“ зЃ=‰ˆˆ= з#= з#= і(М@ШA@€?ьQ8@*?Ti~“ЈНвчќ€?€?€?€?€?@€? €? €?€?€?H€@€@@@@@@‚@ƒ@‡0 "0<ЦIЇ> "0<8’@ "0<8’@ "0Wp‰ЂЛдэ8Qjƒ@A€?A €@€?B A€?D ˆA€?D2 A€?DBRР@€?DC €@€?E œB€?EOB@@€?F @@€?F_U@€?G @A€?I ˜A€?J €@€?K ИA€?L B€?LNGр@€?LO PA€?LR Р@€?LS A€?O шA€?O9TE€?P @@€?R  @€?SFL€A€?SOP€A€?SRV˜A€?T A€?V џƒ((-A D 2 BREOBF I J L NGR O 9TP SOPRVT @Р„  Р‚Р "oР%&(*§Ц!Lј…@ПР†ђЊ?РP@шš@ !ыщ7œщ?ъЦ!Lрh@ЧР†ђЊ?€@—єє:ќ@y 0<уўkC$2о–#LЬ Ь Ы= ==6е9з б9Р8gAРEР@€@qŽ@НЊ’šш3Le~—АЩтћ-F_x‘ЊУмѕ'@Yr‹Є@A€?A €@€?B A€?D ˆA€?D2 A€?DBRР@€?DC €@€?E œB€?EOBІB€?EOD@@€?F @@€?F_U@€?G @A€?I ˜A€?J €@€?K ИA€?L B€?LNGр@€?LO PA€?LR Р@€?LS A€?O шA€?O9TE€?P @@€?R  @€?SFL€A€?SOP€A€?SRV˜A€?T A€?V џ‡((*A D 2 BREOBI J L NGO S O9TP SOPRVT @РР „  Р‚‚nР"#%'ЁМ"L˜Ѓ@`ЙЇЁ?•Щ!L˜Ѓ@Ь `ЙЇЁ?˜“Р˜“Р€Щ!LђЂ@y  $IЂ?РT@Д~Я рЭ?Ь ъЦ!LЧЧUUU?/Ї<ŠЮ;ЯЉЄ;,,мћAGC€@Р@мЋAT\`wŽЅМгъ/F]t‹ЂЙачў,CZqˆŸЖЭфћ)@Wn…œГЪсј&=јA€?џџџџ A€?€A€?PA€? A€?@A€?A€?A€?A€? @€?@@@ @€? @@€? @€? €?€?€?Р@€?€?€?€?€?€?€?€?€?€?@€? @@€?@@€?€@€?@€?@@€?€@€?€@€?€?€? €?€?@€?€?€€?€?€?€?€?€?€?€?€?€?@€?€?@@€?€@€?€?€?€?€?€?€?€?€? @€?@€?€?|“WЧ0<уўkC$П§Ц!LПП6”W=ВХ:XrК:рh€AР/DР@€@ЃС@s%u}˜БЪуќ.G`y’ЋФні(AZ@A€?A €@€?B A€?D ˆA€?D2 Р@€?DC €@€?E @@€?F @@€?F_U@€?G @A€?I ˜A€?J €@€?K ИA€?L р@€?LO PA€?LR Р@€?LS A€?O шA€?O9TD€?P џ- ((A D 2 F I J L R O 9TP @Р‚ Р‚Р ъЦ!Lрh@ЧР†ђЊ?€@—єє:ќ@П Bxtype 0. 44 Dlength0. 00 @prec0. 00 Bscale Fidmajor0`  и  œ\дLќИPРt,H  И t 0 є А p 0 шЌx,р”LИp и˜h$иŒHШ„Dh$рœXаŒŒŒќМx4p,шœXаŒDФь T Ф|8єАјАl(р˜PМhиŒ<|(  њш ћйЗ•sQ/ `‚ <+ ЙpQ"ЭFе‡0<уўkC€$у–#LЬ Ь гn?ћFђ9=6е9з б9xxР8gAРE€@Р@qŽ@ˆpxРзю3JaxІНды0G^uŒЃКбшџ-D[r‰ ЗЮхќ*AXo†ДЫтљ'>UlƒšБШпі $ ; R i € — Ў Х м ѓ ! 8 O f } ” Ћ Т й №   5 L c z ‘ Ј П ж э   2 I ` w Ž Ѕ М г ъ   / F ] t ‹ Ђ Й а ч ў ,CZq€?€?€џџјA€?џџџџаA€?A€?pA€?`A A AAAAAAA @0AЋЊj@ 0Aр@UU@@Р@@@р@33Г?р@ @€? р@јA€?@€?ИA€?X€?Р@€?_€?Р@€?f€? @€?lР@˜A€?€€? A€?•€?ЈA€?Ћ@Р@€?В€? @€?И@0AЭЬŒ?У@€@@Ц@ AnлЖ?Ю€? @ ?г€?р@€?л@ A ?ф@AI’Є?ь€?0A€?јР@р@€?€?ИA€?€?0A€?$€?ИA€?<€?˜A€?P€?\B€?ˆ€?0A€?”€?˜A€?Ј€?иA€?Ф€?0A€?а€?˜A€?ф€?˜A€?јР@р@€?€?0A€? €?˜A€? €?ИA€?8€?˜A€?L€?˜A€?`€?0A€?l€? B€?€?ИA€?Ј€?,B€?д€?р@€?м€?ИA€?є€?ŽB€?<€?pA€?L€?\B€?„€?\B€?М€?ИA€?д€?ИA€?ьр@˜A€?@0AЋЊъ?€?ЈAр?€?€@@@0AЋЊъ?@Р@š™™?$€?Р@@(€?pA€?8€?р@€?@€?р@€?H€?B€?p€?р@€?x€?ИA€?€?р@€?˜€?р@€? €?р@€?Ј€?\B€?р€?р@€?ш€?B€?€?˜A€?$€?ИA€?<€?ИA€?T€?ИA€?l€?ИA€?„€?ИA€?œ€?ИA€?Д€?ИA€?Ь€?ИA€?ф€?ИA€?ќ€?ИA€?€?ИA€?,€?ИA€?D€?ИA€?\€?ИA€?t€?ИA€?Œ€?ИA€?Є€?ИA€?М€?–B€?€?|B€?H€?|B€?ˆ€?|B€?Ш€??–Щ!L˜Ѓ@Ь x`пH>?˜“Р˜“РЩ!LђЂ@y {РгZ>?РT@Љsп О?Ь 0<уўkC "0<уўkC$H€>hЂЄ+­0 0 AND lower(@OptionName) <> @OPTtextinrow) begin raiserror(15002,-1,-1,'sp_tableoption') RETURN @@ERROR end -- VALIDATE OPTION VALUE SELECT @intOptionValue = CASE WHEN (lower(@OptionValue) in ('1' ,'on' ,'yes' ,'true')) THEN 1 WHEN (lower(@OptionValue) in ('0' ,'off' ,'no' ,'false')) THEN 0 WHEN (lower(@OptionName) = @OPTtextinrow AND ISNUMERIC (@OptionValue) <> 0) THEN convert (int, @OptionValue) ELSE NULL END -- ERROR IF INVALID OPTION NAME OR VALUE IF @intOptionValue IS NULL OR (lower(@OptionName) NOT IN (@OPTpintable, @OPTbulklock, @OPTtextinrow)) begin raiserror(15600,-1,-1, 'sp_tableoption') RETURN @@ERROR end -- VERIFY WE HAVE A USER-TABLE BY THIS NAME IN THE DATABASE SELECT @TabId = id, @uid = uid FROM sysobjects WHERE id = OBJECT_ID(@TableNamePattern, 'local') AND xtype = 'U' IF @TabId IS NULL begin raiserror(15388,-1,-1,@TableNamePattern) RETURN @@ERROR end -- Check standard Table-DDL permissions IF not (is_member('db_owner') = 1) and not (is_member('db_ddladmin') = 1) and not (is_member(user_name(@uid)) = 1) begin raiserror(15247,-1,-1) RETURN @@ERROR end -- HANDLE TEXT-IN-ROW option IF (lower(@OptionName) = @OPTtextinrow) begin -- Set according to value given (Note: dbcc no_textptr does proper schema-locking) if (@intOptionValue != 0 and @intOptionValue != 1 and (@intOptionValue < 24 or @intOptionValue > 7000)) BEGIN -- Invalid value raiserror (15112,-1,-1) RETURN @@ERROR END -- invalidate inrow text pointer for the table -- dbcc invalidate_textptr_objid(@TabId) BEGIN TRAN DBCC LOCKOBJECTSCHEMA(@TableNamePattern) dbcc no_textptr(@TabId, @intOptionValue) COMMIT TRAN end -- HANDLE TABLOCK-ON-BCP option ELSE IF (lower(@OptionName) = @OPTbulklock) BEGIN -- Make required change IF ObjectProperty(@TabId, 'TableIsLockedOnBulkLoad') <> @intOptionValue BEGIN BEGIN TRAN DBCC LOCKOBJECTSCHEMA(@TableNamePattern) UPDATE sysobjects SET status = (status & ~134217728) | (134217728 * @intOptionValue) WHERE id = @TabId COMMIT TRAN END END -- HANDLE PIN-TABLE option ELSE IF (lower(@OptionName) = @OPTpintable) BEGIN -- ADDITIONAL SECURITY: Must be sysadmin to pin pages IF (not (is_srvrolemember('sysadmin') = 1)) begin raiserror(15247,-1,-1) RETURN @@ERROR end -- Make change if required IF ObjectProperty(@TabId, 'TableIsPinned') <> @intOptionValue BEGIN IF @intOptionValue = 1 DBCC pintable(@CurrentDBId, @TabId) ELSE DBCC unpintable(@CurrentDBId, @TabId) END END -- Return success Return 0 --sp_tableoption <9K н8create proc sp_readerrorlog( @p1 int = 0, @p2 varchar(255) = NULL, @p3 varchar(255) = NULL, @p4 varchar(255) = NULL) as begin IF (not is_srvrolemember(N'securityadmin') = 1) begin raiserror(15003,-1,-1, N'securityadmin') return (1) end if (@p1 = 0) exec master.dbo.xp_readerrorlog else if (@p2 is NULL) exec master.dbo.xp_readerrorlog @p1 else exec master.dbo.xp_readerrorlog @p1,@p2,@p3,@p4 end <iMЕ І8create procedure sp_procoption @ProcName nvarchar(776) ,@OptionName varchar(35) ,@OptionValue varchar(12) as -- DECLARE VARIABLES DECLARE @tabid int ,@uid int ,@intOptionValue int ,@dbname sysname -- DISALLOW USER TRANSACTION -- Set nocount on set implicit_transactions off IF @@trancount > 0 begin raiserror(15002,-1,-1,'sp_procoption') RETURN @@ERROR end -- VALIDATE OPTION NAME AND VALUE SELECT @intOptionValue = CASE WHEN (lower(@OptionValue) in ('1' ,'on' ,'yes' ,'true')) THEN 1 WHEN (lower(@OptionValue) in ('0' ,'off' ,'no' ,'false')) THEN 0 ELSE NULL END IF @intOptionValue IS NULL OR @OptionName IS NULL OR lower(@OptionName) <> 'startup' BEGIN raiserror(15600,-1,-1, 'sp_procoption') RETURN @@ERROR END -- MUST BE sysadmin (Startup-procs run as sysadmin) -- IF is_srvrolemember('sysadmin') = 0 BEGIN raiserror(15247,-1,-1) RETURN @@ERROR END -- RESOLVE GIVEN OBJECT NAME -- SELECT @tabid = id, @uid = uid FROM sysobjects WHERE id = OBJECT_ID(@ProcName, 'local') AND xtype IN ('X','P') -- VALID OBJECT IN DATABASE? -- IF @tabid IS NULL BEGIN SELECT @dbname = db_name() raiserror(15009,-1,-1 ,@ProcName, @dbname) RETURN @@ERROR END -- STARTUP PROC MUST BE OWNED BY DBO IN MASTER -- IF (db_id() <> 1 OR @uid <> 1) BEGIN raiserror(15398,-1,-1) RETURN @@ERROR END -- PROC CANNOT HAVE PARAMETERS -- IF EXISTS ( SELECT * FROM syscolumns WHERE id = @tabid ) BEGIN raiserror(15399,-1, -1) RETURN @@ERROR END -- Do the work BEGIN TRAN DBCC LockObjectSchema(@ProcName) UPDATE sysobjects SET status = (status & ~2) | (2 * @intOptionValue) WHERE id = @tabid -- Set Config option for startup procs UPDATE master.dbo.sysconfigures SET value = CASE WHEN EXISTS (SELECT * FROM sysobjects WHERE xtype IN ('X','P') AND ObjectProperty(id, 'ExecIsStartup') = 1) THEN 1 ELSE 0 END WHERE config = 1547 -- If no error, commit and reconfigure IF (@@error <> 0) BEGIN ROLLBACK TRAN RETURN 1 END COMMIT TRAN RECONFIGURE WITH OVERRIDE -- RETURN SUCCESS RETURN 0 -- sp_procoption u˜ `<)ЫЉHDQ"ше<L˜№ Ї 8create procedure sp_processmail --- 1996/06/19 17:30 @subject varchar(255)=NULL, @filetype varchar(3)='txt', @separator varchar(3)='tab', @set_user varchar(132)='guest', @dbuse varchar(132)='master' as declare @status int declare @msg_id varchar(94) declare @originator varchar(255) declare @cc_list varchar(255) declare @msgsubject varchar(255) declare @query varchar(8000) declare @messages int declare @mapifailure int declare @resultmsg varchar(80) declare @filename varchar(12) declare @current_msg varchar(94) select @messages=0 select @mapifailure=0 if @separator='tab' select @separator=CHAR(9) /* get first message id */ exec @status = master.dbo.xp_findnextmsg @msg_id=@msg_id output, @unread_only='true' if @status <> 0 select @mapifailure=1 while (@mapifailure=0) begin if @msg_id is null break if @msg_id = '' break exec @status = master.dbo.xp_readmail @msg_id=@msg_id, @originator=@originator output, @cc_list=@cc_list output, @subject=@msgsubject output, @message=@query output, @peek='true', @suppress_attach='true' if @status <> 0 begin select @mapifailure=1 break end /* get new message id before processing & deleting current */ select @current_msg=@msg_id exec @status = master.dbo.xp_findnextmsg @msg_id=@msg_id output, @unread_only='true' if @status <> 0 begin select @mapifailure=1 end if ((@subject IS NULL) OR (@subject=@msgsubject)) begin /* generate random filename */ select @filename='SQL' + convert(varchar,ROUND(RAND()*100000,0)) + '.' + @filetype exec @status = master.dbo.xp_sendmail @recipients=@originator, @copy_recipients=@cc_list, @message=@query, @query=@query, @subject='Query Results', @separator=@separator, @width=256, @attachments=@filename, @attach_results='true', @no_output='false', @echo_error='true', @set_user=@set_user, @dbuse=@dbuse if @status <> 0 begin select @mapifailure=1 break end select @messages=@messages+1 exec master.dbo.xp_deletemail @current_msg end /* end of xp_sendmail block */ end /* end of xp_findnextmsg loop */ /* finished examining the contents of inbox; now send results */ if @mapifailure=1 begin raiserror(15079,-1,-1,@messages) return(1) end else return(0) -- sp_processmail <…Мф \8create procedure sp_recompile @objname nvarchar(776) as -- do sets and declares Set nocount on declare @objid int, @curdbname sysname -- CHECK VALIDITY OF OBJECT NAME -- -- (1) Must exist in current database -- (2) Must be a table or an executable object select @objid = object_id(@objname, 'local') if @objid is null OR (ObjectProperty(@objid, 'IsTable') = 0 AND ObjectProperty(@objid, 'IsExecuted') = 0) begin select @curdbname = db_name() raiserror(15009,-1,-1 ,@objname, @curdbname) return @@error end -- CHECK PERMISSION -- if (is_member('db_owner') = 0) AND (is_member('db_ddladmin') = 0) AND (is_member(user_name(ObjectProperty(@objid, 'ownerid'))) = 0) begin raiserror(15247,-1,-1) return @@error end -- BUMP SCHEMA FOR RECOMPILE -- DBCC LockObjectSchema(@objname) if @@error <> 0 return (1) -- TH-TH-TH-THAT'S IT! raiserror(15070,-1,-1,@objname) return (0) -- sp_recompile <Ори ; 8create procedure sp_remoteoption --- 1996/04/08 00:00 @remoteserver sysname = NULL, /* server name to change */ @loginame sysname = NULL, /* user's remote name */ @remotename sysname = NULL, /* user's local user name */ @optname varchar(35) = NULL, /* option name to turn on/off */ @optvalue varchar(10) = NULL /* true or false */ as declare @optcount int /* number of options like @optname */ declare @sid varbinary(85) -- NO SERVER NAME? SHOW SETTABLE OPTION ('trusted') if @remoteserver is null begin raiserror(15473,-1,-1) select remotelogin_option = name from master.dbo.spt_values where type = 'F_U' and number = 16 return (0) end -- NO USER XACT -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_remoteoption') return (1) end -- PERMISSIONS -- if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME -- declare @srvid smallint select @srvid = srvid from master.dbo.sysservers where srvname = @remoteserver if @srvid is null begin raiserror(15015,-1,-1,@remoteserver) return (1) end -- VALIDATE @loginame -- if @loginame is not null begin select @sid = sid from master.dbo.syslogins where loginname = @loginame AND isntname = 0 -- cannot remap to NT login if @sid is null begin raiserror(15067,-1,-1,@loginame) return (1) end end -- VALIDATE <@sid, @remotename> PAIR FOR @srvid -- if not exists (select * from master.dbo.sysxlogins where srvid = @srvid and ((@remotename is null AND name is null) OR name = @remotename) and ((@sid is null AND sid is null) OR sid = @sid)) begin raiserror(15185,-1,-1,@remotename,@loginame,@remoteserver) return (1) end -- Check remaining parameters -- if @optname is NULL or lower(@optvalue) not in ('true', 'false') or @optvalue is null begin raiserror(15220,-1,-1) return (1) end -- SEE IF @optname MATCHES THE 'trusted' OPTION -- if not exists (select * from master.dbo.spt_values where name like '%' + @optname + '%' and type = 'F_U' and number = 16) begin raiserror(15221,-1,-1) return (1) end -- Now update sysremotelogins if lower(@optvalue) = 'true' begin update master.dbo.sysxlogins set xstatus = xstatus | 16, xdate1 = getdate() where srvid = @srvid and ((@remotename is null AND name is null) OR name = @remotename) and ((@sid is null AND sid is null) OR sid = @sid) end else -- 'false' begin update master.dbo.sysxlogins set xstatus = xstatus & ~16, xdate1 = getdate() where srvid = @srvid and ((@remotename is null AND name is null) OR name = @remotename) and ((@sid is null AND sid is null) OR sid = @sid) end return (0) -- sp_remoteoption <шъ  #8(0)<Эњ— D€8)h+\#*<їЭ Ц8create procedure sp_invalidate_textptr @TextPtrValue varbinary(16) = 0x00 as dbcc invalidate_textptr(@TextPtrValue) return (0); -- sp_invalidate_textptr l†44l‰…ЌЌЌЌ0 †Ј †8Ъ­Љ$›0 {44дддд@†˜†8єІЌ &&&&&№п™ьЎ… 44 ‰…ssss˜††8Ъ­ЉЙЙЙЙЙ$›0 {44ььььє…† †††№…ш…†ф…D…ь… † …L…0…4…†Сžc `<"кЅB7"тлrx<щiЧ q 8 /* Procedure for 8.0 server */ create proc sp_datatype_info (@data_type int = 0, @ODBCVer tinyint = 2) as declare @mintype int declare @maxtype int if @ODBCVer <> 3 select @ODBCVer = 2 if @data_type = 0 begin select @mintype = -32768 select @maxtype = 32767 end else begin select @mintype = @data_type select @maxtype = @data_type end select convert(sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME collate database_default end) TYPE_NAME, d.DATA_TYPE, convert(int,case when d.DATA_TYPE in (6,7,-150) then d.data_precision /* FLOAT/REAL/sql_variant*/ when d.ss_dtype in (55,63,106,108) and t.xusertype <= 255 then @@max_precision /* DECIMAL/NUMERIC */ else OdbcPrec(t.xtype, t.length, t.xprec) end) "PRECISION", d.LITERAL_PREFIX, d.LITERAL_SUFFIX, e.CREATE_PARAMS, convert(smallint,case when d.AUTO_INCREMENT = 1 then 0 /* IDENTITY*/ else TypeProperty (t.name, 'AllowsNull') end) NULLABLE, d.CASE_SENSITIVE, d.SEARCHABLE, d.UNSIGNED_ATTRIBUTE, d.MONEY, d.AUTO_INCREMENT, convert(sysname,case when t.xusertype > 255 then t.name else d.LOCAL_TYPE_NAME collate database_default end) LOCAL_TYPE_NAME, convert(smallint,case when d.ss_dtype in (55,63,106,108) and t.xusertype > 255 then TypeProperty (t.name, 'Scale') else d.numeric_scale end) MINIMUM_SCALE, convert(smallint,case when d.ss_dtype in (55,63,106,108) and d.AUTO_INCREMENT = 0 and t.xusertype <= 255 then @@max_precision /* DECIMAL/NUMERIC */ when d.ss_dtype in (55,63,106,108) and d.AUTO_INCREMENT = 1 then 0 /* DECIMAL/NUMERIC IDENTITY*/ else TypeProperty (t.name, 'Scale') end) MAXIMUM_SCALE, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, NUM_PREC_RADIX = convert(int,d.RADIX), INTERVAL_PRECISION = convert(smallint,NULL), USERTYPE = t.usertype from master.dbo.spt_datatype_info d INNER JOIN systypes t on d.ss_dtype = t.xtype LEFT OUTER JOIN master.dbo.spt_datatype_info_ext e on t.xusertype = e.user_type and isnull(d.AUTO_INCREMENT,0) = e.AUTO_INCREMENT where d.DATA_TYPE between @mintype and @maxtype and (d.ODBCVer is null or d.ODBCVer = @ODBCVer) and (t.xusertype <= 255 or isnull(d.AUTO_INCREMENT,0) = 0) order by 2, 12, 11, case when t.usertype=18 then 255 else t.usertype end <tќ 8create procedure sp_monitor --- 1996/04/08 00:00 as /* ** Declare variables to be used to hold current monitor values. */ declare @now datetime declare @cpu_busy int declare @io_busy int declare @idle int declare @pack_received int declare @pack_sent int declare @pack_errors int declare @connections int declare @total_read int declare @total_write int declare @total_errors int declare @oldcpu_busy int /* used to see if DataServer has been rebooted */ declare @interval int declare @mspertick int /* milliseconds per tick */ /* ** If we're in a transaction, disallow this since it might make recovery ** impossible. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_monitor') return (1) end /* ** Set @mspertick. This is just used to make the numbers easier to handle ** and avoid overflow. */ select @mspertick = convert(int, @@timeticks / 1000.0) /* ** Get current monitor values. */ select @now = getdate(), @cpu_busy = @@cpu_busy, @io_busy = @@io_busy, @idle = @@idle, @pack_received = @@pack_received, @pack_sent = @@pack_sent, @connections = @@connections, @pack_errors = @@packet_errors, @total_read = @@total_read, @total_write = @@total_write, @total_errors = @@total_errors /* ** Check to see if DataServer has been rebooted. If it has then the ** value of @@cpu_busy will be less than the value of spt_monitor.cpu_busy. ** If it has update spt_monitor. */ select @oldcpu_busy = cpu_busy from master.dbo.spt_monitor if @oldcpu_busy > @cpu_busy begin update master.dbo.spt_monitor set lastrun = @now, cpu_busy = @cpu_busy, io_busy = @io_busy, idle = @idle, pack_received = @pack_received, pack_sent = @pack_sent, connections = @connections, pack_errors = @pack_errors, total_read = @total_read, total_write = @total_write, total_errors = @total_errors end /* ** Now print out old and new monitor values. */ set nocount on select @interval = datediff(ss, lastrun, @now) from master.dbo.spt_monitor /* To prevent a divide by zero error when run for the first ** time after boot up */ if @interval = 0 select @interval = 1 select last_run = lastrun, current_run = @now, seconds = @interval from master.dbo.spt_monitor select cpu_busy = substring(convert(varchar(11), convert(int, ((@cpu_busy * @mspertick) / 1000))) + '(' + convert(varchar(11), convert(int, (((@cpu_busy - cpu_busy) * @mspertick) / 1000))) + ')' + '-' + convert(varchar(11), convert(int, ((((@cpu_busy - cpu_busy) * @mspertick) / 1000) * 100) / @interval)) + '%', 1, 25), io_busy = substring(convert(varchar(11), convert(int, ((@io_busy * @mspertick) / 1000))) + '(' + convert(varchar(11), convert(int, (((@io_busy - io_busy) * @mspertick) / 1000))) + ')' + '-' + convert(varchar(11), convert(int, ((((@io_busy - io_busy) * @mspertick) / 1000) * 100) / @interval)) + '%', 1, 25), idle = substring(convert(varchar(11), convert(int, ((convert(bigint,@idle) * @mspertick) / 1000))) + '(' + convert(varchar(11), convert(int, (((@idle - idle) * @mspertick) / 1000))) + ')' + '-' + convert(varchar(11), convert(int, ((((@idle - idle) * @mspertick) / 1000) * 100) / @interval)) + '%', 1, 25) from master.dbo.spt_monitor select packets_received = substring(convert(varchar(11), @pack_received) + '(' + convert(varchar(11), @pack_received - pack_received) + ')', 1, 25), packets_sent = substring(convert(varchar(11), @pack_sent) + '(' + convert(varchar(11), @pack_sent - pack_sent) + ')', 1, 25), packet_errors = substring(convert(varchar(11), @pack_errors) + '(' + convert(varchar(11), @pack_errors - pack_errors) + ')', 1, 25) from master.dbo.spt_monitor select total_read = substring(convert(varchar(11), @total_read) + '(' + convert(varchar(11), @total_read - total_read) + ')', 1, 19), total_write = substring(convert(varchar(11), @total_write) + '(' + convert(varchar(11), @total_write - total_write) + ')', 1, 19), total_errors = substring(convert(varchar(11), @total_errors) + '(' + convert(varchar(11), @total_errors - total_errors) + ')', 1, 19), connections = substring(convert(varchar(11), @connections) + '(' + convert(varchar(11), @connections - connections) + ')', 1, 18) from master.dbo.spt_monitor /* ** Now update spt_monitor */ update master.dbo.spt_monitor set lastrun = @now, cpu_busy = @cpu_busy, io_busy = @io_busy, idle = @idle, pack_received = @pack_received, pack_sent = @pack_sent, connections = @connections, pack_errors = @pack_errors, total_read = @total_read, total_write = @total_write, total_errors = @total_errors return (0) -- sp_monitor ЯЯЯЯiу <…0=…S$ќG­•†††††ьэ…гггг;;;;ш<…x=…R$ќG­•IIIII…\ю… 4Щ0=…Р=…Q$ќG­•ЉЉЉЉЉЬю…ќќќќ4444x=…>…O$ќG­•44444…<я…aaaa_2Р=…P>…N$ќG­‚ЛЛЛЛЛ †ююююУУУУ>…˜>…M$ќG­‚јјјјјМ†­­­­_ЂP>…р>…L$ќG­‚ёёёёёl†ЄЄЄЄИИИȘ>…x:…K$ќG­wѕѕѕѕѕ…Ќя…    _Ћp?…А:…Ј$ќG­wГГГГГЌя…ццццИ?…(?…Љ$ќG­‚qqqqql†$$$$ў ш(…p?…Њ$ќG­‚vvvvvМ†####б `ƒпt<К^Гшm$q3LЌr<MЊ 4ча4xpstar.dll<†;ž 4ча4xpstar.dll<П_’ 4ча4xpstar.dll<јƒ† 4ча4xpstar.dll<1Јz 4ча4xpstar.dll<jЬn 4ча4xpstar.dll<Ѓ№b 4ча4xpstar.dll<мW 4ча4xpstar.dll<N]?  4ча4xpstar.dll<РЅ'  4ча4xpstar.dll<љЩ  4ча4xpstar.dll<wшК  6ча4xplog70.dll<2ю  4ча4xpstar.dll<А Џ  6ча4xplog70.dll<k 4ча4xpstar.dll<щ0Ѓ 6ча4xplog70.dll<Є6ј 4ча4xpstar.dll<"U— 6ча4xplog70.dll<[y‹ 6ча4xplog70.dll<р 4ча4xpstar.dll<” 6ча4xplog70.dll<OЃд 4ча4xpstar.dll<ЭСs 8ча4sqlmap70.dll<ˆЧШ 4ча4xpstar.dll<цg 8ча4sqlmap70.dll<СыМ 4ча4xpstar.dll<? \ 8ча4sqlmap70.dll<њБ 4ча4xpstar.dll<x.P 8ча4sqlmap70.dll<34Ѕ 4ча4xpstar.dll<БRD 8ча4sqlmap70.dll<lX™ 4ча4xpstar.dll<ъv8 8ча4sqlmap70.dll<Ѕ| 4ча4xpstar.dll<#›, 8ча4sqlmap70.dll<о  4ча4xpstar.dll<\П  8ча4sqlmap70.dll<Хu 4ча4xpstar.dll<•у 8ча4sqlmap70.dll<Pщi 4ча4xpstar.dll<Ю  6ча4xplog70.dll<‰ ^ 4ча4xpstar.dll<,§ Bча4(server internal)<Т1R 4ча4xpstar.dll<@Pё Bча4(server internal)<ћUF 4ча4xpstar.dll<ytх Bча4(server internal)<4z: 4ча4xpstar.dll<˜й Bча4(server internal)<mž. 4ча4xpstar.dll<ыМЭ Bча4(server internal)<ІТ"  4ча4xpstar.dll<$сС  Bча4(server internal)<пц! 4ча4xpstar.dll<]Ж! Bча4(server internal)< " 4ча4xpstar.dll<–)Њ" Bча4(server internal)<ЯMž# Bча4(server internal)<ŠSѓ# 4ча4xpstar.dll<r’$ Bча4(server internal)<A–†% Bча4(server internal)<ќ›л% 4ча4xpstar.dll<zКz& Bча4(server internal)<5РЯ& 4ча4xpstar.dll<Гоn' Bча4(server internal)<nфУ' 4ча4xpstar.dll<ьc( Bча4(server internal)<ЇИ( 4ча4xpstar.dll<%'W) Bча4(server internal)<р,Ќ) 4ча4xpstar.dll<^KK* Bча4(server internal)<Q * 4ча4xpstar.dll<—o?+ Bча4(server internal)<Ru”+ 4ча4xpstar.dll<а“3, Bча4(server internal)<‹™ˆ, 4ча4xpstar.dll< И'- Bча4(server internal)<ФН|- 4ча4xpstar.dll<Bм. Bча4(server internal)<§сp. 4ча4xpstar.dll<{/ Bча4(server internal)<6e/ 4ча4xpstar.dll<Д$0 Bча4(server internal)<o*Y0 4ча4xpstar.dll<эHј0 Bча4(server internal)<ЈNM1 4ча4xpstar.dll<&mь1 Bча4(server internal)<сrA2 4ча4xpstar.dll<_‘р2 Bча4(server internal)<—53 4ча4xpstar.dll<˜Ед3 Bча4(server internal)<бйШ4 Bча4(server internal)< ўМ5 Bча4(server internal)<C"Б6 Bча4(server internal)<|FЅ7 Bча4(server internal)<Еj™8 Bча4(server internal)<юŽ9 Bча4(server internal)<'Г: Bча4(server internal)<`зu; Bча4(server internal)<™ћi< Bча4(server internal)<в^= Bча4(server internal)< DR> Bча4(server internal)<0бX Bча4(server internal)<­ w 4ча4xpstar.dll<Lбx 4ча4xpstar.dll<…ѕy 4ча4xpstar.dll<О§y 4ча4xpstar.dll<ї=ёz 4ча4xpstar.dll<0bх{ 4ча4xpstar.dll<i†й| 4ча4xpstar.dll<ЂЊЭ} 4ча4xpstar.dll<лЮС~ 4ча4xpstar.dll<ѓЕ 4ча4xpstar.dll0ђаV @2 @2 @2 @2 0  Zча4microsoft.sqlserver.types.dll 0J№šf2ўЪ–b.њЦ’PЬŠHФ‚@ўМz8ТŽLжЂ`,ъЖt@ўЪˆTоœh&ђА|:Ф  N и – T о Њ h 4 ђ О | H  в  \  цА|DиЄl8Ь”`(єМˆPфАzFкІp<вœh4Ь˜d0ќШ”`<]ВИD$G—“<Ы5I f8create procedure sp_MS_upd_sysobj_category @pSeqMode integer -- 1 for on, 2 for off as set nocount on -- CHECK PERMISSIONS (MUST BE DBO OR SETUP ADMIN) -- if (not is_member('db_owner')=1) and (not is_srvrolemember('setupadmin')=1) begin raiserror('sp_MS_upd_sysobj_category: Must be db_owner or setupadmin.',0,1) return 1 end -- NOTE: THE IMPLEMENTATION (ie. using trace bit 1717) IS *VERY* LIKELY TO CHANGE, -- SO DONT EVEN *THINK* ABOUT USING THIS TRACE BIT DIRECTLY!!! if @pSeqMode = 1 --- Undocu trace 1717. Now MSShipped bit will be set auto at Create time. dbcc traceon (1717) else if @pSeqMode = 2 dbcc traceoff (1717) else begin raiserror('Unrecognized parm value.',11,35) end return @@error <кO С8 create procedure sp_helpsql @in_command varchar(30) = NULL AS print 'SP_HELPSQL is not supported in this release, please refer to Online Help.' return(0) <Z= 8create procedure sp_db_upgrade @dbname varchar (255) = NULL as declare @currentDb varchar (255) if @dbname is null select @currentDb = db_name () else select @currentDb = @dbname dbcc upgradedb (@currentDb) return 0  Cfkey11l0.44 Cfkey12n0.44 Cfkey13v0.44 Cfkey14d0.44 Cfkey15t0.44 Cfkey16a0.44 Arkey1da0.44 Arkey2am0.44 Arkey3sw0.44 Arkey4bi0.44 Arkey5gu0.44 Arkey6am0.44   Arkey7e0.44!! Arkey8.0.44"" Arkey90.44## Crkey100.44$$ Crkey110.44%% Crkey12e0.44&& Crkey13r0.44'' Crkey14r0.44(( Crkey15e0.44)) Crkey16s0. Dhobtid0.88  Dstatus0.00 Hfillfact0.44 Lmaxnullbit0.88  Fmaxleaf 0.44 Dmaxint0.44 Fminleafs0.44 Dminint0.  FlockresKsrvproduct0.(чч§џ§џа4Oprovidername0.(чч@ќџќџа4Kdatasourceg0.(чч@ћџћџа4Glocationa0.(чч@њџњџа4Sproviderstringa0.(==   Kschemadatea0.44   Eversioncr0.!44   Kisrpcinmapg0.!44   Kishqoutmapl0.!44   Kselfoutmap0.44 Gfkeydbid0.44   Grkeydbid0.44   Afkey1.0.44   Afkey2us0.44   Afkey3na0.44   Afkey4rv0.44 Afkey50.44 Afkey6џа0.44 Afkey70.44 Afkey80.44 Afkey9=0.44 Cfkey100.44 Cfkey11x0.44 Cfkey12l0.44 Cfkey13c0.44 Cfkey140.44 Cfkey150.44 Cfkey160.44 Arkey140.44 Arkey2я0.44 Arkey3.0.44 Arkey4st0.44 Arkey5ra0.44 Arkey6am0.44   Arkey7as0.44!! Arkey8th0.44"" Arkey9rt0.44## Crkey100.44$$ Crkey11l0.44%% Crkey12g0.44&& Crkey130.44'' Crkey14i0.44(( Crkey150.44)) Crkey160.88  ;idm0.44 Aindidcr0.44  Acolid 0.44   Akeyno0.88  Econstid0.88  Cfkeyid0.88    Crkeyid0.44 ?fkey0.44 ?rkey0.44 Akeyno0.44 Imemberuid0.44 Ggroupuid0.88  ;id0.44 =uid0.00  Caction0.00   Mprotecttypeh0.ЅЅ џџџџ Ecolumns0.44   Egrantorio0. 44 ?spidz0. 44 ?kpid0. Dhobtid0.88  Dstatusаˆ@0ш˜˜˜˜˜˜˜„ @ ј Д l ‡Ц`<jЄh;7"@НЉ€<h  78create procedure sp_helpremotelogin --- 1996/04/08 00:00 @remoteserver sysname = NULL, /* remote server name */ @remotename sysname = NULL /* remote login name */ as set nocount on /* ** If no server given, get 'em all. */ if not exists (select * from master.dbo.sysservers s, master.dbo.sysremotelogins r where s.srvid = r.remoteserverid and (@remoteserver is null or s.srvname = @remoteserver )) begin if @remoteserver is null begin raiserror(15200,-1,-1) return (0) end raiserror(15201,-1,-1,@remoteserver) return (1) end /* ** If no remotename given, get 'em all. */ if not exists (select * from master.dbo.sysremotelogins where (@remotename is null or isnull(remoteusername, ' ') = @remotename)) begin if @remotename is null begin raiserror(15202,-1,-1) return (1) end raiserror(15203,-1,-1,@remotename) return (1) end /* ** Check for empty results. */ if not exists (select * from master.dbo.sysremotelogins r, master.dbo.sysservers s where ( @remotename is null or isnull(r.remoteusername, ' ') = @remotename) and s.srvid = r.remoteserverid and (@remoteserver is null or s.srvname = @remoteserver)) begin raiserror(15204,-1,-1,@remotename,@remoteserver) return (1) end /* ** Select the information. */ select server = substring(s.srvname, 1, 22), local_user_name = substring(isnull(suser_sname(r.sid), '** use local name **'), 1, 22), remote_user_name = substring(isnull(r.remoteusername, '** mapped locally **'), 1, 22), options = case datalength(v.name) when null then '' when 0 then '' else substring(v.name, 1, 9) end from master.dbo.sysservers s, master.dbo.sysremotelogins r, master.dbo.spt_values v where s.srvid = r.remoteserverid and (@remoteserver is null or s.srvname = @remoteserver) and (@remotename is null or isnull(r.remoteusername, ' ') = @remotename) and v.type = 'F' and v.number = r.status order by server, remote_user_name return (0) -- sp_helpremotelogin <’U 8-- FOR INTERNAL USE ONLY ... DO NOT DOCUMENT -- -- This procedure sets a bit in sysobjects. This bit has no meaning, various -- groups (starfigther, davinci, replication) use it for different things -- MSQL makes no warranty, express or implied, on what objects will or will -- not have this bit set. Use at your own risk. -- create procedure sp_MS_marksystemobject @objname nvarchar(517) -- 517 is max for two part name as -- pre-stuff -- set nocount on -- CHECK THE OBJECT NAME -- if object_id(@objname, 'local') is null begin raiserror('sp_MS_marksystemobject: Invalid object name ''%ls''',0,1,@objname) return 1 end -- CHECK THE OBJECT OWNER (MUST BE A SYSTEM USER) -- if user_name(ObjectProperty(object_id(@objname, 'local'), 'ownerid')) not in ('dbo','INFORMATION_SCHEMA') begin raiserror('sp_MS_marksystemobject: Object must be owned by a system user.',0,1) return 1 end -- DO THE UPDATE -- begin tran dbcc LockObjectSchema(@objname) update sysobjects set status = status | 0xC0000000 where id = object_id(@objname, 'local') commit tran return @@error -- sp_MS_marksystemobject <Ё+ с8create procedure sp_helpsort --- 1996/04/08 00:00 AS set nocount on /* ** Now display the server default collation name */ declare @servercollation sysname select @servercollation = convert(sysname, serverproperty('collation')) if @servercollation is not NULL BEGIN select 'Server default collation' = description from ::fn_helpcollations() C where @servercollation = C.name END set nocount off return(0) -- sp_helpsort }€?€?€?A€€?иA€?œ@€?€?ž€?ˆA€?А@€?€?В€?PA€?Р@С€?Т@Р@@Ц€?@@€?Ъ@Р@@Ю@Я€?PA€?н@о@€?€?р€?€?€?т@€?€?ф€?@@€?ш@щ@€?€?ы@ь€?ˆA€?ў€?џр@€?€?€?ї€?љ A€?€?€?€? `A€?€?€?g€?€?€?э€?€?€?№€?€?€?ќ€?€?€?џ€? @€?€?€?€?€?@@€? €?  @A@@ B@Р@@pA@PA@€@@@@€@@@@€@ @€?€?€?€?€?€?€?€?€?@€?@@€@@€?€?€?€?€?€? @@€?|“Wз“7šU“ >ЭЬЬ= €@ A@@*?Ti~“@j@l€?Ѕ€?Ї€?­€?Џ€?ч€?яTз cЉ ”‘Љ§š^>и“7šU“ >>ЭЬЬ=d33‹A AffVA@@#Bgˆ­д§0€?#binary0€?char0@%decimal0€?!nchar0@%numeric0€?'nvarchar0€?)varbinary0€?%varcharTи0 cЉ @{Љ§š^TкZіwЉ d‘Љ§š^TлѕіwЉ {Љ§š^TмдHЙќ•ЉЄЇЧЫ`ЋЧ`ЋЧ`МwАyтT’Љ gWШќЎЧАyтTніЖЉ ”‘Љ§š^TооіРЉ јЉ§š^Tп‰іСЉ ьЉ§š^0€?#binary0€?char0@%decimal0€?!nchar0@%numeric0€?'nvarchar0€?)varbinary0€?%varcharTи0 cЉ @{Љ§š^TйЇеlЉ ј/Љ§š^TкZіwЉ d‘Љ§š^TлѕіwЉ {Љ§š^Шt Ьx$а’>.лTЌЏ —`б €"ќǘe$~}No*FМ*sp_helptrigger*.gz$sp_helpuser*Д]($"sp_indexes*~ є<0sp_indexes_rowset*KR[{*sp_indexoption*їЭ8sp_invalidate_textptr*СыМ0sp_IsMBCSLeadByte*%`{.sp_linkedservers*нГV<sp_linkedservers_rowset*„vO|sp_lock*/у+&sp_logdevice*tќ"sp_monitor*’U:sp_MS_marksystemobject*Ы5I@sp_MS_upd_sysobj_category*‰д9'Jsp_MSaddlogin_implicit_ntlogin*ќbЗ1Hsp_MSadduser_implicit_ntlogin*5‡Ћ2Fsp_MScheck_uid_owns_anything*ў'7@sp_MSget_current_activity*5РЯ&,sp_MSgetversion*Љ”т9.sp_MShasdbaccess*ppю8*sp_MSobjsearch*7Lњ7@sp_MSset_current_activity*u\{Rsp_msupg_createcatalogcomputedcols*ЈyNsp_msupg_dosystabcatalogupgrades*<8œzNsp_msupg_dropcatalogcomputedcols*ЪяГxRsp_msupg_recreatecatalogfaketables*Ў€„|Fsp_msupg_recreatesystemviews*­:яsVsp_msupg_removesystemcomputedcolumns*чЄx}<sp_msupg_upgradecatalog*.–v2sp_objectfilegroup*en„ZDsp_oledb_column_constraints*ЛG=`0sp_oledb_database*‚#I_*sp_oledb_defdb*IџT^.sp_oledb_deflang*зЖl\2sp_oledb_indexinfo*єk1a0sp_oledb_language*л`]4sp_oledb_ro_usrname*ŒQ%$sp_password*xgt sp_pkeys*Bм."sp_prepare*Д$0$sp_prepexec*эHј0*sp_prepexecrpc*№Sм>:sp_primary_keys_rowset*&І&*sp_primarykeys* ЁCBsp_procedure_params_rowset*Иu}F6sp_procedures_rowset*L˜№*sp_processmail*iMЕ(sp_procoption*Уwч$:sp_prop_oledb_provider*bœФ@>sp_provider_types_rowset*9K,sp_readerrorlog*…Мф&sp_recompile*в^=*sp_refreshview*іО7~0sp_releaseapplock*Еj™86sp_releaseschemalock*Ори,sp_remoteoption*л• 8sp_remove_tempdb_file*К‘  sp_rename*ЂqЉ $sp_renamedb*C"Б64sp_reset_connection*Mо… *sp_resetstatus*тИж:0sp_resolve_logins*'Г:.sp_resyncexecute*`зu;4sp_resyncexecutesql*юŽ9.sp_resyncprepare*™ћi<6sp_resyncuniquetable*рѓ‡50sp_revokedbaccess*І‰ў+*sp_revokelogin**ОeH2sp_schemata_rowset*—o?+$sp_sdidebug*Б‹h *sp_server_info*Ž2$R,sp_serveroption*^?(sp_setapprole*{ T(sp_setnetname*ˆŽЄ2sp_settriggerorder* DR>0sp_setuserbylogin*1oV&sp_spaceused*•92sp_special_columns*y­ .sp_sproc_columns*j“J"sp_sqlexec*TШšH6sp_srvrolepermission*$ц(sp_statistics*œNJ6sp_statistics_rowset*Я†Т6sp_stored_procedures*жpзSDsp_table_constraints_rowset*zѓž4sp_table_privileges*B@":sp_table_privileges_ex*HЙПUBsp_table_privileges_rowset*КЈWBsp_table_statistics_rowset*-%b2sp_tablecollations*0)С*sp_tableoption*ь;‡ sp_tables*—Јc&sp_tables_ex*ЙЛO8sp_tables_info_rowset*d(яQ>sp_tables_info_rowset_64*O6L.sp_tables_rowset*C[е*$sp_tableswc*ЗіУI*sp_tempdbspace*zКz&,sp_trace_create*^KK*:sp_trace_generateevent*ЩтBd.sp_trace_getdata*Гоn'0sp_trace_setevent*ьc(2sp_trace_setfilter*%'W)2sp_trace_setstatus*ЃЗ>,sp_unbindefault*мл2(sp_unbindrule*&mь1&sp_unprepare*lu"@sp_updateextendedproperty*kйп*sp_updatestats*DhF?.sp_user_counter1*EЎлG0sp_user_counter10*}Œ:@.sp_user_counter2*ЖА.A.sp_user_counter3*яд"B.sp_user_counter4*(љC.sp_user_counter5*a D.sp_user_counter6*šAџD.sp_user_counter7*гeѓE.sp_user_counter8* ŠчF.sp_user_counter9*ћ")0sp_validatelogins*њжŒ @sp_validatepropertyinputs*дЋˆN&sp_validlang*›‡”M&sp_validname*'sp_who*N$sp_who2*r’$:sp_xml_preparedocument&ŽkHF0sp_MSrepl_startup&ЧвštT*јЖt:ТŒV.јжЈvP юЦžrH$ђ Ш ˜ b 4 в Ђ x D Ш œ f 6 ц К | B  № К x N  ъЦЄ†b.ўЬžtDЮ’<іЄVЖv’LђВТl$кš`>ќР’b*аЎŠ` ‘"zЊГш m$Qђ<*A–†%8sp_xml_removedocument*Ыnmu0spt_datatype_info*’Jyt8spt_datatype_info_ext&!,spt_fallback_db&Z3і.spt_fallback_dev&“Wъ.spt_fallback_usg*vЂ%$spt_monitor*|Щ+2spt_provider_types*“av,spt_server_info*ЏЦ"spt_values&(sysallocunits&_$sysasymkeys&;"sysaudacts&:"sysbinobjs&a(sysbinsubobjs&(sysbrickfiles&.syscerts&P(syschildinsts&@"sysclsobjs&)"syscolpars&qЖƒA&syscommittab&R.syscompfragments&G&sysconvgroup& sysdbfrag&sysdbreg&Isysdercv&H sysdesend&8 sysendpts& sysfgfrag& sysfiles1& sysftinds&U"sysftstops&N$sysguidrefs&6$sysidxstats&7 sysiscols&0"syslnklgns&'*syslogshippers&K,sysmultiobjrefs&, sysnsobjs&^,sysobjkeycrypts&<&sysobjvalues& sysowners&sysphfg&(syspriorities&sysprivs&syspru&$sysprufiles&Z sysqnames&C*sysremsvcbinds&/"sysrmtlgns&A(sysrowsetrefs&"sysrowsets& sysrscols&Esysrts&2*sysscalartypes&""sysschobjs&J.syssingleobjrefs&b*syssoftobjrefs&`&syssqlguides&3,systypedsubobjs&-$sysusermsgs&9(syswebmethods&*sysxlgns&D&sysxmitqueue&[,sysxmlcomponent&\$sysxmlfacet&],sysxmlplacement&1 sysxprops&+sysxsrvs*—53*xp_adsirequest*2ю 0xp_availablemedia*wшК $xp_cmdshell*x.P(xp_deletemail*k"xp_dirtree*Т1RDxp_enum_activescriptengines* "<xp_enum_oledb_providers*N]? .xp_enumerrorlogs*”(xp_enumgroups*Є6ј$xp_eventlog*ћUF&xp_fileexist*БRD*xp_findnextmsg*р*xp_fixeddrives*#›,Dxp_get_mapi_default_profile*\П 6xp_get_mapi_profiles*пц!4xp_get_tape_devices*‹™ˆ,6xp_GetAdminGroupName*РЅ' 0xp_getfiledetails*ˆЧШ(xp_getnetname*Ѓ№b8xp_getprotocoldllinfo*4A*(xp_grantlogin*†;žHxp_instance_regaddmultistring*jЬn>xp_instance_regdeletekey*MЊBxp_instance_regdeletevalue*јƒ†<xp_instance_regenumkeys*1Јz@xp_instance_regenumvalues*лЮС~4xp_instance_regread*П_’Nxp_instance_regremovemultistring*ѓЕ6xp_instance_regwrite*Q *&xp_IsNTAdmin*А Џ $xp_logevent*Ю *xp_loginconfig*уХGO&xp_logininfo*§сp.*xp_MSADEnabled*o*Y0,xp_MSADSIObjReg*ЈNM10xp_MSADSIObjRegDB*6e/&xp_MSADSIReg*р,Ќ)(xp_MSFullText*сrA2.xp_MSLocalSystem*ФН|-$xp_MSnt2000*ЇИ((xp_MSplatform*[y‹xp_msver*mž.(xp_msx_enlist*4z:6xp_ntsec_enumdomains*ŠSѓ#:xp_prop_oledb_provider*мW,xp_readerrorlog*ъv8$xp_readmail*О§y6xp_regaddmultistring*ЂЊЭ},xp_regdeletekey*…ѕy0xp_regdeletevalue*0bх{*xp_regenumkeys*i†й|.xp_regenumvalues*­ w"xp_regread*ї=ёz<xp_regremovemultistring*Lбx$xp_regwrite*п­ђ,*xp_revokelogin*? \$xp_sendmail*љЩ 0xp_servicecontrol*Ru”+0xp_SetSQLSecurity*щ0Ѓ"xp_sprintf*Ѕ|8xp_sqlagent_enum_jobs*о <xp_sqlagent_is_starting*34Ѕ4xp_sqlagent_monitor*‰ ^<xp_sqlagent_msx_account*lX™2xp_sqlagent_notify*Хu0xp_sqlagent_param*Pщi@xp_sqlagent_proxy_account*ІТ" $xp_sqlmaint*"U— xp_sscanf*ЭСs&xp_startmail*цg$xp_stopmail*OЃд"xp_subdirs*•у6xp_test_mapi_profile*nфУ',xp_unc_to_drive*ќ›л%:xp_updateFTSSQLAccount* И'-$xp_userlock&ЊкwB$spt_monitor&уўkC"spt_valuesм0„X—š—š0…X—š—š0…X—š—š0…X—š—š0…м0„ЬІ†hhhh˜XH…АЂ†И4Аh­аїїїїїX—šX—š—š0…X—š—š0…X—š—š0…X—š—š0…”І†ЂЂЂЂјXЈ…АЂ†Л4Аh­uuuuuX—šX—š—š0…X—š—š0…X—š—š0…X—š—š0…\І† X X…АЂ†О4Аh­КчччччX—šX—š—š0…X—š—š0…X—š—š0…X—š—š0…$І†ВВВВИ ш0@†АЂ†С4Аh­ИИИИИX—šX—š—š0…X—š—š0… X—š—š0…@кЄ‚^8єД„RтІnLьШžz>юФ”h2тЈrJ,рВŠd4оИŽjDРŒLЮH ш Р  Z & № Ќ ‚ X 2  ц И | 8  ю Ъ š p R 2  т Ж  r J & њдЊ|Z0ідЌŠ`@фМ €Z.тИ–vR. ьЬЌŒlN0ъМ–tR* фМšxT,ˆоЌdZ,ؘ` б"Ь&З8\$H H5*шъ JDF__spt_value__statu__060DEAE8&%Г=FEventNotificationErrorsQueue*љї.MS_sqlctrs_users&нЪ;FQueryNotificationErrorsQueue&TП<@queue_messages_1003150619&#`DJDF__spt_value__statu__4460231C&UGTE8MSreplication_optionsdю№ЊЄ` €"ќǘe$~рв(ї*FМ*sp_helptrigger*.gz$sp_helpuser*Д]($"sp_indexes*~ є<0sp_indexes_rowset*KR[{*sp_indexoption*їЭ8sp_invalidate_textptr*СыМ0sp_IsMBCSLeadByte*%`{.sp_linkedservers*нГV<sp_linkedservers_rowset*„vO|sp_lock*/у+&sp_logdevice*tќ"sp_monitor*’U:sp_MS_marksystemobject*Ы5I@sp_MS_upd_sysobj_category*‰д9'Jsp_MSaddlogin_implicit_ntlogin*ќbЗ1Hsp_MSadduser_implicit_ntlogin*5‡Ћ2Fsp_MScheck_uid_owns_anything*ў'7@sp_MSget_current_activity*5РЯ&,sp_MSgetversion*Љ”т9.sp_MShasdbaccess*ppю8*sp_MSobjsearch*7Lњ7@sp_MSset_current_activity*u\{Rsp_msupg_createcatalogcomputedcols*ЈyNsp_msupg_dosystabcatalogupgrades*<8œzNsp_msupg_dropcatalogcomputedcols*ЪяГxRsp_msupg_recreatecatalogfaketables*Ў€„|Fsp_msupg_recreatesystemviews*­:яsVsp_msupg_removesystemcomputedcolumns*чЄx}<sp_msupg_upgradecatalog*.–v2sp_objectfilegroup*en„ZDsp_oledb_column_constraints*ЛG=`0sp_oledb_database*‚#I_*sp_oledb_defdb*IџT^.sp_oledb_deflang*зЖl\2sp_oledb_indexinfo*єk1a0sp_oledb_language*л`]4sp_oledb_ro_usrname*ŒQ%$sp_password*xgt sp_pkeys*Bм."sp_prepare*Д$0$sp_prepexec*эHј0*sp_prepexecrpc*№Sм>:sp_primary_keys_rowset*&І&*sp_primarykeys* ЁCBsp_procedure_params_rowset*Иu}F6sp_procedures_rowset*L˜№*sp_processmail*iMЕ(sp_procoption*Уwч$:sp_prop_oledb_provider*bœФ@>sp_provider_types_rowset*9K,sp_readerrorlog*…Мф&sp_recompile*в^=*sp_refreshview*іО7~0sp_releaseapplock*Еj™86sp_releaseschemalock*Ори,sp_remoteoption*л• 8sp_remove_tempdb_file*К‘  sp_rename*ЂqЉ $sp_renamedb*C"Б64sp_reset_connection*Mо… *sp_resetstatus*тИж:0sp_resolve_logins*'Г:.sp_resyncexecute*`зu;4sp_resyncexecutesql*юŽ9.sp_resyncprepare*™ћi<6sp_resyncuniquetable*рѓ‡50sp_revokedbaccess*І‰ў+*sp_revokelogin**ОeH2sp_schemata_rowset*—o?+$sp_sdidebug*Б‹h *sp_server_info*Ž2$R,sp_serveroption*^?(sp_setapprole*{ T(sp_setnetname*ˆŽЄ2sp_settriggerorder* DR>0sp_setuserbylogin*1oV&sp_spaceused*•92sp_special_columns*y­ .sp_sproc_columns*j“J"sp_sqlexec*TШšH6sp_srvrolepermission*$ц(sp_statistics*œNJ6sp_statistics_rowset*Я†Т6sp_stored_procedures*жpзSDsp_table_constraints_rowset*zѓž4sp_table_privileges*B@":sp_table_privileges_ex*HЙПUBsp_table_privileges_rowset*КЈWBsp_table_statistics_rowset*-%b2sp_tablecollations*0)С*sp_tableoption*ь;‡ sp_tables*—Јc&sp_tables_ex*ЙЛO8sp_tables_info_rowset*d(яQ>sp_tables_info_rowset_64*O6L.sp_tables_rowset*C[е*$sp_tableswc*ЗіУI*sp_tempdbspace*zКz&,sp_trace_create*^KK*:sp_trace_generateevent*ЩтBd.sp_trace_getdata*Гоn'0sp_trace_setevent*ьc(2sp_trace_setfilter*%'W)2sp_trace_setstatus*ЃЗ>,sp_unbindefault*мл2(sp_unbindrule*&mь1&sp_unprepare*lu"@sp_updateextendedproperty*kйп*sp_updatestats*DhF?.sp_user_counter1*EЎлG0sp_user_counter10*}Œ:@.sp_user_counter2*ЖА.A.sp_user_counter3*яд"B.sp_user_counter4*(љC.sp_user_counter5*a D.sp_user_counter6*šAџD.sp_user_counter7*гeѓE.sp_user_counter8* ŠчF.sp_user_counter9*ћ")0sp_validatelogins*њжŒ @sp_validatepropertyinputs*дЋˆN&sp_validlang*›‡”M&sp_validname*'sp_who*N$sp_who2*r’$:sp_xml_preparedocument&ŽkHF0sp_MSrepl_startup&ЧвštT*јЖt:ТŒV.јжЈvP юЦžrH$ђ Ш ˜ b 4 в Ђ x D Ш œ f 6 ц К | B  № К x N  ъЦЄ†b.ўЬžtDЮ’<іЄVЖv’LђВТl$кš`>ќР’b*аЎŠ` ”"ДjГш m$QїeЁI*A–†%8sp_xml_removedocument*Ыnmu0spt_datatype_info*’Jyt8spt_datatype_info_ext&!,spt_fallback_db&Z3і.spt_fallback_dev&“Wъ.spt_fallback_usg*vЂ%$spt_monitor*|Щ+2spt_provider_types*“av,spt_server_info*ЏЦ"spt_values*—53*xp_adsirequest*2ю 0xp_availablemedia*wшК $xp_cmdshell*x.P(xp_deletemail*k"xp_dirtree*Т1RDxp_enum_activescriptengines* "<xp_enum_oledb_providers*N]? .xp_enumerrorlogs*”(xp_enumgroups*Є6ј$xp_eventlog*ћUF&xp_fileexist*БRD*xp_findnextmsg*р*xp_fixeddrives*#›,Dxp_get_mapi_default_profile*\П 6xp_get_mapi_profiles*пц!4xp_get_tape_devices*‹™ˆ,6xp_GetAdminGroupName*РЅ' 0xp_getfiledetails*ˆЧШ(xp_getnetname*Ѓ№b8xp_getprotocoldllinfo*4A*(xp_grantlogin*†;žHxp_instance_regaddmultistring*jЬn>xp_instance_regdeletekey*MЊBxp_instance_regdeletevalue*јƒ†<xp_instance_regenumkeys*1Јz@xp_instance_regenumvalues*лЮС~4xp_instance_regread*П_’Nxp_instance_regremovemultistring*ѓЕ6xp_instance_regwrite*Q *&xp_IsNTAdmin*А Џ $xp_logevent*Ю *xp_loginconfig*уХGO&xp_logininfo*§сp.*xp_MSADEnabled*o*Y0,xp_MSADSIObjReg*ЈNM10xp_MSADSIObjRegDB*6e/&xp_MSADSIReg*р,Ќ)(xp_MSFullText*сrA2.xp_MSLocalSystem*ФН|-$xp_MSnt2000*ЇИ((xp_MSplatform*[y‹xp_msver*mž.(xp_msx_enlist*4z:6xp_ntsec_enumdomains*ŠSѓ#:xp_prop_oledb_provider*мW,xp_readerrorlog*ъv8$xp_readmail*О§y6xp_regaddmultistring*ЂЊЭ},xp_regdeletekey*…ѕy0xp_regdeletevalue*0bх{*xp_regenumkeys*i†й|.xp_regenumvalues*­ w"xp_regread*ї=ёz<xp_regremovemultistring*Lбx$xp_regwrite*п­ђ,*xp_revokelogin*? \$xp_sendmail*љЩ 0xp_servicecontrol*Ru”+0xp_SetSQLSecurity*щ0Ѓ"xp_sprintf*Ѕ|8xp_sqlagent_enum_jobs*о <xp_sqlagent_is_starting*34Ѕ4xp_sqlagent_monitor*‰ ^<xp_sqlagent_msx_account*lX™2xp_sqlagent_notify*Хu0xp_sqlagent_param*Pщi@xp_sqlagent_proxy_account*ІТ" $xp_sqlmaint*"U— xp_sscanf*ЭСs&xp_startmail*цg$xp_stopmail*OЃд"xp_subdirs*•у6xp_test_mapi_profile*nфУ',xp_unc_to_drive*ќ›л%:xp_updateFTSSQLAccount* И'-$xp_userlock&TП<@queue_messages_1003150619&ЦIЇ>@queue_messages_1035150733&8’@@queue_messages_1067150847&(sysallocunits&_$sysasymkeys&;"sysaudacts&:"sysbinobjs&a(sysbinsubobjs&(sysbrickfiles&.syscerts&P(syschildinsts&@"sysclsobjs&)"syscolpars&qЖƒA&syscommittab&R.syscompfragments&G&sysconvgroup& sysdbfrag&sysdbreg&Isysdercv&H sysdesend&8 sysendpts& sysfgfrag& sysfiles1& sysftinds&U"sysftstops&N$sysguidrefs&6$sysidxstats&7 sysiscols&0"syslnklgns&'*syslogshippers&K,sysmultiobjrefs&, sysnsobjs&^,sysobjkeycrypts&<&sysobjvalues& sysowners&sysphfg&(syspriorities&sysprivs&syspru&$sysprufiles&Z sysqnames&C*sysremsvcbinds&/"sysrmtlgns&A(sysrowsetrefs&"sysrowsets& sysrscols&Esysrts&2*sysscalartypes&""sysschobjs&J.syssingleobjrefs&b*syssoftobjrefs&`&syssqlguides&3,systypedsubobjs&-$sysusermsgs&9(syswebmethods&*sysxlgns&D&sysxmitqueue&[,sysxmlcomponent&\$sysxmlfacet&],sysxmlplacement&1 sysxprops&+sysxsrvs&ЊкwB$spt_monitor&уўkC"spt_valuesББББС„0Й†РЙ†$ќG­:сссссqqФЯƒДДДД_wxЙ†К†$ќG­:пппппЈќ4„ŠŠŠŠРЙ†PК† $ќG­:‹‹‹‹‹ЌИ„ооооР]†К†˜К†$ќG­:,,,,,†\Й„yyyy####PК†рК†ј$ќG­:ЩЩЩЩЩxx К„œœœœ˜К†(Л†я$ќG­:$$МК„[[[[_ЊрК†pЛ†х$ќG­:qqqqq­lЛ„$$$$(Л†ИЛ†у$ќG­:Д.„OOOO˜M†pЛ†З†т$`}Ј_–––––ŒЛ†DЛ†ќК†ДК†lК†$К†мЙ†”Й†LЙ†УУУУooooД„hXМ†œ‡ИУ„XМ†F$ќG­•ЬЬЬЬЬ‡,иƒ™™™™М† М†E$ќG­•лллллœиƒŽŽŽŽXМ†шМ†D$ќG­•† йƒHHHHэЕ  М†0Н†C$ќG­•ŸŸŸŸŸ~~|йƒЪЪЪЪ0ЩƒшМ†xН†B$ќG­•ttttt?ьйƒ!!!!љ‘…0Н†шИ†A$ќG­•ђђђђђ\кƒЇЇЇЇ пƒО†>$ќG­•aaaaaЃ?<лƒ4444HРН†PО†=$ќG­‚‡”7„EEEEО†˜О†<$ќG­‚ррррр­ФЯƒЕЕЕЕPО†рО†;$ќG­‚ЋЋЋЋЋќ4„цК–jD&ўкЎˆ^0фЪЊˆ`>єаЖ˜pT4тТ–lJ*тР €`@ фФžpJ(оР˜pN,р ` ќТ–`>єдАp@в ž b *  и Ј „ Z 6 њ и Њ € P $ ю Ъ ž d .  ш Р œ n F №ФštJ&Ъ|HЬŠLмЄ|LтЌh>юЪЂt8євЊ†V,HоЌ$Z,ؘ` Ѓ"ЄЗ8f$žpD*шъ JDF__spt_value__statu__060DEAE8&%Г=FEventNotificationErrorsQueue*љї.MS_sqlctrs_users&нЪ;FQueryNotificationErrorsQueue&џm›?2ServiceBrokerQueue*Х6:sp_ActiveDirectory_Obj*Œп5:sp_ActiveDirectory_SCP*SЛ)4>sp_ActiveDirectory_Start*П&nTsp_add_data_file_recover_suspect_db*†z Jsp_add_file_recover_suspect_db*јJbRsp_add_log_file_recover_suspect_db*ЕЃН,:sp_add_server_sortinfo*юЧБ->sp_add_server_sortinfo75*R2sp_approlepassword**…AT&sp_attach_db*cЉ5U>sp_attach_single_file_db*2Еы&sp_autostats*fДc2sp_bcp_dbcmptlevel*еёW(sp_bindefault*X$sp_bindrule*$сС *sp_bindsession*~вЯH$sp_blockcnt*^„o$sp_catalogs*`š/2sp_catalogs_rowset*Рl6sp_certify_removable*7жC8sp_change_users_login*p7ЪD.sp_changedbowner*ўюсB*sp_changegroup*тВF6sp_changeobjectowner*aV/8Fsp_check_constbytable_rowset*я G6Dsp_check_constraints_rowset*‡H2sp_check_removable*Љ[ОEDsp_check_removable_sysusers*G:Y(sp_checknames*Џџ=y6sp_column_privileges*{94#<sp_column_privileges_ex*вX‚1Dsp_column_privileges_rowset*“}"sp_columns* ёK!(sp_columns_ex*}Х^40sp_columns_rowset*€^њY&sp_configure*ђІт[4sp_create_removable*–)Њ",sp_createorphan*Є§г*sp_createstats*,§ sp_cursor*­sh*sp_cursor_list*@Pё*sp_cursorclose*˜Ед3.sp_cursorexecute*ytх*sp_cursorfetch*˜й(sp_cursoropen*ыМЭ,sp_cursoroption*_‘р2.sp_cursorprepare*бйШ40sp_cursorprepexec* ўМ52sp_cursorunprepare*н!Ш0sp_cycle_errorlog*йі~&sp_databases*щiЧ.sp_datatype_info*Z=(sp_db_upgrade*)?ЌK*sp_dbcmptlevel*џ4wK>sp_dbfixedrolepermission*№ИJ$sp_dboption*Й‚юZ$sp_dbremove*бэ( sp_ddopen*вц-&sp_defaultdb*Qік.2sp_defaultlanguage*me +&sp_denylogin*+Ыж\"sp_depends*7e2sp_describe_cursor*;++fBsp_describe_cursor_columns*tOg@sp_describe_cursor_tables*dяЪ]&sp_detach_db*П^*sp_diskdefault*‹`d8&sp_dropalias*S‚@*sp_dropapprole*ж7Г_(sp_dropdevice*Ь{о 4sp_dropextendedproc*ЅCi#<sp_dropextendedproperty*oё4<&sp_dropgroup*ф нW8sp_droplinkedsrvlogin*PАE&&sp_droplogin*\Ї`*sp_dropmessage*ЯMž#*sp_droporphans*Єb2sp_dropremotelogin*6Э@;$sp_droprole*ХЪэA0sp_droprolemember*U0Q(sp_dropserver*У>У06sp_dropsrvrolemember*H€›a$sp_droptype*|6$sp_dropuser*Q/џ"<sp_enum_oledb_providers*‡3 .sp_enumerrorlogs*нZь$sp_eventlog*{/"sp_execute*а“3,(sp_executesql*bc L@sp_fallback_MS_sel_fb_svr*OjА$sp_fixindex*Эњ—sp_fkeys*гž::sp_foreign_keys_rowset*э%*sp_foreignkeys*Шœ­[4sp_fulltext_catalog*:х•]2sp_fulltext_column*xЙZ6sp_fulltext_database*0бX4sp_fulltext_getdata*VTХY4sp_fulltext_service*СЁ\0sp_fulltext_table*НšC}(sp_getapplock*]Ж!,sp_getbindtoken*њБ0sp_GetMBCSCharLen*|FЅ7.sp_getschemalock*nЋŸ3.sp_grantdbaccess*Тј-((sp_grantlogin*gСŠwsp_help*s Š^@sp_help_fulltext_catalogs*Ќ-~_Nsp_help_fulltext_catalogs_cursor*WšZb>sp_help_fulltext_columns*ОNcLsp_help_fulltext_columns_cursor*хQr`<sp_help_fulltext_tables*vfaJsp_help_fulltext_tables_cursor*КШƒc0sp_helpconstraint*-Wn sp_helpdb*ЦƒJ2sp_helpdbfixedrole*f{ѕn(sp_helpdevice*>ФЦ 4sp_helpextendedproc*ŸŸщo$sp_helpfile*иУнp.sp_helpfilegroup*шбq&sp_helpgroup*МTЎt&sp_helpindex*œЭ)V,sp_helplanguage*rУєU8sp_helplinkedsrvlogin*J Цr"sp_helplog*ƒ0Кs(sp_helplogins*ЊЁSN*sp_helpntgroup*h 2sp_helpremotelogin*q}_M$sp_helprole*8YkL0sp_helprolemember* х~x(sp_helprotect*9ŸU(sp_helpserver*Ё+$sp_helpsort*кO"sp_helpsql*ЄІG*sp_helpsrvrole*ьŽI6sp_helpsrvrolemember*ѕxЂu&sp_helpstats*й sy$sp_helptext&#`DJDF__spt_value__statu__4460231C&UGTE8MSreplication_optionsўиЂxV2 тВŽ\2 шА„^8 цВŠX8О‚6јЊjN&јЪšnFтЎxFшЎl,тОT0 жЎ~Z(ўдЎvPрИŽh>и–dBъФЄ€\єЬžxHц И Œ d : т И ˜ n B  ш И  n * ю И  L  ж  Z 0  Ъ”b>№ЬЄrLшЖŠh<цР’p@єОŒh.ќдАr8цœH а–dl№Њ"` "ф–ь)&бBqueue_messages_1035150733&,sp_helptrigger&:sp_xml_removedocument37eъ WšZbыгž:ьИu}FэxДŒШ,м кЎl` "(в–€&,sp_helptrigger&:sp_xml_removedocument˜l` "E­–.С{apЭСszRu”+y|FЅ7f*ОeHxЫnmuoyЈy Ў€„| Ў€„| Ў€„| Yэ` Yэ`Yэ`Yэ`Yэ`’U ’U >ФЦ >ФЦ >ФЦ )?ЌK)?ЌKcЉ5UеёW еёWеёWXXG:YG:YG:Y+Ыж\+Ыж\+Ыж\+Ыж\H€›aH€›aH€›aH€›aКШƒc КШƒcКШƒcКШƒc.–v.–vgСŠwgСŠwgСŠwgСŠwgСŠw й syй syKR[{KR[{KR[{0)С0)С0)С 0)С iMЕiMЕiMЕ iMЕ К‘ К‘ К‘  К‘  К‘  К‘  К‘  К‘ 1oV1oV1oV1oV1oV 1oV 1oV ЃЗ>ЃЗ>ЃЗ> мл2мл2мл2мл22Еы 2Еы 2Еы 2Еы 2Еы2ЕыkйпkйпkйпЄ§гЄ§гЄ§гЄ§гЄ§гЄ§гЄ§гFМFМFМ FМFМOjАOjАOjАOjАOjАOjАˆŽЄ ˆŽЄˆŽЄˆŽЄ ˆŽЄ С˜ С˜С˜С˜С˜С˜њжŒ  њжŒ њжŒ њжŒ њжŒ 5‡Ћ25‡Ћ25‡Ћ2Љ[ОE тВF тВF тВFтВFxЙZ xЙZ xЙZ Шœ­[ Шœ­[ Шœ­[Шœ­[ СЁ\ СЁ\ СЁ\ :х•] :х•] s Š^s Š^ Ќ-~_Ќ-~_ хQr` хQr`хQr`хQr`vfa vfavfavfaWšZbWšZbWšZbОNcОNcОNcЏџ=yЏџ=y“}“}“}“}xgt xgt xgt xgt xgt xgt xgt •9•9•9•9y­ y­ y­ y­ $ц$цЯ†ТЯ†ТЯ†ТЯ†Тzѓžzѓžzѓžь;‡ь;‡ь;‡ь;‡вX‚1вX‚1вX‚1вX‚1вX‚1вX‚1вX‚1вX‚1}Х^4}Х^4}Х^4}Х^5}Х^4}Х^4}Х^4}Х^4я G6я G6я G6я G6я G6я G6я G6я G6aV/8aV/8 aV/8aV/8aV/8aV/8aV/8 aV/8aV/8aV/8гž:гž:гž:гž:гž:гž:гž:гž:гž:~ є<~ є<~ є<~ є<~ є<~ є<~ є<~ є<№Sм>№Sм>№Sм>№Sм>№Sм>№Sм>№Sм>№Sм>№Sм>№Sм>№Sм>№Sм> ЁC ЁC ЁC ЁC ЁC ЁC ЁC ЁCИu}FИu}F Иu}FИu}FИu}EИu}FИu}F Иu}FИu}FИu}F*ОeHœNJœNJœNJœNJœNJœNJœNJœNJO6LO6L O6LO6LO6LO6LO6L O6LO6LO6LЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOђпPђпP ђпPђпPђпPЙЛO  € ˜ P h ` x  (@XpИаh8P ј(@`xPh€˜ 8Ph€№ 8и№(@РЈрјРиШh€А˜8P`xи№ xЈ0H`xЈРашpˆ И@X(р ј 0H`˜ Ш А 8 € P h №  аш ИXpˆ@(@XpАPШhр€ј˜и`№x Ј8Р( И0аHшˆ Р Ј и ˜(А@ШШШШШШXрpјx 8иP№h€ xИ0аЈHшР`Xјpˆ( @Аh Ш€8р˜PЈ0РHи`№xаpшˆ ИА(Ш@рXјH 0 ` P№h€ ˜8И а ш  А  Ш р ј 8 Ј и № Р  иЈР  0 H H`xИашˆ ш0јШрА€˜Xpˆ и№ШјрЈ0HРАШрИаЂ—Œvk` џZ<іИрМ“‹^Ђ­8 ФœО`p< ­hгЮУ№„Ы5IщiЧL˜№0)Сxgt   в  †z •91oVЃЗ>мл2$цN$‡H2ЕыЄ§гџь;‡ўOjА§њжŒ ќ3ћ€!ћоg]$њ&І&љбэ(јбэ(ябэ( юC[е*эюЧБ-ьŠЯ/ывX‚1ъвX‚1щnЋŸ3ш}Х^4ч}Х^4цЇЯ“4хŒп5фрѓ‡5уХ6тя G6сRкŒІљ@йўюсBи ЁCз7жCжp7ЪDеИu}Fд~вЯHг)?ЌKв8YkLбуХGOаъ;PŸU0QžŽ2$RжpзSœ*…AT›HЙПUšœЭ)V™еёW˜КЈW—X–VTХY•€^њY”en„Z“зЖl\’П^‘\Ї`WšZbОNcŽ-Wnf{ѕnŒшбq‹ѕxЂuŠgСŠw‰ЪяГxˆй sy‡.gz†KR[{…“}„чЄx}ƒMЊп<‚<<1<0<<"<"<*<2<6<7<85ФЦ љЩ Mо… wшК 2ю †z А Џ k •9 П&n щ0Ѓ Є6ј јJb "U— нZь 1oV [y‹ р j“J ” OЃд y­  ЃЗ> ЭСs ˆЧШ мл2 цg СыМ ' ? \ њБ $ц N$ x.P 34Ѕ ‡H БRD lX™ Рl ъv8 Ѕ| Я†Т љї #›, о  2Еы \П  Хu kйп •у Pщi zѓž Є§г Ю  ‰ ^ н!Ш ,§ Т1R ь;‡ FМ @Pё ћUF %`{ OjА ytх 4z: ^„o ˆŽЄ ˜й mž. —Јc ыМЭ ІТ" њжŒ $сС пц!  ёK! 3ћ€! ]Ж!  " B@" lu" –)Њ" Q/џ" {94# ЅCi# ЯMž# ŠSѓ# Д]($ оg]$ r’$ Уwч$ э% ŒQ% A–†% ќ›л% &І& PАE& zКz& 5РЯ& ‰д9' Гоn' nфУ' Тј-( ьc( ЇИ( бэ( ћ") %'W) р,Ќ) 4A* ^KK* Q * C[е* me + —o?+ Ru”+ |Щ+ І‰ў+ а“3, ‹™ˆ, ЕЃН, п­ђ,  И'- ФН|- юЧБ- вц- Bм. §сp. Qік. {/ 6e/ `š/ ŠЯ/ Д$0 o*Y0 У>У0 эHј0 ЈNM1 вX‚1 ќbЗ1 &mь1 сrA2 5‡Ћ2 _‘р2 —53 nЋŸ3 ˜Ед3 SЛ)4 }Х^4 ЇЯ“4 бйШ4 Œп5 рѓ‡5  ўМ5 Х6 я G6 |6 C"Б6 ў'7 R  DR> №Sм> ^? DhF?џm›? S‚@ }Œ:@ bœФ@ ŒІљ@ ЖА.AqЖƒA ХЪэA яд"B ўюсB (љC  ЁC 7жC a D p7ЪD šAџD Љ[ОE гeѓE Иu}F тВF  ŠчF ЄІG EЎлG *ОeH TШšH ~вЯH ьŽI ЗіУI œNJ ЦƒJ №ИJ џ4wK )?ЌK O6L 8YkL bc L q}_M ›‡”M ЊЁSN дЋˆN ЙЛO уХGO  а|O ъ;P FєpP U0Q eQ d(яQ Ž2$R Иџm›?8’@ЊкwBуўkCуўkC#`DUGTEŽkHFЧ4*  ј ю ф к а Ц М В Ј ž ” Š € v l b X N D : 0 &    ў є ъ р ж Ь Т И Ў Є š  † | r h ^ T J @ 6 †, " |   њ № hц м ^в Ш О Д Њ   – Œ ‚ x n d Z P F < 2 (   і ь т и Ю Ф К А І œ ’ ˆ ~ t j ` V L B 8 . $    ќ ђ ш о д Ъ Р Ж Ќ Ђ ˜ Ž „ z p f \ R H > 4 *   јюфкаЦМВЈž”Š€vlbXND:0&ўєържЬТИЎЄš†|rh^TJ@6,"њ№цмвШОДЊ –Œ‚xndZPF<2( іьтиЮФКАІœ’ˆ~tj`VLB8.$ќђшодЪРЖЌЂ˜Ž„zpf\RH>4*  јюфкаЦМВЈž”Š€vlbXND:0&ўєържЬТИЎЄš†|rh^TJ@6,"њ№цмвШОДЊ –Œ‚xndZPF<2( іьтиЮФКАІœ’ˆ~tj` Z"і#–€^б8дО` Z"і$–И ^8~О` Z"і%–р^{zyxof8@О`' 0™)ўа&Г d$™sЦb:бэ(@p3:бэ(@p3:бэ(@p3:бэ(@p3:бэ( @p3:бэ( @p3:бэ( @p3:бэ( @p3:бэ( @p3:9K@p4:нZь@p4:бэ( @p4:бэ(@p4:бэ( @p4:бэ(@p4:бэ(@p4:бэ(@p4:бэ( @p4:бэ( @p4:бэ( @p4:бэ( @p5:бэ( @p5:бэ( @p5:бэ( @p5:бэ( @p5:бэ( @p5:бэ( @p6:бэ( @p6:бэ( @p6:бэ( @p6:бэ( @p7:бэ(@p7:ё`MS&@parameter: ЁC0@parameter_name: ЁC0@parameter_name:ё`MS2@parameter_value:оg]$ @passwd:Ј)=$@password:^?$@password:7жC$@Password:Шœ­[@path: х~x0@permissionarea:bc L4@pFallbackSvrName:FєpP,@physicalname:cЉ5U$@physname:ИУ0$@rolename:Ф„X9$@rolename:6Э@;$@rolename:oё4<$@rolename:Ј)=$@rolename:с9>$@rolename:^?$@rolename:S‚@$@rolename:ŒІљ@$@rolename:ХЪэA$@rolename:ЦƒJ$@rolename:џ4wK$@rolename:8YkL$@rolename:q}_M$@rolename:бэ(@rows:бэ(@rows:бэ(@rows:бэ(@rows:бэ(@rows:бэ(@rows:бэ(@rows:бэ(@rows:бэ( @rows:бэ( @rows:бэ( @rows:бэ( @rows:бэ( @rows:X$@rulename:*ОeH*@schema_name:*ОeH,@schema_owner:•9@scope:бэ(&@scrollopt:бэ(&@scrollopt:бэ(&@scrollopt:бэ(&@scrollopt:бэ(&@scrollopt:бэ(&@scrollopt:бэ(&@scrollopt:бэ(&@scrollopt:бэ( &@scrollopt:бэ( &@scrollopt:бэ( &@scrollopt:бэ( &@scrollopt:бэ( &@scrollopt:ppю8&@searchkey:L˜№&@separator:ъ;P @server:U0Q @server:Ž2$R @server:ЧVS @server:{ T @server:9ŸU @serverfДc рŸи d риќe р!іe рJEъf рƒiоg рМвh рѕБЦi р.жКj рgњЎk р Ѓl рйB—m рg‹n рK‹o р„Џsp рНгgq рії[r р/Ps рh@Dt рЁd8u ркˆ,v р­ w рлЮС~ р9K р‡3  рРЅ'  рk рнZь рр рˆЧШ рСыМ рњБ рТ1R рћUF р4z: рQ/џ" рУwч$ р5РЯ& рnфУ' рЇИ( рр,Ќ) рQ * р‹™ˆ, рФН|- р§сp. рсrA2 рSЛ)4 рŒп5 рХ6 рў'7 р7Lњ7 рppю8 рЉ”т9 рyџџџ р}џџџ рsџџџ рwџџџ рqџџџ р>џџџ р=џџџ р—џџџ рzџџџ р–џџџ рuџџџ рџџџ рxџџџ рtџџџ р~џџџ рvџџџ р{џџџ р6џџџ р/џџџ р.џџџ р5џџџ р2џџџ р<џџџ р,џџџ р4џџџ р?џџџ р@џџџ рrџџџ рcZ^і рјѓ рnлХЧ рВ№4У рoзю рцХЭ рњуBй р^j­Ф рГ+@ї рю–єр р€Pбэ рШ%{й р”oй рaœа раєн рЊ•м рY/3д ршyjр р†їхн р oЊп рar‡н рйˆТ рЪNан рYјšб ргьве рДвчР рnR!Ы рR щУ р“fЬ рKŽdк L x |h<Д №ЈdФ lшфє D\P €јx `$ирH”Œ€а ЌtЄ@РМPАpP0ъФžxR,рК”nH"ќжИŒb>"ъЮВ–z^B& ювЎŠfBњжВŽjF"ўкЖ”lDђ а Ќ ˆ d B  ъ О ’ j B  ђ а І ‚ ` <  є а Ќ ˆ T ь И ~ L  ьМ–`2кВ„R юМŽ`2ўЪ˜tP$№РЄ€\8цЖ†`H0шаИ ˆpX@(јрША˜€hP8 №иРЈx`+ &Е)вФ'Г  d$ЕУ0$@loginame:nЋŸ3$@loginame:ЇЯ“4$@loginame:R @newpwd:DhF?$@newvalue:}Œ:@$@newvalue:ЖА.A$@newvalue:яд"B$@newvalue:(љC$@newvalue:a D$@newvalue:šAџD$@newvalue:гeѓE$@newvalue: ŠчF$@newvalue:EЎлG$@newvalue:КШƒc@nomsg:Є§г*@norecompute:ќbЗ1 @ntname:ЊЁSN @ntname:•9$@nullable:И"@objname:мл2"@objname:њжŒ  "@objname:Х6"@ObjName:тВF"@objname:еёW"@objname:X"@objname:зЖl\"@objname:+Ыж\"@objname:КШƒc"@objname:МTЎt"@objname:ѕxЂu"@objname:gСŠw"@objname:й sy"@objname:К‘ "@objtype:Х6"@ObjType:щiЧ"@ODBCVer:•9"@ODBCVer:y­ "@ODBCVer: ёK!"@ODBCVer:бэ( "@ODBCVer:бэ( "@ODBCVer:бэ("@ODBCVer:бэ( "@ODBCVer:бэ( "@ODBCVer:“}"@ODBCVer:ŒQ%@old:ў'7 @option:уХGO @option:0)С(@OptionName:iMЕ(@OptionName:KR[{(@OptionName:0)С*@OptionValue:iMЕ*@OptionValue:KR[{*@OptionValue:Ори"@optname:№ИJ"@optname:Ž2$R"@optname:9ŸU"@optname:Ори$@optvalue:№ИJ$@optvalue:Ž2$R$@optvalue:ˆŽЄ@order:ИњиЖ”rP. ъШІ„b@ќ к М ” t Z 6  ђ в Ј Š f B  њ ж В Ž j F "  о М š l R 0  р И  h @ $  ьаД˜|`D(цЦЊ‚Z2юЬВf>фОšvR. цТžzV2ъЦЂ~Z6юЪІ‚X.кДŽjFіЮАˆ`1 2y)ќ (З8Q" +IЃ™67 idminor6)idtval6<"imageval6Piname6b&indepclass6b indepdb6J indepid6K indepid6b$indepname6b(indepschema6b(indepserver6J&indepsubid6K&indepsubid6A indexid6indid66indid6H$initiator6I$initiator6I"inseskey6I&inseskeyid6.internalstatus6.internalstatus6"  intprop6, intprop63  intprop66 intprop67 intprop6: intprop6@ intprop6a intprop:vЂ% io_busy6P$ipipename:|Щ+  is_long:|Щ+(is_nullable6.issuer6R itemcnt6[kind6\kind6* lang6I&lastoorder6I*lastoorderfr6. .lastpkeybackup:vЂ% lastrun6,lastupdatelsn6,lastupdatelsn6Ulcid6)length62length63length:Ыnmu length6lgfgid6/lgnid60lgnid6E"lifetime6I"lifetime:|Щ+.literal_prefix:Ыnmu .LITERAL_PREFIX:|Щ+.literal_suffix:Ыnmu .LITERAL_SUFFIX6 lname6 lname66 lobds62local_service_id:|Щ+0local_type_name:Ыnmu0LOCAL_TYPE_NAME6 lockres6',logshippingid:ЏЦlow6Z3іlow6Plsid6“Wъlstart68 maxconn6) "maxinrow6(maxinrowlen6 maxint6  maxleaf6 &maxnullbit6]"maxoccur6  maxsize6 maxsize6TП<&message_id6ЦIЇ>&message_id68’@&message_id6TП<@message_sequence_number6ЦIЇ>@message_sequence_number68’@@message_sequence_number6TП<0message_type_id6ЦIЇ>0message_type_id68’@0message_type_id6minint6 minleaf6]"minoccur6E miraddr6*modate6+modate6/modate60modate6Pmodate6 "modified6"modified6" "modified6,"modified62 "modified6: "modified6@"modified6_"modified6`"modified:ЫnmuMONEY6D msgbody6D&msgbodylen6Dmsgenc6Dmsgid6-$msglangid6D$msgseqnum6D  msgtype6ЊкwB lastrun6ЊкwB io_busy6уўkClow6UGTE,major_version6UGTE,minor_version6UGTE2install_failuresьШЌŽhH, шЦЄ‚`>њ м О   ‚ d D Д"  ф Д „ T  д ” n H "  т Р š z \ 4  ђ ˆд К pЂ Š ^ >  оЌtX*ќЮ ~\@$шЪЌŽtH0ќЮЄ~dJ0ђЪЊ†PfF&цЦІ†f8 рфТžz^B"ќжЎ†bB"мРž€`2 Ѓ)Ф і)З8 Q"$7р&6*sid68 site6 size6size6“Wъsizepg6.snum:Ыnmu,SQL_DATA_TYPE:Ыnmu2SQL_DATETIME_SUB6/srvid60srvid:|Щ+"ss_dtype:Ыnmu"ss_dtype6'ssrv6state6;state6Istate6 status6status6status6status6status6status6status6status6status6status6status6status6status6"status6'status6) status6*status6+status6,status6-status6. status6/status60status62 status63 status66status67status69status6:status6@status6Astatus6Cstatus6D status6Gstatus6Istatus6Jstatus6Kstatus6Nstatus6Pstatus6Rstatus6Ustatus6[ status6\status6]status6^status6`status6astatus6b status:ЏЦstatus6!status6Z3іstatus6TП<status6ЦIЇ>status68’@status6 status26' .statussequence6U&stoplistid6U"stopword6subid61subid63subid67subid6;subid6Nsubid6asubid6<"subobjid6 (svcbrkrguid6D"svccontr6I svcid6["symspace6P$sysdbpath6I sysseq6-text6.&thumbprint6^&thumbprint6_&thumbprint6ti66"tinyprop67$tinyprop167$tinyprop26D&tobrkrinst6Dtosvc:vЂ% *total_errors:vЂ% &total_read:vЂ% (total_write6Rts68tstat6type6type6type6type6"type6*type66type68type6:type6;type6@type6^type:ЏЦtype:|Щ+$type_name:Ыnmu$TYPE_NAME68  typeint:’Jyt"typename6D "unackmfn:|Щ+6unsigned_attribute:Ыnmu6UNSIGNED_ATTRIBUTE6[uriord:’Jyt$user_type6)utype63utype6<"valclass6TП< &validation6ЦIЇ> &validation68’@ &validation6<valnum61value6<value6! version6“Wъ vstart6' 0witnesssequence68"wsdlproc6qЖƒA xdes_id6!$xdttm_ins6Z3і$xdttm_ins6“Wъ$xdttm_ins6!6xdttm_last_ins_upd6Z3і6xdttm_last_ins_upd6“Wъ6xdttm_last_ins_upd6!.xfallback_dbid6Z3і0xfallback_drive6Z3і,xfallback_low6“Wъ2xfallback_vstart6) xmlns6[xsdid6!*xserver_name6Z3і*xserver_name6“Wъ*xserver_name6)xtype62xtype63xtype6ЊкwB &total_read6ЊкwB (total_write6ЊкwB *total_errors6уўkCtype6уўkCstatus6UGTEvalue D‰vvvvш‰X‰Р‰œ x;ЈЕ -----valuexxxx00ˆ‰(‰АБЂкдддддcomment№‰X‰žDx;Ј џџџџџd‰ qˆ€4 ‰ЊЊЊЊ ‰ˆ‰Ÿx;ЈЕ ‰‰‰‰‰commentммммˆр‰№‰  XЁЂFFFFF@џџ<‰ќ‰ ‰ ‰Ёx;Јъ mmmmmsysconfigures8888˜‰р‰ЂXXЁЂЗ–––––@ ^HУУУУр‰ ‰Ѓ(x;Јџ ˜˜˜˜˜Ј‰88 ќ‰ЭЭЭЭ‰˜‰ЄФљІзdddddm1111FP‰р‰Ѕ(x;Јџ ёёёёё088 l‰ЄЄЄЄx‰‰ІФљІзАААААххххP(Р‰P‰Ї(x;Јџ ЭЭЭЭ88 м‰BBBBш‰x‰ЈФљІз+++++~~~~H‰Р‰Љ>АБЂйDefault fill factor percentageШШШШ.‰ш‰Њ(x;Ју ­­­­­(чч<а4Ќ‰<јјјј№‰H‰Ћ<ФљІзхххххDefault fill factor percentageААААpX‰‰ЌHXЁЂWsssssЁФ‰D-‹ ‰š  Рd@&&&&ш‰№‰­px;ЈWцццццt‰Ьˆ‰Д ` Р(‰ @ РџџџџГГГГЈ‰X‰Ў `}Ј_$ннннЄ‰ˆˆˆˆ||||h`ш‰А‰(@Аh­ЮППППП0˜3444fPўЌ0‰|‰ъъъъ`XА‰Ј‰)8№†­ўQQQQQVVVV№‰ш‰Џ$x;Ј[t‰ЖџџџџџџџџџџџџSSSS ‰X‰Ј‰АHx;Ј$ ЅЅЅЅЅD“Ф‰џџџџ" (‰№№№№ш‰№‰Бpx;ЈW’’’’’Д ` Р(‰џџџџЧЧЧЧЈ‰X‰В `}Ј_88888X‰0L>­ ѓѓѓѓѓ6š%ІІІІ@80‰x‰1X$­Ќ†ССССС/†Шщыy?Жdl о?№?№?№?ТЧ b?z?mmmm№‰ш‰Г$x;Ј[§§§§§t‰(‰ЖџџџџџџџџџџџџЈЈЈЈ_ёh‰Ј‰ДTXЁЂ{ ”””””„‰„|€t‰АЫ АЫ СССС0˜˜(‰№‰Е x;ЈЩ ЏЏЏЏЏ|€„0‰  Р(DђжЌ‚X< юТ’d.јТžzV6фЦІкŠnP*оМ „`B жД’rN*Ђі м Т Ј Ž t Z @ & ђ и М І P~ *X x.  ь Ш Є ‚ l F њ р Т ž | ` >  є и М   „ h L 0  шКšМ|^@"цШЊŒnP2іиКœ~`B$шЪЌŽpR4јкМž€bD&ъЬЎrT6њмО ‚dF*ђиЖ”x\*ўфЦЌ’x`3 +•)z\*Г Z$•/*2:Џџ=y*@column_name:“}*@column_name:й sy(@columnname:€^њY(@configname:€^њY*@configvalue:жpзS8@constraint_catalog:жpзS8@constraint_catalog:я G62@constraint_name:aV/82@constraint_name:aV/82@constraint_name:жpзS2@constraint_name:жpзS2@constraint_name:я G66@constraint_schema:я G66@constraint_schema:aV/86@constraint_schema:aV/86@constraint_schema:жpзS6@constraint_schema:жpзS6@constraint_schema:жpзS2@constraint_type:жpзS2@constraint_type:7e2@cursor_identity:;++f2@cursor_identity:tOg2@cursor_identity:Ќ-~_.@cursor_return:vfa.@cursor_return:ОNc.@cursor_return:7e.@cursor_return:;++f.@cursor_return:tOg.@cursor_return:­sh.@cursor_return:­sh,@cursor_scope:7e.@cursor_source:;++f.@cursor_source:tOg.@cursor_source:щiЧ&@data_type:bœФ@&@data_type:Х6,@DatabaseName:ђІт[,@datalogical1:ђІт[#.@datalogical10:ђІт[&.@datalogical11:ђІт[).@datalogical12:ђІт[,.@datalogical13:ђІт[/.@datalogical14:ђІт[2.@datalogical15:ђІт[5.@datalogical16:ђІт[ ,@datalogical2:ђІт[,@datalogical3:ђІт[,@datalogical4:ђІт[,@datalogical5:ђІт[,@datalogical6:ђІт[,@datalogical7:ђІт[,@datalogical8:ђІт[ ,@datalogical9:ђІт[ .@dataphysical1:ђІт[$0@dataphysical10:ђІт['0@dataphysical11:ђІт[*0@dataphysical12:ђІт[-0@dataphysical13:ђІт[00@dataphysical14:ђІт[30@dataphysical15:ђІт[60@dataphysical16:ђІт[ .@dataphysical2:ђІт[.@dataphysical3:ђІт[.@dataphysical4:ђІт[.@dataphysical5:ђІт[.@dataphysical6:ђІт[.@dataphysical7:ђІт[.@dataphysical8:ђІт[!.@dataphysical9:ђІт[ &@datasize1:ђІт[%(@datasize10:ђІт[((@datasize11:ђІт[+(@datasize12:ђІт[.(@datasize13:ђІт[1(@datasize14:ђІт[4(@datasize15:ђІт[7(@datasize16:ђІт[ &@datasize2:ђІт[&@datasize3:ђІт[&@datasize4:ђІт[&@datasize5:ђІт[&@datasize6:ђІт[&@datasize7:ђІт[&@datasize8:ђІт["&@datasize9:ъ;P"@datasrc:Z= @dbname:ЂqЉ  @dbname:Mо…  @DBName:†z  @dbName:П&n @dbName:јJb @dbName:Рl @dbname:OjА @dbname:ppю8 @dbname:№ИJ @dbname:)?ЌK @dbname:*…AT @dbname:cЉ5U @dbname:Й‚юZ @dbname:ђІт[ @dbname:dяЪ] @dbname:fДc @dbname:-Wn @dbname:/у+ @dbname:L˜№@dbuse:оg]$@defdb:вц-@defdb:оg]$*@deflanguage:еёW"@defname:П^&@defstatus:ж7Г_"@delfile:тИж:"@dest_db:тИж:&@dest_path:/у+(@devicename:f{ѕn"@devname:FєpP&@devstatus:FєpP"@devtype: в "@dllname:en„Z$@dropcnst:Й‚юZ"@dropdev:U0Q(@droplogins:`š/@dummy:ЧVS,@duplicate_ok:^?"@encrypt:оg]$(@encryptopt:њжŒ   @exists:ppю8*@extpropname:ppю8,@extpropvalue:†z &@filegroup:П&n&@filegroup:иУнp.@filegroupname:†z (@filegrowth:П&n(@filegrowth:јJb(@filegrowth:л• $@filename:†z $@filename:П&n$@filename:јJb$@filename:тИж:$@filename:ŸŸщo$@filename:*…AT&@filename1:*…AT (@filename10:*…AT (@filename11:*…AT (@filename12:*…AT(@filename13:*…AT(@filename14:*…AT(@filename15:*…AT(@filename160`‰ИИИИииР–`•ƒЏИ­Ќ      Žlƒ Иx‰м–LеџџџџФ™ŒџџџџxŽРy‰ž `}Ј_УУУУУ\ž˜/ 0y‰0`‰ѕѕѕѕии˜–И”ƒВИ­Ќ œŽlƒ˜y‰Д–Мдџџџџ––––y‰€z‰ `}Ј_WWWWWџџџџ\ž˜/ z‰0`‰[[[[ииX›ƒ”ƒЕИ­Ќ ШШШШШŽlƒРy‰шќ€œ `}Ј_PPPPPЄŸŒџџџџ\ž˜/ №z‰0`‰ииp–X›ƒЗИ­И@f `}Ј_JJJJJПППППX{‰Œ–ŒУ‹џџџџ4а\˜Œџџџџ\ž˜/ а{‰0`‰|‰ ир~‰АšƒКИ­Ќ ћќŽlƒ0`‰ |‰8|‰d–ќТ‹џџџџ@|‰ФŒ`|‰џџџџ\ž˜€|‰/ А|‰ |‰0`‰ЎЎЎЎР|‰ии`™ƒšƒНИ­Ќ р|‰мŽlƒ}‰lТ‹џџџџ }‰<žŒ@}‰џџџџ\ž˜`}‰/ }‰€}‰0`‰JJJJ }‰ии –`™ƒПИ­Ќ рР}‰l‹†lƒ8р}‰ј}‰<–мС‹џџџџ~‰двДžŒ ~‰џџџџ\ž˜@~‰/ p~‰`~‰0`‰ЕЕЕЕ€~‰иHј•ȘƒТИ­Ќ ƒ ~‰lŽlƒ4 фМ”lDњжВŽjFіЮ zT(ўоЖ”hJ"мК˜rP(рО˜vL.ђвВ’rR2ђвВ’rR2ђвВ’pJ$ўиВŒf@№ Ш   x P (  д І x J  ю Р ’ b 2  в Ђ r B  ш М  d 8 рД†X*ќЮ rFєЮ rDъМŽ`2жЄr@мІp:Ю˜f4аžf.мДŠ`* 'x) €+Г`a$x)з0:*…AT&@filename2:*…AT&@filename3:*…AT&@filename4:*…AT&@filename5:*…AT&@filename6:*…AT&@filename7:*…AT &@filename8:*…AT &@filename9:L˜№$@filetype:†z $@fileType:гž:2@fk_catalog_name:гž:4@fk_table_catalog:гž:4@fk_table_catalog:гž:.@fk_table_name:гž:.@fk_table_name:гž:.@fk_table_name:гž:2@fk_table_schema:гž:2@fk_table_schema:гž:2@fk_table_schema:гž:2@fk_table_schema:э%.@fktab_catalog:э%(@fktab_name:э%,@fktab_schema:Эњ—,@fktable_name:Эњ—.@fktable_owner:Эњ—6@fktable_qualifier:2Еы@flagc:Шœ­[@ftcat:СЁ\@ftcat:њжŒ  $@fullname:Є§г$@fullscan:s Š^>@fulltext_catalog_name:Ќ-~_>@fulltext_catalog_name:хQr`>@fulltext_catalog_name:vfa>@fulltext_catalog_name:>ФЦ $@funcname:Ь{о &@functname: в &@functname:ЃЗ>(@futureonly:мл2(@futureonly:еёW(@futureonly:X(@futureonly:вX‚1"@grantee:вX‚1"@grantee:вX‚1"@grantee:HЙПU"@grantee:HЙПU"@grantee:HЙПU"@grantee:вX‚1"@grantor:вX‚1"@grantor:вX‚1"@grantor:HЙПU"@grantor:HЙПU"@grantor:HЙПU"@grantor: х~x*@grantorname: ЁC,@group_number:Иu}F,@group_number:ЇЯ“4"@grpname:§ЈL:"@grpname:ўюсB"@grpname:шбq"@grpname:Х6$@GUIDName:бэ( @handle:бэ( @handle:бэ( @handle:бэ( @handle:бэ( @handle:бэ( @handle:бэ( @handle:бэ( @handle:бэ(  @handle:бэ(  @handle:бэ(  @handle:бэ(  @handle:бэ(  @handle:ppю8$@hitlimit:њжŒ @id:ў'7@id:7Lњ7@id:кO(@in_command:$ц(@index_name:Д]($(@index_name:~ є<(@index_name:~ є<(@index_name:~ є<(@index_name:KR[{4@IndexNamePattern:Є§г&@indexonly:OjА@indid:2Еы"@indname:зЖl\"@indname:$ц&@is_unique:Д]($&@is_unique:СЁ\"@keyname: а|O@lang:\Ї`@lang:Qік.$@language:œЭ)V$@language::х•]$@language:њжŒ (@level0name:3ћ€!(@level0name:lu"(@level0name:ЅCi#(@level0name:њжŒ (@level0type:3ћ€!(@level0type:lu"(@level0type:ЅCi#(@level0type:њжŒ (@level1name:3ћ€!(@level1name:lu"(@level1name:ЅCi#(@level1name:њжŒ (@level1type:3ћ€!(@level1type:lu"(@level1type:ЅCi#(@level1type:њжŒ (@level2name:3ћ€!(@level2name:lu"(@level2name:ЅCi#(@level2name:њжŒ (@level2type:3ћ€!(@level2typeX0рИh@№Ш xP(иАˆ`8ьШЄˆlJ$ў м К œ v B  ђ Ъ Ђ z R : " ц Ц І † f F &  ц Ц І † f F " о М š n B  ідВnL*цФЂ€X0рК”p2єЖxT0єж rFђФ’`.ќЮ r> иДjDјвЌ†`0 1Ш)xј,ГX `$N?њє:O6L,@table_schema:ЙЛO,@table_schema:ЙЛO,@table_schema:d(яQ,@table_schema:d(яQ,@table_schema:жpзS,@table_schema:жpзS,@table_schema:HЙПU,@table_schema:HЙПU,@table_schema:HЙПU,@table_schema:КЈW,@table_schema:—Јc,@table_server: ёK!,@table_server:B@",@table_server:{94#,@table_server:Д]($,@table_server:э%,@table_server:&І&,@table_server:вX‚1,@table_server:}Х^4,@table_server:~ є<,@table_server:№Sм>,@table_server:O6L,@table_server:HЙПU,@table_server:ь;‡(@table_type:—Јc(@table_type:C[е*(@table_type:O6L(@table_type:O6L(@table_type:O6L(@table_type:ЙЛO(@table_type:ЙЛO(@table_type:d(яQ(@table_type:d(яQ(@table_type:0)С4@TableNamePattern:FМ"@tabname:OjА"@tabname:СЁ\"@tabname::х•]"@tabname:2Еы"@tblname:en„Z"@tblname:їЭ,@TextPtrValue:ЩтBd"@traceid:ˆŽЄ*@triggername:FМ*@triggertype:њжŒ  @type::х•],@type_colname:И8binary_message_body68’@8binary_message_body6_$bitlength6 bitpos6 brickid6 brickid6 brickid6E"brkrinst68bstat6 4bXVTDocidUseBaseT:|Щ+.case_sensitive:Ыnmu.CASE_SENSITIVE6+ catalog6"category6.cert:Ыnmu charbin6)chk62 chk6cid6+cid6class6,class61class63class6:class6;class6@class6Aclass6Jclass6Kclass6Nclass6^class6aclass6 $cmprlevel6 $cmptlevel6  colguid6)colid6) (collationid62(collationid63 (collationid:|Щ+ (column_size6qЖƒA&commit_csn6qЖƒA&commit_lbn6qЖƒA(commit_time6qЖƒA$commit_ts6\compid:vЂ%(connections6+ .connecttimeout6I "contract6TП<<conversation_group_id6ЦIЇ><conversation_group_id68’@<conversation_group_id6TП<8conversation_handle6ЦIЇ>8conversation_handle68’@8conversation_handle6I $convgroup6R cprelid:vЂ%"cpu_busy6crdate6*crdate6Pcrdate:’Jyt,CREATE_PARAMS:Ыnmu ,CREATE_PARAMS6 created6"  created6, created62  created6: created6@ created6` created6$createlsn6 $createlsn6crend6"crerrors6crrows6 "crschver6 crstart6 "crtsnext6crtype6^crypto:|Щ+ .data_precision:Ыnmu.data_precision:Ыnmu$DATA_TYPE6R"datasize66 $dataspace6"dbfragid6"dbfragid6 "dbfragid6"dbfragid6"dbfragid6"dbfragid6qЖƒA"dbfragid6dbid6dbid6dbid6!dbid6“Wъdbid6*dbname6[ defval6]defval6b"depclass6Jdepid6Kdepid6bdepid6J"depsubid6K"depsubid6[ deriv6)dflt62 dflt6\dflt68dfltdb68dfltdm68 dfltns6 dfltsch6Hdiagid6Idiagid6*diffbaseguid6*diffbaseguid6ЊкwB"cpu_busy6ЊкwB(connectionspQqRrSsTtUuVvWwXxYyZz&&0 щ!=Јcp1251Code Page 1251                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // „Z<ўрТЄŠpV:ікОЂ€bD& ђиОЄ‚`>њиЖ’pL№вД’rP2єаЌŒlL, ьЬ tV8ЎјиД|D а”X6арТžvP*кВŠnN*ъЮВ–z^B& ювЖš‚jR:оОb.№ а А  r N  о І € \ 8  № М Ž ` >  д Є v L 0 ъ а Ќ Ž p R 0 ўкЖ†\BњЮВˆ^<юЬЊˆfDшР˜pH јаЈ€T(ќаЄxL єШœpDьР”h<фИŒ`r-дH -ˆ&iso_1&cp850&cp437&cp1250­&cp1251^^&cp1253Ј&cp1254&&&cp1255Ј& cp1256бб& cp1257­& cp949& cp950&cp936&mcp932&(bin_cp850&4nocase_iso&bin_cp437&"dictionary_437††&" noaccents_437& nocase_437&!"nocasepref_437&)"dictionary_850&, noaccents_850&*nocase_850ˆˆ&1caseless_34&+"nocasepref_850&7"alt_dictionary&9 alt_noaccents&8"alt_nocasepref&=alt_nocaseS&;&scand_dictionary]&:&scand_nocaseprefH&<scand_nocase&2bin_iso_1&3"dictionary_iso&6 noaccents_iso&5"nocasepref_iso&З&danno_nocasepref&К&islan_nocasepref&И&svfi1_nocaseprefЃ&Й&svfi2_nocasepref&Pbin_cp1250­&Q$dictionary_1250&Rnocase_1250&Scsydic&Tcsync&Uhundic&Vhunnc&Wplkdic&Xplknc&YromdicЗЗ&Zromnc&[shldic&\shlnc&]skydicщщ&^skync&_slvdic&`slvnc&hbin_cp1251‚&i"dictionary_251€&jnocase_1251&kukrdic&lukrnc&pbin_cp1253&q$dictionary_1253&rnocase_1253&y,greek_altdictionary&x0greek_mixeddictionary&|&greek_nocasedict&€bin_cp1254..&$dictionary_1254&‚nocase_1254&ˆbin_cp1255&‰$dictionary_1255&Šnocase_1255&bin_cp1256&‘$dictionary_1256&’nocase_1256&˜bin_cp1257&™$dictionary_1257&šnocase_1257&›etidic@&œetinc&ŸlthdicЎ& lthnc&lvidic&žlvinc&Рbin_cp932&Сnls_cp932&Шnls_cp932_cs&Цbin_cp936&Чnls_cp936&Ыnls_cp936_cs&Тbin_cp949&Уnls_cp949&Щnls_cp949_cs&Фbin_cp950&Хnls_cp950&Ъnls_cp950_cs„&Ьbin_cp874&Эnls_cp874&Юnls_cp874_csее&cp874&cp1258†&G$dictionary_1252&Hnocase_1252&вEBCDIC_037&гEBCDIC_273&дEBCDIC_277&еEBCDIC_278&жEBCDIC_280&зEBCDIC_284&иEBCDIC_285ЪЪ&йEBCDIC_297­ІсссссМššœ Ќбџџџџџџяt–†+ДДДДјбшЬф8­ІPPPPPМššœ вœ„џџџџџџя46ˆ(Ь€„у8аs­Пџџџџџ”—š—š0р€ЊЊЊЊ`вР‚­8­І•••••Мššœ |вœиџџџџџџя”3ˆ%РРРР@`‰€иІ8аs­П‡‡‡‡‡”—š—š0р€вввв /ˆ@.ˆ‘8мp­Э4jjjjj0р€0р€,Ю №?№?№?б гб|?z?ЩЩЩЩлрж…Hќ­%%%%%/†Шщыy?AЌH–нн?№?№?№?б р8п>a?z?ppppРеPжˆHќ­ќќќќќ№?№?№?б р8п>a?z?ЉЉЉЉдl 0QЌе ‚јЮ”pH1­ёЎЎЎЎЎ`—РзИ—?е‘uNн=‘?е‘uNн=‘?№?эЕ їЦА>ђxщЎ(‘?ЌЈf{™Э??FŠ>Ѕ„?е‘uNн=‘?ћћћћX‚0a‰pH1­­­­­­ZnФю–?z?™ –Iы?™ –Iы?№?€IЏМšђзz>ZnФю–?z?™ –Iы?™ –Iы?јјјјШв€кŒpH1­ИИИИИгб|?z?m[я’“ф?m[я’“ф?№?%IЏМšђзz>гб|?z?m[я’“ф?m[я’“ф?ээээ€к˜гŠpќ­Ў џџџџ$­\\\\˜гл‡pH1­Чюююююр8п>a?z?AЌH–нн?AЌH–нн?№?р8п>a?z?AЌH–нн?AЌH–нн?ЛЛЛЛ0гh ‚„pH1­Rр8п>a?z?AЌH–нн?AЌH–нн?№?AЌH–нн?/†Шщыy?р8п>a?z?AЌH–нн?AЌH–нн?HHHH€лИ‚vpќ­ЎъъъъъџџџџПППП Že0<†˜:‹ˆ$­/ЌЌЌЌЌ€™šœ*ˆ-lя†иџџџџ\ž˜WHи@иXƒƒТ`}Ј_ ˜Эp‚Ѕ`А^­УŽŽŽŽŽ$›˜Œ –б ДЭ\`‰($›лллл№(ˆHЮг`аs­FTTTTT$›$Œo‰мb‰($›јЮX‚’`А^­Йfffff$›$Œ ?%ЯLa‰($›33330a‰ШвŽ`А^­d$ллллл$›ŽŒ –б ДƒLa‰($›єц€ŽŽŽŽ0еРе‹`А^­t,,,,,$›˜Œ –б Дƒœa‰($›єц€yyyyPж0г†`А^­‚ ГГГГГ$›„•ŒžZ lЯœa‰($›єц€ццццPЯpзw`А^­5ššššš$›l†žZ lЯœa‰($›єц€ЯЯЯЯ‚ФљІзШў€`УЗˆ$­/˜˜˜˜˜€™šœ  |žŒў€џџџџ\ž˜WHмTУ—š0р€ˆаЌЭЭЭЭш§€ё€Дˆ$­/”””””€™šœ Œ4ё€џџџџ€\ž˜W№мЄУ—š0р€аs­ССССё€HŽВˆ$­/€™šœ М›Œє™†џџџџ\ž˜W˜нЬУ—š0р€MFFFF虆ј˜†Џˆ$­/ККККК€™šœ \šŒ™†џџџџ€\ž˜W@оТ—š0р€€Раяяяяј˜†˜†­ˆ$­/ъъъъъ€™šœ Є–Œ4˜†џџџџ\ž˜WшоŒТ—šЈ”И(№рЬx PМЈ˜„Јtpьь4ијL x ќPЬ” | D , є м Є Œ ф Ь d P @ , `ht`p@  ,  є и М   „ h и,ЈTШlДд( ќ@P<,<L p€ єрЬИЄŒРd  Ф t Д \ЌPє˜И8р4№Ь Z-ј.{Ш^8ˆˆР`, 0-Ю\/hЗ0 щ!=Bcp1250Code page 1250                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€  ‚‚ ƒƒ „„ …… †† ‡‡ ˆˆ ‰‰ Šš‹‹ ŒœŽžŸ ‘‘ ’’ ““ ”” •• –– —— ˜˜ ™™ Šš›› ŒœŽžŸ  ЁЁ ЂЂ ЃГЄЄ@ ЅЙІІ ЇЇ ЈЈ ЉЉ ЊКЋЋ ЌЌ ­­ ЎЎ ЏПАА ББ ВВ ЃГДД ЕЕ ЖЖ ЗЗ ИИ ЅЙЊКЛЛ МОНН МОЏПРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёвђгѓдєеѕжізз ијйљкњлћмќн§оўппРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёвђгѓдєеѕжіїї ијйљкњлћмќн§оўџџ €0123012002245501262301020201230120022455012623010202‚0 щ!=Bcp1251Code Page 1251                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €ƒ‚‚ ƒ„„ …… †† ‡‡ ˆˆ ‰‰ Šš‹‹ ŒœŽžŸ€‘‘ ’’ ““ ”” •• –– —— ˜˜ ™™ Šš›› ŒœŽžŸ  ЁЂЁЂЃМЄЄ@ ЅДІІ ЇЇ ЈИЉЉ ЊКЋЋ ЌЌ ­­ ЎЎ ЏПАА ББ ВГВГЅДЕЕ ЖЖ ЗЗ ЈИЙЙ ЊКЛЛ ЃМНОНОЏПРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёвђгѓдєеѕжізїијйљкњлћмќн§оўпџРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёвђгѓдєеѕжізїијйљкњлћмќн§оўпџ€0123012002245501262301020201230120022455012623010202„0 щ!=Bcp1253Code page 1253                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€  ‚‚ ƒƒ„„ …… †† ‡‡ ˆˆ ‰‰ ŠŠ ‹‹ Œœ  Žž   ‘‘ ’’ ““ ”” •• –– —— ˜˜ ™™ šš ›› œœ  žž ŸŸ   ЁЁ ЂмЃЃ ЄЄ@ ЅЅ@ ІІ ЇЇ ЈЈ ЉЉ ЊКЋЋ ЌЌ ­­ ЎЎ ЏЏ АА ББ ВВ ГГ ДД ЕЕ ЖЖ ЗЗ ИнЙоКпЛЛ МќНН О§ПўРРСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёввгѓдєеѕжізїијйљкњлћЂмИнЙоКпррСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёгђгѓдєеѕжізїијйљкњлћМќО§Пўџџ€0123012002245501262301020201230120022455012623010202ї0 щ!=Bcp1254Code page 1254                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€  ‚‚ ƒƒ„„ …… †† ‡‡ ˆˆ ‰‰ Šš‹‹ Œœ ŽŽ   ‘‘ ’’ ““ ”” •• –– —— ˜˜ ™™ Šš›› Œœ žžŸџ   ЁЁ ЂЂ ЃЃ ЄЄ@ ЅЅ@ ІІ ЇЇ ЈЈ ЉЉ ЊЊ ЋЋ ЌЌ ­­ ЎЎ ЏЏ АА ББ ВВ ГГ ДД ЕЕ ЖЖ ЗЗ ИИ ЙЙ КК ЛЛ ММ НН ОО ПП РрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯяа№бёвђгѓдєеѕжізз ијйљкњлћмќнноўппРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьэнЮюЯяа№бёвђгѓдєеѕжіїї ијйљкњлћмќ§§оўŸџ€0123012002245501262301020201230120022455012623010202m0 щ!=Bcp1255Code page 1255                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€  ‚‚ ƒƒ„„ …… †† ‡‡ ˆˆ ‰‰ ŠŠ ‹‹ ŒŒ  ŽŽ   ‘‘ ’’ ““ ”” •• –– —— ˜˜ ™™ šš ›› œœ  žž ŸŸ   ЁЁ ЂЂ ЃЃ@ ЄЄ@ ЅЅ@ ІІ ЇЇ ЈЈ ЉЉ ЊЊ ЋЋ ЌЌ ­­ ЎЎ ЏЏ АА ББ ВВ ГГ ДД ЕЕ ЖЖ ЗЗ ИИ ЙЙ КК ЛЛ ММ НН ММ ПП РР СС ТТ УУ ФФ ХХ ЦЦ ЧЧ ШШ ЩЩ ЪЪ ЫЫ ЬЬ ЭЭ ЮЮ ЯЯ аа бб вв гг ддеежжззииййккллммннооппррссттууффххццччшшщщъыъыььэюэю№я№яёёђђѓєѓєѕіѕіїїјјљљњњлћмќн§оўџџ€0123012002245501262301020201230120022455012623010202 < щ !=Їcp1256Code page 1256                              !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZznOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€  ‚‚ ƒƒ„„ …… †† ‡‡ ˆˆ ‰‰ ŠŠ ‹‹ ŒŒ  ŽŽ   ‘‘ ’’ ““ ”” •• –– —— ˜˜ ™™ šš ›› œœ  žž ŸŸ   ЁЁ ЂЂ ЃЃ@ ЄЄ@ ЅЅ@ ІІ ЇЇ ЈЈ ЉЉ ЊЊ ЋЋ ЌЌ ­­ ЎЎ ЏЏ АА ББ ВВ ГГ ДД ЕЕ ЖЖ ЗЗ ИИ ЙЙ КК ЛЛ ММ НН ММ ПП РР СС ТТ УУ ФФ ХХ ЦЦ ЧЧ ШШ ЩЩ ЪЪ ЫЫ ЬЬ ЭЭ ЮЮ ЯЯ аа бб вв гг ддеежжззииййккллммннооппррссттууффххццччшшщщъыъыььэюэю№я№яёёђђѓєѓєѕіѕіїїјјљљњњлћмќн§оўџџ€0123012002245501262301020201230120022455012623010202ћћ0р…Аt­м9ˆЎЎЎЎ`Ї„ ј„аs­ж.ххххх0р…Дp,ш Є`& ,), ж0ВXU$Љ%ў:^„o*@server_name:`š/*@server_name:гž:*@server_name:L˜№$@set_user: а|O$@severity:9ŸU.@show_topology:оg]$@sid:†z @size:П&n@size:јJb@size:dяЪ](@skipchecks:њжŒ  "@smallid:Я†Т"@sp_name:Я†Т$@sp_owner:Я†Т,@sp_qualifier:ў'7@spid:„vO|@spid1:„vO|@spid2:нГV"@srvname:ъ;P(@srvproduct:ЄІG*@srvrolename:TШšH*@srvrolename:ьŽI*@srvrolename:Œп5"@Startup:КЈW,@stat_catalog:КЈW&@stat_name:КЈW*@stat_schema:ppю8 @status:ˆŽЄ$@stmttype:L˜№"@subject:ђІт[(@syslogical:ђІт[*@sysphysical:ђІт["@syssize:­:яs@tab:—Јc.@table_catalog: ёK!.@table_catalog:B@".@table_catalog:{94#.@table_catalog:Д]($.@table_catalog:&І&.@table_catalog:вX‚1.@table_catalog:}Х^4.@table_catalog:~ є<.@table_catalog:№Sм>.@table_catalog:O6L.@table_catalog:жpзS.@table_catalog:жpзS.@table_catalog:HЙПU.@table_catalog:КЈW.@table_catalog:xgt (@table_name:•9(@table_name:$ц(@table_name:zѓž(@table_name:ь;‡(@table_name:—Јc(@table_name: ёK!(@table_name:B@"(@table_name:{94#(@table_name:Д]($(@table_name:&І&(@table_name:C[е*(@table_name:вX‚1(@table_name:вX‚1(@table_name:}Х^4(@table_name:}Х^4(@table_name:aV/8(@table_name:~ є<(@table_name:~ є<(@table_name:№Sм>(@table_name:№Sм>(@table_name:№Sм>(@table_name:œNJ(@table_name:O6L(@table_name:O6L(@table_name:ЙЛO(@table_name:d(яQ(@table_name:жpзS(@table_name:HЙПU(@table_name:HЙПU(@table_name:КЈW(@table_name:хQr`(@table_name:vfa(@table_name:WšZb(@table_name:ОNc(@table_name:Џџ=y(@table_name:“}(@table_name:xgt *@table_owner:•9*@table_owner:$ц*@table_owner:zѓž*@table_owner:ь;‡*@table_owner:C[е**@table_owner:Џџ=y*@table_owner:“}*@table_owner:xgt 2@table_qualifier:•92@table_qualifier:$ц2@table_qualifier:zѓž2@table_qualifier:ь;‡2@table_qualifier:C[е*2@table_qualifier:Џџ=y2@table_qualifier:“}2@table_qualifier:—Јc,@table_schema: ёK!,@table_schema:B@",@table_schema:{94#,@table_schema:Д]($,@table_schema:&І&,@table_schema:вX‚1,@table_schema:вX‚1,@table_schema:вX‚1,@table_schema:}Х^4,@table_schema:}Х^4,@table_schema:}Х^4,@table_schema:aV/8,@table_schema:aV/8,@table_schema:~ є<,@table_schema:~ є<,@table_schema:~ є<,@table_schema:№Sм>,@table_schema:№Sм>,@table_schema:№Sм>,@table_schema:№Sм>,@table_schema:œNJ,@table_schema:œNJ,@table_schema:O6L,@table_schema:O6L,@table_schema2455012623010202m0 щ 9>cp949Code page 949      !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\@ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€џџ01230120022455012623010202012301200224550126230102020 щ 9>cp950Code page 950      !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\@ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€џџЊ~R&њЮЂvJђЦšnBъО’f:тЖŠX&єТ^,њаІ|R(ў д Њ ‚ Z 2 т К ’ j B  ђ Ъ Ђ z R *  к В Š b :  ъ Т š r J " њвЊ‚Z2 тД†X*ќЮ rDшКŒ^0єЪЂ€\<ьРžtJ јжИš~R. ъТІŠnT&оДŠ`, (v)`Д1ЊPQ"-ы2 6(diffbaselsn6(diffbaselsn6.diffbaseseclsn6.diffbaseseclsn6*diffbasetime6*diffbasetime6Ddlgerr6Ddlgid6I$dlgopened6I"dlgtimer6 droplsn6  droplsn68encalg6."encrtype6_"encrtype6I $enddlgseq6D  enqtime6[ enum6' "familyid6I(farbrkrinst6I&farprincid6Ifarsvc6"fgfragid6fgguid6fgid6fgid6fgid6fgid6fgidfs6"fileguid6"fileguid6fileid6fileid6fileid6"filename6$filestate6$filestate6"filetype6"filetype6 "fillfact66"fillfact6D&finitiator6I(firstoorder6.firstupdatelsn6.firstupdatelsn:|Щ+2fixed_prec_scale:|Щ+fixlen:Ыnmufixlen6"forkguid6"forkguid6 forklsn6 forklsn6 forkvc6forkvc6fragid6fragid6Rfragid6TП<0fragment_bitmap6ЦIЇ>0fragment_bitmap68’@0fragment_bitmap6TП< ,fragment_size6ЦIЇ> ,fragment_size68’@ ,fragment_size6R$fragobjid6D*frombrkrinst6D fromsvc6 grantee6; grantee6 grantor6 growth6 growth6grpid6grpid6Nguid6Hhandle6Ihandle6Zhash6`hash6 hbcolid6D&hdrpartlen6D$hdrseclen:ЏЦhigh6Z3іhigh6id6id6id6id6"id6)id6*id6+id6,id6-id6.id61id62id66id68id69id6:id6;id6@id6Cid6Eid6Gid6Nid6[id6^id6_id6`id:vЂ%idle6 idmajor63 idmajor67 idmajor6a idmajor6 idminor6ЊкwBidle6уўkChighџџ01230120022455012623010202012301200224550126230102020 б'‘“bin_cp437Binary Sort Order for the Code Page 437 Character Set0 щ9Єcp874Code page 874      !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0 щ9>cp874Code page 874      !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\@ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€џџ0123012002245501262301020201230120022455012623010202 0 щ!=Јcp1258Code page 1258      !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0 щ!=Bcp1258Code page 1258      !! "" ## $$@ %% && '' (( )) ** ++ ,, -- .. // 00112233445566778899:: ;; << == >> ?? @@ AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz[[ \\@ ]] ^^ __ `` AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz{{ || }} ~~  €€џџ0123012002245501262301020201230120022455012623010202p37Binary Sort Order for the Code Page 437 Character Set`@ р €Ц А š „ n X B ,  ъ д О Ј ’ | f P : $  ј т Ь Ж   Š t šZ @  і ж М Ђ „ f L 0  і и И ˜ x X . оВ†V&іиКœ~`@ ўмО n@ъФЂ€^<євД–xV4ќтШЎnP*рЦІ‚`> рОš~`6 оАˆ`( )Е)мК2З8Q" p6‰6name6name6name6name6name6name6"name6'name6)name6*name6+name6,name6.name6/name60name61name62name63name66name68name6:name6@name6Cname6Ename6Zname6_name6`name6aname:ЏЦname6!name6Z3і name6[nameid6TП< ,next_fragment6ЦIЇ> ,next_fragment68’@ ,next_fragment6$nextdocid6Znid6[ nmscope69 nmspace6" nsclass6"nsid6,nsid6:nsid:Ыnmu "NULLABLE6  nullbit6)number6bnumber:ЏЦnumber:|Щ+ ,numeric_scale:Ыnmu,numeric_scale6 numpart6<objid6Aobjid69 objname:Ыnmu ODBCVer6 offset:|Щ+0oledb_data_type6\ord6] ordinal6ordkey6I$outseskey6I(outseskeyid6 ownerid6$ownertype:vЂ%(pack_errors:vЂ%,pack_received:vЂ%$pack_sent6` 0paramorhinttext6"password6 pcdata6"pclass6 &pcreserved6 pcused6 pgfirst6&pgfirstiam6pgroot6phfgid6phfgid6Z3і  phyname6"pid6Ppid6.pkey6_pkey6]"placedid6]$placingid6 pname6 pname68 port168 port26)prec62prec63prec6I princid6"priority6I"priority6TП<"priority6ЦIЇ>"priority68’@"priority6(priority_id6+ product68"protocol6+"provider6pruid6pruid6pruid6'psrv68pstat6_ pukey6*  pwdhash60 pwdhash6Zqid6[qual6+ *querytimeout6TП<,queuing_order6ЦIЇ>,queuing_order68’@,queuing_order:ЫnmuRADIX6&rcmodified6rcrows6I rcvfrag6Ircvseq60readonlybaselsn60readonlybaselsn6(readonlylsn6(readonlylsn6*readwritelsn6*readwritelsn6!4redostartforkguid64redostartforkguid6*redostartlsn6*redostartlsn6,redotargetlsn6,redotargetlsn6G"refcount68remote_service_name6Cremsvc6Eremsvc6'*rolesequence6Rrowcnt66 rowset6"rowsetid6A"rowsetid6A$rowsetnum6 rscolid6rsguid6rsid6D "rsndtime6'safety6'.safetysequence6) scale62scale63 scale62schid6Cscid6 scope6` scopeid6`$scopetype:|Щ+&searchable:Ыnmu&SEARCHABLE6“Wъsegmap6H sendseq6H"sendxact6 (sensitivity68service_contract_id6TП< 8service_contract_id6ЦIЇ> 8service_contract_id68’@ 8service_contract_id6G&service_id6TП< &service_id6ЦIЇ> &service_id68’@ &service_id6-"severity6sid6sid6ЊкwB,pack_received6ЊкwB$pack_sent6ЊкwB(pack_errors6уўkCname6уўkCnumber6UGTE optname6UGTE"revisionџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕЈџŒє0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw++< б!1MOnocasepref_437Case-insensitive dictionary sort order, with case preference for collating purposes, for use in the US. Uses the Code Page 437 character set.A› DВVЂFžBžBžBž B DЂFЂFЂFІJІJІJžBžBЂFЌPЌPЌPВVВVЖZЌPВVBœCDžEŸFІžBІJЌPВVЋOЋOGЇHЈIЉJЊKЋLЌM­NЎOЏPАQБRВSГTДUЕVЖWЗXИYЙZК[Л\М]Н^О_П`РaСbТcУdФeХfЦgЧhШiЩjЪkЫlЬmЭnЮoЯpаqбrвsгtдuеvжwзxиyйzк{л|м}н~оп€ьИсЙтКуЛфМцМцНчОшПщРъСыТюэ‚яУƒ№„ё…ђ†ѓ‡єˆѕ‰іŠї‹јŒљњŽћќ§‘ў’џ“0џžBЂFџžBЂFџџџџџџџџџџџџџџ`уїwџœ-ыwџџJіwH$PџуїwиџџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4оџ’Эџxбћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјА˜vP*оІn6ўжД”vP*цЪА”x\@євИšzV4єжЌ˜Žp8ъО”j6иЎ†^.ўрРЂ|`4м В ˜ € ` @ $  ю в Ж š x V 6  ь Ъ Ј † d D *  і к О Ђ † b @ & є м М ž € b <  ўиКœzJє&ШњвЎŽfB$ьxМž~^B&кЎZrT4јоФЄ„dL(ќаЄ†@lR8ъаЖœ‚hN4цЬВ˜~dJ0ќтШЎ”z` */)Жь3Г Z$/Вд(:уХGO$@acctname:$ц$@accuracy:Œп5 @Action:Х6 @Action:7жC @Action:VTХY @action:xЙZ @action:Шœ­[ @action:СЁ\ @action::х•] @action:Б‹h ,@attribute_id:‡H"@autofix:Рl"@autofix:Љ[ОE"@autofix:bœФ@(@best_match:ppю8.@casesensitive:ъ;P"@catalog:`š/,@catalog_name:`š/,@catalog_name:бэ(@ccopt:бэ(@ccopt:бэ(@ccopt:бэ(@ccopt:бэ(@ccopt:бэ(@ccopt:бэ(@ccopt:бэ(@ccopt:бэ( @ccopt:бэ( @ccopt:бэ( @ccopt:бэ( @ccopt:бэ( @ccopt:FєpP&@cntrltype:•9$@col_type:en„Z"@colname::х•]"@colname:y­ *@column_name: ёK!*@column_name:{94#*@column_name:вX‚1*@column_name:вX‚1*@column_name:вX‚1*@column_name:}Х^4*@column_name:}Х^4*@column_name:}Х^4*@column_name:WšZb*@column_name:ОNc*@column_nameџџџџџџџџџ`уїwџœ-ыwџџJіwH$PџуїwиџџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4žџRŽЭџxбћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕЈџŒє0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw20 б*)qunocase_850Case-insensitive dictionary sort order for use with several Western-European languages including English, French, and German. Uses the Code Page 850 character set.:ш      !!""##$$%%&&''(())**++,,--..//:ƒ1„2…3†4‡5ˆ6‰7Š8‹9ŒA0;1<2=3>4?5@6[BŽCDE‘F’G“H”I•J–K—L˜M™NšO›PœQRžSŸT UЁVЂWЃXЄYЅZІб7\8]9^:_;`<{BŽCDE‘F’G“H”I•J–K—L˜M™NšO›PœQRžSŸT UЁVЂWЃXЄYЅZІб=|>}?~@AœDЁV‘FBBBBD‘F‘F‘F•J•J•JBB‘F›P›P›PЁVЁVЅZ›PЁV›PBž›PCŸDІB•J›PЁVšOšOEЇFЈGЉHЊIЋJЌK­LЎMЏNАOБPВQГRДSИBBBTЙUКVЛWМXНYОZП[Р\С]Т^У_Ф`ХaШBBbЩcЪdЫeЬfЭgЮhЯiйЇчЇч‘F‘F‘F•J•J•J•Jjкkлlмmнnп•Joц›P›P›P›P›PpюЈЈЁVЁVЁVЅZЅZqяr№sёtђuѓvєwѕxіyїzј{љ|њ}ћ~ќ§€ўџ‚0џB‘FџB‘FџŸTŸTџџџџџџџџџџџџџ`уїwџœ-ыwџџJіwH$PџуїwиџџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4ЎџЃŽЭџxбћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕЈџŒє0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw0 б+1ейnocasepref_850Case-insensitive dictionary sort order, with case preference for collating purposes, for use with several Western-European languages including English, French, and German. Uses the Code Page 850 character set.<ш      !!""##$$%%&&''(())**++,,--..//:ƒ1„2…3†4‡5ˆ6‰7Š8‹9ŒA0;1<2=3>4?5@6[BŽCDE‘F’G“H”I•J–K—L˜M™NšO›PœQRžSŸT UЁVЂWЃXЄYЅZІб7\8]9^:_;`<{BŽCDE‘F’G“H”I•J–K—L˜M™NšO›PœQRžSŸT UЁVЂWЃXЄYЅZІб=|>}?~@AœDЁV‘FBBBBD‘F‘F‘F•J•J•JBB‘F›P›P›PЁVЁVЅZ›PЁV›PBž›PCŸDІB•J›PЁVšOšOEЇFЈGЉHЊIЋJЌK­LЎMЏNАOБPВQГRДSИBBBTЙUКVЛWМXНYОZП[Р\С]Т^У_Ф`ХaШBBbЩcЪdЫeЬfЭgЮhЯiйЇчЇч‘F‘F‘F•J•J•J•Jjкkлlмmнnп•Joц›P›P›P›P›PpюЈЈЁVЁVЁVЅZЅZqяr№sёtђuѓvєwѕxіyїzј{љ|њ}ћ~ќ§€ўџ‚0џB‘FџB‘FџŸTŸTџџџџџџџџџџџџџ`уїwџœ-ыwџџJіwH$PџуїwиџџџџџџИ$$џ@џŒѓџKіw$И$џLіwH$џњР$ДѓџєIpєџ‘іw$џ$ŒіwР$џ‡јw№§џ4аџпŽЭџxбћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕЈџŒє0џі”ўјw@ЗљwџџџџЈізїwџџ-ыwЎЃŽЭџxбћџiєwр$џАiєw ZњwџџџџNСіwџUњwOСіwџџџџœ-ыwџ(ЈџОјw(џgџдђ(џєœ-ыwџ№є№єџјwWžјwHџ-ыwџѕџѕчјwWžјwџџЛјџџѕЈџŒє0џі”ўјw@ЗљwџџџџЈізїwџџ-ыw< б1+›caseless_34Case-insensitive sort order for 3.4.1 caseless database.+0 б+1езnocasepref_850Case-insensitive dictionary sort order, with case preference for collating purposes, for use with several Western-European languages including English, French, and German. Uses the Code Page 850 character set.————Xˆ\ŒаGŒv@$kЈŒ_ŒLр†\_ŒЏp TЕEEEE`АИPŒˆ\Œw\Ђ…‡‡‡‡‡Др†с†вввв(€ИPŒˆ\Œx<\Ђчјјјјј@ѕBшџџџPТ˜nD№ЦœrHќкЖrT6њмО ‚dF( оВb:ідЈˆhH(шШЈ„`75‰K’\4В8 8$‰гбл}Х^4|Щ+ }Х^4|Щ+ }Х^4|Щ+ ЇЯ“4nЋŸ3Œп5wшК Œп5§сp.Œп56e/Œп5ЈNM1Œп5лЮС~рѓ‡55‡Ћ2Х6а“3,Х6§сp.Х6o*Y0Х6—53|6рѓ‡5Ф„X9›‡”M§ЈL:Ф„X9тИж:wшК 6Э@;5‡Ћ2oё4<6Э@;Ј)=›‡”MS‚@5‡Ћ2bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+ bœФ@|Щ+ bœФ@|Щ+ bœФ@|Щ+ bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@|Щ+bœФ@’JytbœФ@’JytbœФ@’JytŒІљ@ќbЗ1ўюсBŒІљ@ўюсBХЪэA ЁC|Щ+ ЁC|Щ+ ЁC|Щ+ ЁC|Щ+ ЁC|Щ+ ЁC|Щ+  ЁC|Щ+  ЁC|Щ+7жCоg]$тВFќbЗ1ЄІGЏЦЄІGЏЦЄІGЏЦЄІGЏЦTШšHЏЦTШšHЏЦTШšHЏЦTШšHЏЦьŽIЏЦьŽIЏЦьŽIЏЦьŽIЏЦЦƒJЏЦЦƒJЏЦЦƒJЏЦЦƒJЏЦ№ИJЏЦ№ИJЏЦ№ИJЏЦџ4wKЏЦџ4wKЏЦџ4wKЏЦџ4wKЏЦ а|OдЋˆNъ;P›‡”MFєpP›‡”MŽ2$RЏЦŽ2$RЏЦŽ2$RЏЦИ&0ЂЌА33333њьэdescription88ffff˜H0HкŠРйŠ? 0ЂЌќ77777шйŠАдŠbbbbP00€кŠкŠ@ 0ЂЌќ•••••шйŠАдŠРРРРp0PикŠHкŠA00ЂЌАdddddЎ‚х binarydefinition1111P0лŠ€кŠB 0ЂЌќшшшшшЈкŠАдŠНННН00HлŠикŠC 0ЂЌќ&&&&&ЈкŠАдŠssssA08ˆлŠлŠDє@ІG ™™™™™\ž˜ћЄлŠЬЬЬЬ€8@0и‹HлŠE PўЌ;FFFFF@(РŠбŠnLЇЌ[ИИИИИLоŠээээ(@ؘ‹Ам‹oL>­ KKKKK6š -@ЈаЧŠpЪŠp `}Ј_ !!""##$$%%&&''(())**++,,--..//:”1•2–3—4˜5™6š7›8œ9A0;1<2=3>4?5@6[žBŸC DЁEIIIIРрؘ‹мŠr8єІЌœœœœœŒŒ˜ЎRЄжŠЬи‹”о‹ЅЅџЩЩЩЩX€аЧŠpЪŠs8єІЌћ44444ŒŒ˜єкŠ,нŠ”о‹ЅЅp§џaaaaX @мŠаЧŠt8єІЌІІІІІŒŒ˜ДX$гŠŒнŠ”о‹ЅЅџѓѓѓѓXР@мŠаЧŠu8єІЌћТТТТТŒŒ˜žBќдŠьнŠ”о‹00————X`@мŠаЧŠv@$kЈDпŠЌпŠпŠЏp TЕEE@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`46K‚|5Љў7"oЪђ“}Ыnmu љџ ItopologyxЁЁЁ0.(88  јџ Itopologyy0.(ч љџ їџа4Ecatalog 0.(88  іџ Osrvcollation0.(88  Sconnecttimeout0.(88   Oquerytimeout0.(ЏЏа4Ksrvnetname0.(hh Gisremote0.(hh =rpc 0.(hh =pubC•0.(hh =sub0.(hh ?dist0.(hh ?dpub0.(hh Crpcout0.(hh Kdataaccess0.(hh ]collationcompatibler0.(hh Csystem0.(hh [useremotecollation0.(hh _lazyschemavalidation0.(ча4Icollation0.+88  <id0.+чџџа4 @name0.+чўџа4 Fproduct 0.+ч§џа4 Hprovider0.+88  Dstatus0.+== Dmodate0.+чќџа4 Fcatalogo0.+88  >cid0.+88  Tconnecttimeout0.+88  Pquerytimeout0.*88  <id0.*чџџа4 @name0.*ЅЅUўџ >sid.0.*88  Dstatus0.*ЏЏ  @type0.*== Dcrdate0.*== Dmodate0.*ч§џа4 Ddbname0.*ч ќџа4 @lang0.*ЅЅ ћџ Fpwdhash0.-88  <id0.-44 Jmsglangid0.-44 Hseverity0.-44 Dstatus0.,00 Bclass0.,88  <id0.,чџџа4 @name0.,88  @nsid0.,88  Dstatus0.,88  Fintprop0.,== Fcreated0.,== Hmodified0.)88  <id0.)44 Dnumber0.)88  Bcolid0.)чџџа4 @name0.)00 Bxtypex0.)88  Butypeb0.)44 Dlength0.)00 @prec0.)00  Bscale0.)88  Ncollationid0.)88  Dstatus0.)44  Hmaxinrow0.)88 ! Bxmlns 0.)88 % @dflt0.)88 ) >chk0.)ЅЅ@ўџ Didtval4 r p Qreq_cryrefcnt0.)88 t r Oreq_lifetime0.)88 xv Greq_spid0.)88 |z Greq_ecid0.)44€~ Qreq_ownertype0.)‚џџ Yreq_transactionIDsn0.)$$Šўџ [req_transactionUOW0.3чџџџџа4Sreference_name0.300 Ocursor_scope0.388  Ocursor_handl0.488  Qcursor_handle0.4чџџџџа4Mcursor_name0.488  Cstatus0.400   Amodel^уt0.400   Mconcurrency80.400  Kscrollable0.400  Mopen_status0.4jj ўџ Mcursor_rowsч0.444   Ofetch_statusu0.444   Ocolumn_count0.4jj  §џ Irow_count0.400 &  Slast_operation0.588  Qcursor_handle0.5чџџџџа4Mcolumn_name0.588  Wordinal_positiong0.588    ocolumn_characteristics_flags0.588  Mcolumn_size0.544 Qdata_type_sql0.500 Wcolumn_precision0.500 Ocolumn_scaleo0.588   Sorder_position0.5чч ўџ ўџа4Uorder_direction0.544   Qhidden_column0.588   Gcolumnid0.588 "  Gobjectid0.588 &$ ?dbid0.5ч§џ§џа4Cdbname0.688  Qcursor_handleam0.+88  <id0.+ча4 @name0.+h h h h h h h h h h h h h h h h h h h h h д ˜ €8№ Ќ l , № Ќ Д` и”PР€DP  Ь ˆ D  Р € @  М|<јАlи˜TЬŒH`5KЮ$6Вh =$: ŒXНšC} И'-чЄx}ЪяГxчЄx}ЈyчЄx}<8œzчЄx}u\{чЄx}Ў€„|іО7~ И'-j&replinfo&status&uidS&xtype& dpages&first&FirstIAM$&groupid&id&impid&indid&keycnt&keys&lockflags&maxirow&minlens­&name&)OrigFillFactor@˜&pgmodctro˜& reserved&&reserved2&reserved3&reserved4&rootЎš& rowcnt& rowmodctr&statblobХХХ&status&#StatVersion& used&xmaxlen&autoval & bitpos&cdefault& colid&#collationid&colorder& colstat&domainЪ­&id“•&language&lengthŸŸŸ&name&numberl˜&offset& reserved‚‚‚&typestat„„„& xoffset&xprec&xscale&xtype&xusertype&colidt&ctext&id&number&status &fileid&filename&name&status& actadd& actmod& granteeu& grantor& id& refadd& refmodmb& seladdat& selmodle& updaddle& updmodna& altuidat& !createdateќќќ& !schema_ver& -stats_schema_verr&type &userstat &sysstat&indexdel&refdate&version&deltrig&instrig!&updtrig&seltrig &category&cache&maxlenst&rows&statusda&type&usertypeme&printfmtd&prec{˜&scale&!iscomputed&!isoutparamde&!isnullable &collation& %tdscollationns&texttypeid&languages&encrypted& !compressed& text& gidi& environi&auidme&typeth&ownerids&statusyй&fgidnf&pgfirsti&pgrootgo&!pgfirstiamve& pcusedte& pcdata(& !pcreserved&rowsetid&ownertypee&idmajori&idminors&numparts&statusio&fgidfs$$$&rcrowstm&rowsetidci&#rowsetcolida&hobtcolid&status_v&!rcmodifiedsc&#maxinrowlenyevi&userstat&sysstat&indexdel#&refdate&version&deltrig&instrigh&updtrigi&seltrigt&categoryri&cache&maxlen&rows&status&type&usertype%&printfmt&prec%&scale&!iscomputed&!isoutparamco&!isnullablee&collationm& %tdscollationce& usertypeso&variablest&!allownulls&typen˜&printfmtma&prec„&scalei&collationd&texttypepr&language(&encryptedu& !compressed& textrp& depdbidc& depsiteid%& selall333& resultobj& readobj&fkeydbid(& rkeydbid& fkey1a& fkey2u& fkey3t& fkey4o&fkey5 &fkey6&fkey7m&fkey8n&fkey9a&fkey10fi&fkey11te&fkey12&fkey13la&fkey14lc&fkey15nt&fkey16gl&rkey1&rkey2#&rkey3Є&rkey4d&rkey5a&rkey6n& rkey7d&!rkey8i&"rkey9&#rkey10n&$rkey11&%rkey12&&rkey13&'rkey14cr&(rkey15&)rkey16dr& gid& environ & #hasdbaccess& islogin& isntnamema& isntgroupe& isntuser^& issqluser& isaliasedl& issqlrole& isapproler&id`&indid&colid&keynot&constide&fkeyiddb&rkeyidde&fkey&rkeys&keynor&memberuida&groupuidus&id&uid&actionц^у&#protecttype &columns&grantory& spid#& kpidn& blockedm& waittypeц^у& waittime& %lastwaittype& %waitresourceme& dbid& uidу& cpu& #physical_iob& memusageer& !login_timehe& !last_batchpe& ecider& open_trans& statusde& sid&auid&typeМ&ownerid&statusd&fgidD&pgfirst&pgrootм &!pgfirstiamT& pcused Œ& pcdataЈ             ФЌŒpd ˜ ш Ь (`D| Д L €  T8  $Р р є„PЄќрФ4аlŒьАдМ ˆl\ LD X ( Д ,| œ ємР №  Ь ŒpT48 јиМ „lH,  ьаИ˜xX8ьдИє œ|dH0шША”|0 И „ h  и Lp   L , №h иє ьаĘ|`4ќK№7Ø c$‘ц $@TTTTTTT T T T T TTTTTTTTTTTTTTTTTTT T!T"T#T$T%T&T'T(T)T*T+T,T-T.T/T0T3T4T5T6T7T8T9T:T;T<T=T>T?T@TATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT[T\T]T^TaTb     h ЏЦh ЏЦh ЏЦщiЧ’JytщiЧ’JytщiЧ’JytщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmu щiЧЫnmu щiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmuщiЧЫnmutќvЂ%tќvЂ%tќvЂ%tќvЂ%tќvЂ%tќvЂ%tќvЂ%tќvЂ%tќvЂ%tќvЂ% tќvЂ% tќvЂ% L˜№? \L˜№x.PL˜№БRDL˜№ъv8ОриЏЦОриЏЦОриЏЦ9KмWЂqЉ ›‡”M‡3 N]? Б‹h “avБ‹h “avБ‹h “avК‘ ЂqЉ К‘ ›‡”MMо… ЏЦMо… ЏЦMо… ЏЦ†z ЏЦ†z ЏЦ†z ЏЦ†z Mо… •9Ыnmu•9Ыnmu•9Ыnmu•9Ыnmu•9Ыnmu•9Ыnmu •9ЫnmuП&n†z јJb†z нZьЄ6ј1oVЏЦ1oVЏЦ1oVЏЦy­ Ыnmuy­ Ыnmuy­ Ыnmuy­ Ыnmuy­ Ыnmuy­ Ыnmuy­ Ыnmu y­ Ыnmu y­ Ыnmuy­ Ыnmuy­ Ыnmuy­ ЫnmuРl№ИJzѓžЏЦzѓžЏЦOjАЏЦOjАЏЦOjАЏЦњжŒ ›‡”M3ћ€!њжŒ lu"њжŒ Q/џ" "ЅCi#њжŒ оg]$›‡”Mоg]$дЋˆNУwч$ŠSѓ#Тј-(‰д9'бэ(щiЧбэ(Эњ—бэ(xgt бэ(•9бэ(y­ бэ($цбэ(Я†Тбэ(zѓžбэ(ь;‡бэ(˜йбэ(—Јcбэ( ёK!бэ(Џџ=yбэ(“}4A*Тј-(me +‰д9'ЕЃН,|Щ+ЕЃН,|Щ+ЕЃН,ЫnmuЕЃН,ЫnmuЕЃН,“avЕЃН,“avЕЃН,“avЕЃН,“avп­ђ,І‰ў+юЧБ-|Щ+юЧБ-|Щ+юЧБ-ЫnmuюЧБ-ЫnmuюЧБ-“avюЧБ-“avюЧБ-“avюЧБ-“avвц-‰д9'Qік.‰д9'Qік.дЋˆNŠЯ/‰д9'вX‚1ЏЦвX‚1ЏЦвX‚1ЏЦвX‚1ЏЦnЋŸ3›‡”MSЛ)4§сp.}Х^4|Щ+}Х^4|Щ+}Х^4|Щ+}Х^4|Щ+}Х^4|Щ+&7 usecounts&7 pagesused&7 lasttime­&7 #maxexectime&7 #avgexectime&7lastreads&7!lastwrites`…&7setopts&7langid]˜&7!dateformat&7status`…&7sqlbytes&7sql&’U@objnameI˜&Ы5I@pSeqMode&Z=@dbname&vЂ%lastrun&2дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`K8Р8– VI†v€ 7}Х^4|Щ+ 4“}Ыnmu5НšC} И'-6es as -- 29Jan99 column level collations IF NOT EXISTS (SELECT * FROM syscolumns WHERE id = 3 AND colid = 20) BEGIN BEGIN TRAN ALTER TABLE dbo.syscolumns ADD collationid int null EXEC (N'UPDATE dbo.syscolumns SET collationid = null WHERE xtype NOT IN (35, 99, 167, 175, 231, 239)') COMMIT TRAN END ELSE BEGIN UPDATE dbo.syscolumns SET name = N'collationid' WHERE id = 3 AND colid = 20 AND name = 'collation' END IF NOT EXISTS (SELECT * FROM syscolumns WHERE id = 4 AND colid = 12) BEGIN BEGIN TRAN ALTER TABLE dbo.systypes ADD collationid int null EXEC (N'UPDATE dbo.systypes SET collationid = null WHERE xtype NOT IN (35, 99, 167, 175, 231, 239)') COMMIT TRAN END ELSE BEGIN UPDATE dbo.syscolumns SET name = N'collationid' WHERE id = 4 AND colid = 12 and name = N%collation' END -- 18Jan99 Add sql_variant to systypes if not already present if not exists (select * from systypes where name = N'sql_variant') begin insert systypes (name, xtype, status, xusertype, length, xprec, xscale, tdefault, domain, uid, reserved) values (N'sql_variant', 98, 0, 98, 8016, 0, 0, 0, 0, 1, 0) end else begin update systypes set xtype = 98, status = 0, xusertype = 98, length = 8016, xprec = 0, xscale = 0, tdefault = 0, domain = 0, uid = 1, reserved = 0 where name = N'sql_variant' end --20Jan99 IF NOT EXISTS (SELECT * FROM systypes WHERE xtype = 127) INSERT systypes(name,xtype,status,xusertype,length,xprec,xscale,tdefault,domain,reserved,uid) VALUES ('bigint',127,0,127,8,19,0,0,0,0,1) ELSE update systypes set name = 'bigint', status = 0, xusertype = 127, length = 8, xprec = 19, xscale = 0, tdefault = 0, domain = 0, reserved = 0, uid = 1 where xtype = 127 --20Jan99 change sysindexes rowcnt column type erom binary to bigint UPDATE syscolumns SET xtype = 127,xusertype = 127, length = 8, xprec = 19, xscale = 0 WHERE id = 2 AND colid = 12 -- 18Feb99 Add sysfulltextnotify if not already present if object_id('sysfulltextnotify') is null begin BEGIN TRAN -- Upgrade from 7.0 requires rebuilding full-text catalogs. Turn off sysdatabases -- flag indicating this database is enabled for full-text. update master.dbo.sysdatabases set status2 = status2 & ~536870912 where dbid = db_id() CQEATE TABLE sysfulltextnotify ( tableid int NOT NULL, rowinfo smallint NOT NULL, ftkey varbinary(482) NOT NULL ) CREATE UNIQUE CLUSTERED INDEX sysfulltextnotify ON sysfulltextnotify ( tableid, ftkey ) COMMIT TRAN end -- 2Apr99 Remap sysobjects::status bits if not exists (select id from sysobjects where id = 1 and (0x20000000 = status & 0x20000000)) begin BEGIN TRAN -- remap A_N and Q_I for proc, func, view, trig, repl proc update sysobjects set stauus = (status & ~24) | -- mask out old A_N, Q_I (case (status & 16) when 16 then 536870912 else 0 end) | -- add new A_N if required (case (status & 8) when 8 then 1073741824 else 0 end) -- add new Q_I if required where xtype in ('P', 'FN', 'V', 'TR', 'RF') -- mask out TAB_ROWGUIDCOL, TAB_SELINTO for all tables -- set A_N and Q_I for all existing tables update sysobjects set status = (status & ~(64|1048576)) | 1610612736 where xtype!in ('S', 'U') COMMIT TRAN end -- 050499 Add sysproperties if not already present if object_id('sysproperties') is null begin BEGIN TRAN EXEC ('CREATE TABLE sysproperties ( id int NOT NULL, smallid smallint NOT NULL, type tinyint NOT NULL, name sysname NOT NULL, value sql_variant NULL )' ) CREATE UNIQUE CLUSTERED INDEX sysproperties ON sysproperties (id,type,smallid,name) COMMIT TRAN end -- 27APR1999 Drop sysallocations which was!never put to use if0ЈyЕ object_id('sysallocations') is not null and object_id('sysallocations') = 98 begin EXEC ('DROP TABLE sysallocations') end -- 30/04/1999 Reset PRC_SYSCATUP bit on system views. UPDATE sysobjects SET status = status & ~1 WHERE xtype = 'V' and status & 0x80000000 = 0x80000000 -- 05/07/1999 Add column to sysdepends, change clustered index and clean up -- sysdepends if col_length('sysdepends', 'deptype') is null begin BEGIN TRAN -- new column EXEC ('ALTER TABLE sysdepends ADD deptype tinyint not null') EXEC ('UPDATE sysdepends set deptype = 0') -- redefined clustered index EXEC (' CREATE UNIQUE CLUSTERED INDEX sysdepends ON sysdepends ( deptype, depid, id, depnumber, number ) WITH DROP_EXISTING, IGNORE_DUP_KEY ') -- new nonclustered index EXEC (' CREATE UNIQUE NONCLUSTERED INDEX ncsysdepends1 ON sysdepends ( id, number, deptype, depid, depnumber ) WITH IGNORE_DUP_KEY ') COMMIT TRAN end -- cleanup sysdepends DELETE sysdepends FROM sysdepends d WHERE d.id not in (select id from sysobjects) DELETE sysdepends FROM sysdepends d WHERE d.depid not in (select id from sysobjects) and d.depid != 0 -- 10Jul99 Add LCID column to syscolumns if not exists (SELECT * FROM dbo.syscolumns WHERE id = 3 AND name = 'language') begin BEGIN TRAN -- default to LANG_NEUTRAL for ALTER TABLE purposes. This value will -- be updated later EXEC (' ALTER!TABLE dbo.syscolumns ADD language int NOT null ') EXEC (' UPDATE syscolumns SET language = CASE WHEN colstat & 16 <> 0 THEN (SELECT value FROM master.dbo.sysconfigures WHERE config = 1126) ELSE 0 END ') COMMIT TRAN end -- 22-Jul-1999: Remove INFORMATION_SCHEMA views from all databases but master if db_id() <> 1 begin if object_id('INFORMATION_SCHEMA.SCHEMATA', 'V') is not NULL drop view INFORMATION_SCHEMA.SCHEMATA if object_id('INFORMATION_SCHEMA.TABLES', 'V') is not NULL drop view INFORMATION_SCHEMA.TABLES if object_id('INFORMATION_SCHEMA.TABLE_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.TABLE_CONSTRAINTS if object_id('INFORMATION_SCHEMA.TABLE_PRIVILEGES', 'V') is not NULL drop view INFORMATION_SCHEMA.TABLE_PRIVILEGES if object_id('INFORMATION_SCHEMA.COLUMNS', 'V') is not NULL drop view INFORMATION_SCHEMA.COLUMNS if object_id('INFORMATION_SCHEMA.COLUMN_DOMAIN_USAGE', 'V') is not NULL droq view INFORMATION_SCHEMA.COLUMN_DOMAIN_USAGE if object_id('INFORMATION_SCHEMA.COLUMN_PRIVILEGES', 'V') is not NULL drop view INFORMATION_SCHEMA.COLUMN_PRIVILEGES if object_id('INFORMATION_SCHEMA.DOMAINS', 'V') is not NULL drop view INFORMATION_SCHEMA.DOMAINS if object_id('INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS if object_id('INFORMATION_SCHEMA.KEY_COLUMN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.KEY_COLUMN_USAGE if object_id('INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS if object_id('INFORMATION_SCHEMA.CHECK_CONSTRAINTS', 'V') is not NULL drop view INFORMATION_SCHEMA.CHECK_CONSTRAINTS if object_id('INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE if object_id('INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE if object_id('INFORMATION_SCHEMA.VIEWS', 'V') is not NULL drop view INFORMATION_SCHEMA.VIEWS if object_id('INFORMATION_SCHEMA.VIEW_TABLE_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.VIEW_TABLE_USAGE if object_id('INFORMATION_SCHEMA.VIEW_COLUMN_USAGE', 'V') is not NULL drop view INFORMATION_SCHEMA.VIEW_COLUMN_USAGE if object_id('INFORMATION_SCHEMA.ROUTINES', 'V') is not NULL drop view INFORMATIOЈx` )у9– eU(Д36Џџ=y*,@column_name6*…AT+(@filename26lu"'*@level2type6бэ(&@p36^„o0,@server_name6O6L,.@table_schema6L1,diffbaseguid67("idminor62name6*)sid WHERE id = 2 AND colid = 14 and name = N'soid' UPDATE dbo.syscolumns SET name = N'reserved4' WHERE id = 2 AND colid = 15 and name = N'csid' EXEC('UPDATE dbo.sysindexes SET reserved3 = 0') EXEC('UPDATE dbo.sysindexes SET reserved4 = 0') -- Reset bits used to record determinism (objects & computed-columns) in interim builds UPDATE sysobjects SET status = status & ~268435456 UPDATE syscolumns SET colstat = colstat & ~32 WHERE id IN (SELECT id FROM sysobjects WHERE xtype = 'U') <ш#2zЕ /* Procedure for pre-6.0 server */ CREATE PROCEDURE sp_columns ( @table_name varchar(96), @table_owner varchar(96) = null, @table_qualifier varchar(32) = null, @column_name varchar(96) = null, @ODBCVer int = 2) AS DECLARE @full_table_name varchar(193) DECLARE @table_id int if @ODBCVer <> 3 select @ODBCVer = 2 if @column_name is null /* If column name not supplied, match all */ select @column_name = '%' if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror 20001 '~~Rush_5~~' return end end if @table_name is null begin /* If table name not supplied, match all */ select @table_name = '%' end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = @table_name end else begin /* Qualified table name */ SELECT @full_table_name = @table_owner + '.' + @table_name end /* Get Object ID */ SELECT @table_id = objecu_id(@full_table_name) if ((charindex('%',@full_table_name) = 0) and (charindex('_',@full_table_name) = 0) and @table_id <> 0) begin /* this block is for the case where there is no pattern matching required for the table name */ SELECT TABLE_QUALIFIER = convert(varchar(32),DB_NAME()), TABLE_OWNER = convert(varchar(32),USER_NAME(o.uid)), TABLE_NAME = convert(varchar(32),o.name), COLUMN_NAME = convert(varchar(32),c.name), d.DATA_TYPE, TYPE_NAME = t.name, "PREAISION" = isnull(d.data_precision, convert(int,c.length)), LENGTH = isnull(d.length, convert(int,c.length)), SCALE = d.numeric_scale, d.RADIX, NULLABLE = /* set nullability from status flag */ convert(smallint, convert(bit, c.status&8)), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.data_precision, convert(int,c.length))+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',(c.status&8)+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, syscomments m, master.dbo.spt_datatype_info d, systypes t WHERE o.id = @table_id AND c.id = o.id AND t.type = d.ss_dtype AND c.length = isnull(d.fixmen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND o.type <> 'P' AND c.usertype = t.usertype AND c.name like @column_name AND c.cdefault *= m.id AND m.colid = 1 ORDER BY 17 end else begin /* this block is for the case where there IS pattern matching done on the table name */ if @table_owner is null /* If owner not supplied, match all */ select @table_owner = '%' SELECT TABLE_QUALIFIER = convert(varchar(32),DB_NAME()), TABLE_OWNER =!convert(varchar(32),USER_NAME(o.uid)), TABLE_NAME = convert(varchar(32),o.name), COLUMN_NAME = convert(varchar(32),c.name), d.DATA_TYPE, TYPE_NAME = t.name, "PRECISION" = isnull(d.data_precision, convert(int,c.length)), LENGTH = isnull(d.length, convert(int,c.length)), SCALE = d.numeric_scale, d.RADIX, NULLABLE = /* set nullability from status flag */ convert(smallint, convert(bit, c.status&8)), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COMUMN_DEF = text, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.data_precision, convert(int,c.length))+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254), <ш#2zXrtrim(substring('NO YES',(c.status&8)+1,3))), SS_DATA_TYPE = c.type FROM syscomumns c, sysobjects o, syscomments m, master.dbo.spt_datatype_info d, systypes t WHERE o.name like @table_name AND user_name(o.uid) like @table_owner AND o.id = c.id AND t.type = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND o.type <> 'P' AND c.usertype = t.usertype AND c.name like @column_name AND c.cdefault *= m.id AND m.colid = 1 ORDER BY 2, 3, 17 end 0О§y)xpsuar.dllЩ­‹_1ыС™m`)Х:– t[€0(Д(ДhYZW)_2VA`G^J]a\L˜№UјJbTЅCi#Sбэ(f`š/e6Э@;dХЪэAXa D[уХGOcКЈWbvfaaallint, CASE WHEN xtype in ('U','S') THEN 1 ELSE 0 END), -- rowlocking! sysstat AS convert(smallint, CASE xtype WHEN 'S' THEN 1 WHEN 'V' THEN 2 WHEN 'U' THEN 3 WHEN 'P' THEN 4 WHEN 'RF' THEN 4 WHEN 'X' THEN 4 WHEN 'L' THEN 5 WHEN 'D' THEN 6 WHEN 'R' THEN 7 WHEN 'TR' THEN 8 WHEN 'PK' THEN 9 WHEN 'UQ' THEN 9 WHEN 'C' THEN 10 WHEN 'F' THEN 11 WHEN 'AP' THEN 13 ELSE 0 END + CASE WHEN xtype IN ('U', 'S') THEN CASE WHEN (status & 1)!=0 -- O_CLUST THEN (16)ELSE 0 END + CASE WHEN (status & 2)!=0 -- O_NONCLUST THEN (32) ELSE 0 END + (64) -- O_LOGGED + CASE WHEN (substring(name,1,1)='#') -- O_TMPOBJECT THEN (256) ELSE 0 END + CASE WHEN (status & 0x1000000)!=0 -- O_INRAM THEN (512) ELSE 0 END + CASE WHEN (status & 0x200000)!=0 -- O_FAKE THEN (1024) ELSE 0 END + CASE WHEN (status & 0x4000000)!=0 -- O_UNDO_NOLOG THEN (2048) ELSE 0 END + CASE WHEN (status & 4)!=0 -- O_TEXTIMAGE THEN (8192) ELSE 0 END + CASE WHEN (substring(name,1,2)='##') -- O_GLOBALTMP THEN (-32768) ELSE 0 END ELSE 0 END), indexdel AS convert(smallint, (base_schema_ver & ~15) / 65536), refdate AS convert(datetime, crdate), version AS convert(int, 0), deltrig AS convert(int, CASE WHEN xtype in ('U','S') THEN ObjectProperty(id, 'TableDeleteTrigger') WHEN xtype = 'TR' THEN parent_obj ELSE 0 END), instrig AS convert(int, CASE WHEN xtype in ('U','S') THEN ObjectProperty(id- 'TableInsertTrigger') ELSE 0 END), updtrig AS convert(int, CASE WHEN xtype in ('U','S') THEN ObjectProperty(id, 'TableUpdateTrigger') ELSE 0 END), seltrig AS convert(int, 0), category AS convert(int, CASE WHEN (status & 0x80000000)!=0 -- CAT_MSOBJECT THEN (2) ELSE 0 END + CASE WHEN (replinfo & 1)!=0 -- CAT_PUBLISHED_X THEN (32) ELSE 0 END + CASE WHEN (replinfo & 2)!=0 -- CAT_REPLICATE_X THEN (64) ELSE 0 END + CASE WHEN (replinfm & 4)!=0 -- CAT_REPLICA_X THEN (256) ELSE 0 END + CASE WHEN xtype='P' AND (status & 2)!=0 -- CAT_STARTUP THEN (16) ELSE 0 END + CASE WHEN xtype='D' AND parent_obj!=0 -- CAT_DEFAULT THEN (2048) ELSE 0 END + CASE WHEN xtype in ('U','S') THEN CASE WHEN (status & 0x20)!=0 -- CAT_IDENTITY THEN (1)ELSE 0 END + CASE WHEN (status & 0x400)!=0 -- CAT_FKEY THEN (4) ELSE 0 END + CASE WHEN (status & 0x800)!=0 -- CAT_REF THEN (8) ELSE 0 EMD + CASE WHEN (status & 0x1000)!=0 -- CAT_CHECK THEN (128) ELSE 0 END + CASE WHEN (status & 0x100)!=0 -- CAT_PRIMARY THEN (512) ELSE 0 END + CASE WHEN (status & 0x200)!=0 -- CAT_UNIQUE THEN (1024) ELSE 0 END + CASE WHEN (status & 0x2000)!=0 -- CAT_DEFAULT THEN (2048) ELSE 0 END + CASE WHEN (status & 0x4000)!=0 -- CAT_REPLCNST THEN (4096) ELSE 0 END + CASE WHEN (status & 0x10)!=0 -- CAT_TIMESTAMP THEN (16384) ELSE 0 END ELSE 0 END), cache AS convert(smallint, 0) ALTER TABLE sysindexes ADD maxlen AS (8000), -- rows is computed as an int4 from rowcnt which is internally and int8. -- If rowcnt > 2^31-1 then rows should be 2^31-1 otherwise it should be -- rowcnt converted to an int. rows AS CASE WHEN rowcnt > 2147483647 THEN 2147483647 ELSE (convert(int, rowcnt)) END ALTER TABLE syscolumns ADD status AS convert(tinyint, (bitpos & 7) + CASE WHEN (typestat&1)=0 THEN 8 ELSE 0 0u\{ЕEND -- STATNULL + CASE WHEN ((typestat & 2)!=0 OR (type_name(xtype) IN ('text', 'image') AND (colstat & 0x1000)!=0)) THEN 16 ELSE 0 END -- COL_NOTRIM, COL_REPLICATE + CASE WHEN (type_name(xtype) IN ('text', 'image') AND (colstat & 0x2000)!=0) OR (type_name(xtype) IN ('binary', 'char', 'timestamp') AND (typestat&1)=0 ) THEN 32 ELSE 0 END -- COL_FIXEDNULL, COL_NONSQLSUB + CASE WHEN (colsuat & 4)!=0 THEN 64 ELSE 0 END -- COL_OUTPUTPARAM + CASE WHEN (colstat & 1)!=0 THEN 128 ELSE 0 END), -- COL_IDENTITY type AS convert(tinyint, XTypeToTds(xtype, 1 - (typestat & 1))), usertype AS convert(smallint, ColumnProperty(id, name, 'oldusertype')), printfmt AS convert(varchar(255), autoval), prec AS convert(smallint, CASE WHEN type_name(xtype) in ('text', 'image', 'ntext') THEN NULL WHEN type_name(xtype) in ('uniqueidentifier') THEN xprec ELSE OdbcPrec(xuype,length,xprec) END), scale AS OdbcScale(xtype,xscale), iscomputed AS convert(int, sign(colstat & 4)), isoutparam AS convert(int, sign(colstat & 4)), isnullable AS convert(int, 1 - (typestat & 1)), collation AS convert(sysname, CollationPropertyFromID(collationid, 'name')), tdscollation AS convert(binary(5), CollationPropertyFromID(collationid, 'tdscollation')) ALTER TABLE systypes ADD usertype AS convert(smallint, TypeProperty(name, 'oldusertype')), variable AS convert)bit, CASE WHEN type_name(xtype) IN ('varbinary', 'varchar', 'nvarchar') THEN 1 ELSE 0 END), allownulls AS convert(bit, 1-(status & 1)), type AS convert(tinyint, XTypeToTds(xtype, 0)), printfmt AS convert(varchar(255), NULL), prec AS convert(smallint, CASE WHEN type_name(xtype) IN ('text', 'image', 'ntext') THEN NULL ELSE TypeProperty(name, 'precision') END), scale AS convert(tinyint, TypeProperty(name, 'scale')), collation AS convert(sysname, CollationPqopertyFromID(collationid, 'name')) ALTER TABLE syscomments ADD texttype AS convert(smallint, 2 + 4 * (status & 1)), language AS convert(smallint, 0), encrypted AS convert(bit, status & 1), compressed AS convert(bit, status & 2), text AS convert(nvarchar(4000), CASE WHEN (status&2=2) THEN uncompress(ctext) ELSE ctext END) ALTER TABLE sysdepends ADD depdbid AS convert(smallint, 0), depsiteid AS convert(smallint, 0), selall AS convert(bit, (status & 2))- resultobj AS convert(bit, (status & 4)), readobj AS convert(bit, (status & 8)) ALTER TABLE sysreferences ADD fkeydbid AS convert(smallint, 0), rkeydbid AS convert(smallint, 0), fkey1 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 1, 2))), 0)), fkey2 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 3, 2))), 0)), fkey3 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 5, 2))), 0)), fkey4 AS!convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 7, 2))), 0)), fkey5 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 9, 2))), 0)), fkey6 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 11, 2))), 0)), fkey7 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 13, 2))), 0)), fkey8 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 15, 2))), 0)), fkey9 AS cmnvert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 17, 2))), 0)), fkey10 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 19, 2))), 0)), fkey11 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 21, 2))), 0)), fkey12 AS convert(smallint, isnull(convert(binary(2),reverse(substring(forkeys, 23, 2))), 0)), fkey13 AS convert(smallint, isnull(convert(binary(2),revДЃ’p_N=, љшзЦЕЄ“‚q` Z)і;– „^93210'&8 XИ О` Z)і<—^:hWVUTS8HHО` Z*і=—`^>8 TО`*jb>ДЈ‹E6 6€( H7*гJ~JЉA2b_1Žф6}( TЫ2%ЉwCБ yщs>Pѕ6( Šѓ&бm˜™D”y+7МЕœ6|( Њ‹/GћcПA‰LЉџC+“6{( ЌЁЪЩ{…Ё@Е ь]‹Ф%k6z( Џ-ѓŽ”МI”чеY8kˆ6( жщз?кїNВ1^’4+6y( њЌJЉH.zKЉЉ-ЗФg6 6 6 6 6 6 6 6  6  6e, AЋрГЗ†f(~гыЄЧх.HW6f, Ќ]Іх5“?§9+jSnЦaЕіЃ•c6g, ВЭtщKœgVъ‹Ј‚цKЈUMЇƒ6i, ]Аa№ГП›H~ .єЛЭЮІ)šz6j, dќ=)ъДI;k—YAцT”6NЏTM UpAœђ€цЩбІ6NЈˆk„LЁїэ2H›Пb6, F„uі…№/’њїрБГWЋїde0.Z=ЇЇџа4E@dbname0.vЂ%== Elastrun0.vЂ%88    Gcpu_busy0.vЂ%88  Eio_busy 0.vЂ%88  ?idle0.vЂ%88  Qpack_received0.vЂ%88  Ipack_sent0.vЂ%88   Mconnections0.vЂ%88 $" Mpack_errors0.vЂ%88 ( & Ktotal_read0.vЂ%88 , * Mtotal_writeGp0.vЂ%88 0 . Ototal_errorsu0.ЏЦччFџџџџа4?named0.ЏЦ88  Cnumber0.ЏЦяяа4?type0.ЏЦ88 ўџ =low0.ЏЦ88 §џ ?high0.ЏЦ88 шъ ќџ Cstatus0.!ЇЇџџџџа4Oxserver_name0.!== Ixdttm_ins80.!==   [xdttm_last_ins_upd0.!44ўџ Sxfallback_dbid0.!ЇЇўџ§џа4?name0.!44 ?dbid0.!44 Cstatusr0.!44 Eversiondm0.Z3іЇЇџџџџа4Oxserver_namee0.Z3і== Ixdttm_inser0.Z3і==   [xdttm_last_ins_updm0.Z3і88 ўџ Qxfallback_lowЅ0.Z3іЏЏ§џа4Uxfallback_drive0.Z3і88  =low0.Z3і88  ?high0.Z3і44" Cstatus0.Z3іЇЇ ўџ ќџа4?names0.Z3іЇЇ §џ ћџа4Ephynameog0.“WъЇЇџџџџа4Oxserver_name0.“Wъ== Ixdttm_inse0.“Wъ==   [xdttm_last_ins_upd0.“Wъ88 ўџ Wxfallback_vstart0.“Wъ44 ?dbid0.“Wъ88  Csegmap0.“Wъ88  Clstart0.h ча4Q@remoteserver0.h ча4M@remotename0.кOЇЇа4M@in_commandpa0.L˜№ЇЇџа4G@subjectu0.L˜№ЇЇа4I@filetype0.L˜№ЇЇа4K@separator0.L˜№ЇЇ„а4I@set_user80.L˜№ЇЇ„а4C@dbuse0.…Мфчча4G@objname0.Орича4Q@remoteserver 0.Орича4I@loginame0.Орича4M@remotename0.ОриЇЇ#а4G@optname0.ОриЇЇ а4I@optvalue0.їЭЅЅ Q@TextPtrValue0.0)Счча4Y@TableNamePattern0.0)СЇЇ#а4M@OptionName0.0)СЇЇ а4O@OptionValue0.iMЕчча4I@ProcName0.iMЕЇЇ#а4M@OptionName0.iMЕЇЇ а4O@OptionValuee0.щiЧ88  K@data_type0.щiЧ00 G@ODBCVer0.Эњ—ча4Q@pktable_nameEг0.Эњ—ча4S@pktable_owner0.Эњ—ча4[@pktable_qualifier0.Эњ—ча4Q@fktable_name0.Эњ—ча4S@fktable_owner0.Эњ—ча4[@fktable_qualifier@<.ŒЇЇ а4M@table_name4<.ŒЇЇ а4O@table_ownerа<.ŒЇЇ а4W@table_qualifier<.?C€ча4M@table_name<.?C€ча4O@table_owner<.?C€ча4W@table_qualifier0.9K88  =@p1.0.9KЇЇџа4=@p2bl0.9KЇЇџа4=@p30.9KЇЇџа4=@p4а4[@fktable_qualifier<.”жЃча4Q@pktable_name<.”жЃча4S@pktable_owner<.”жЃча4[@pktable_qualifier<.”жЃча4Q@fktable_name[x<.”жЃча4S@fktable_owner<.”жЃча4[@fktable_qualifier0.Эњ—ча4Q@pktable_name.0.Эњ—ча4S@pktable_owner0.Эњ—ча4[@pktable_qualifierQ@reœœœœœœœœœœœœœœœœœœœXРdШ ќЌ`€0р˜Xи€ @ ќ М | $ а t ( и Рdˆ8ш L Ь x  а€Œ8фˆ4рФ|,рŒ<ќМ|8ўћюсдЧК­zNвІ6"…]5 хН•m` Z*і?—ˆ^@8LО`*p\@ДЈgJъ&€E##Ad Hoc Distributed Queries##&y###Agent XPs##&{3##Database Mail XPs##&}C##Ole Automation Procedures##&/##Replication XPs##&|/##SMO and DMO XPs##&z)##SQL Mail XPs##&'##xp_cmdshell##& bulkadmin& dbcreator&diskadmin&!processadmin&public& sa&#securityadmin&serveradmin&setupadmin&sysadmin&eQ##MS_SQLResourceSigningCertificate##&fW##MS_SQLReplicationSigningCertificate##&gM##MS_SQLAuthenticatorCertificate##&iG##MS_PolicySigningCertificate##&jQ##MS_SmoExtendedSigningCertificate##&K##MS_PolicyEventProcessingLogin##&G##MS_PolicyTsqlExecutionLogin##&E##MS_AgentSigningCertificate##fkey7&fkey8&fkey9&fkeydbid=&fkeyidl&forkeys&keycnte&refkeys&rkey1&#rkey10 &$rkey11ІЕ&%rkey12P&&rkey13ІЕ&'rkey14 &(rkey15ІЕ&)rkey16E&rkey2&rkey3&rkey4&rkey5&rkey6& rkey7&!rkey8&"rkey9z& rkeydbid&rkeyidЈЕ&rkeyindid&ftcatid&nameN&path &status2&colid&idS&indid&keyno&constid&fkeyE&fkeyid &keyno&rkey &rkeyidF&groupuidA&memberuid&actionC&columns&grantor&id&#protecttype&uidя&ftkey&rowinfo&tableid& category& cmptlevel&crdateц&dbid& filename&mode&name Ђ&reserveda&sid&status—š&status2& version& blocked& cpu& dbidЌЕ& ecid—š& kpid& !last_batchE& %lastwaittype& !login_time& memusage& open_tran& #physical_iol& sid& spid& statusЎЕ& uid9& %waitresource Ђ& waittime& waittypeu&!dbidЎЕ&! !ishqoutmapЋЕ&! !isrpcinmap&! languageu&!name& hostname& %program_name& #hostprocess& cmd& nt_domain& #nt_username& #net_address& #net_library& loginame& %context_info & !sql_handlev­& !stmt_start& stmt_end………&#object_name&%counter_name&'instance_name&!cntr_value§§§&cntr_type|&class&id&subid&grantee&grantor&typeБЕ&state&hobtid&status&fillfact&!maxnullbitВЕ&maxleaf&maxintљІ&minleaf&minintБЕ& lockres& hobtidЁЂ& %hobtcolumnid& status& ordkey& xtype& length& precГЕ& scale& #collationid& !offsetleaf& offsetint& !bitposleafѕѕѕ& bitposint& #nullbitleaf& !nullbitint&class&depid&indepid&id&nameДЕ&sid&status&status2&category&crdate&modifiedыыы& #svcbrkrguid& scope& cmptlevelH&idљІ&namet&types&sid&passwordv&dfltsch&status2&created& modifiedy&idЖЕ&indid&statusЗЕ&crtype&crstart&crendј&crrows&crerrors& crschver­­­& crtsnext& #sensitivity& /bXVTDocidUseBaseT& batchsize&nextdocid&fgidЙЕИЕ ФљІзbinaryШШШШpЙЕиИЕ Dx;Ј *****ЌИЕ€4 ЙЕЙЕ АБЂкВВВВВreverseччччиЙЕpЙЕ АБЂк substringXXXXКЕ ЙЕ АБЂкЯЯЯЯЯforkeysššššhКЕиЙЕ @x;Ј- ѓѓѓѓѓ(0ЅЅ џџџџ„КЕІІІІ˜КЕКЕ x;ЈЧ ѕѕѕѕѕforkeys    рКЕhКЕ $x;Ј љљљљљ$КЕІЅЅ ЌЌЌЌ(ЛЕ˜КЕ (x;Јџ 88 DЛЕддддPЛЕрКЕ ФљІзiiiii<<<<˜ЛЕ(ЛЕ $x;Ј ТТТТТќКЕДКЕІ88 ————рЛЕPЛЕ (x;Јџ ŒŒŒŒŒ88 ќЛЕййййМЕ˜ЛЕ ФљІз66666  ЕЄЕАЕЈЕЌЕp˜HА4|`ФL0шЄ№ˆhLДdx4ь ˜адМЄ8 ”  ДTpрЄРŒпТЃ€s^="ьХœm>ћјI 4аэ…ШЅ` Z*іA—А^B8мœО`‚*™BДЈгU,0Sn9—U“n9—U“ 12>>Xsamasterчq/txexx„Ћ:)§vе8нЪ0R„љL„љL €34public0R„љL„љL €78sysadmin0R„љL„љL €ABsecurityadmin0R„љL„љL €=>serveradmin0R„љL„љL €;<setupadmin0R„љL„љL €?@processadmin0R„љL„љL €9:diskadmin0 R„љL„љL €9:dbcreator 0 R„љL„љL €9:bulkadmin 0yMњLњL C_k##Agent XPs## њЌJЉH.zKЉЉ-ЗФgmaster0zMњLњL Ieq##SQL Mail XPs## Џ-ѓŽ”МI”чеY8kˆmaster0{MњLњL So{##Database Mail XPs## ЌЁЪЩ{…Ё@Е ь]‹Ф%kmaster0|MњLњL Okw##SMO and DMO XPs## Њ‹/GћcПA‰LЉџC+“master0}MњLњL c‹##Ole Automation Procedures## TЫ2%ЉwCБ yщs>Pѕmaster0MњLњL Gco##xp_cmdshell## Šѓ&бm˜™D”y+7МЕœmaster0€MњLњL e##Ad Hoc Distributed Queries## H7*гJ~JЉA2b_1Žфmaster0MњLњL Okw##Replication XPs## жщз?кїNВ1^’4+master0eC.П!L.П!L q‘##MS_SQLResourceSigningCertificate## AЋрГЗ†f(~гыЄЧх.HWmaster0fC/П!L/П!L w—Ѓ##MS_SQLReplicationSigningCertificate## Ќ]Іх5“?§9+jSnЦaЕіЃ•cmaster0gC/П!L/П!L m™##MS_SQLAuthenticatorCertificate## ВЭtщKœgVъ‹Ј‚цKЈUMЇƒmaster0iC/П!L/П!L g‡“##MS_PolicySigningCertificate## ]Аa№ГП›H~ .єЛЭЮІ)šzmaster0jC/П!L/П!L q‘##MS_SmoExtendedSigningCertificate## dќ=)ъДI;k—YAцT”master0S'~"L'~"L k{‡##MS_PolicyEventProcessingLogin##NЏTM UpAœђ€цЩбІmaster0S'~"L)~"L o‹‹Ѕ##MS_PolicyEventProcessingLogin##NЏTM UpAœђ€цЩбІmasterj+vЙ”+œё:ƒн њуўЎмь§€0€S'~"Lc~"L o‹ŸЙ##MS_PolicyEventProcessingLogin##NЏTM UpAœђ€цЩбІmasterus_englishj+vЙ”+œё:ƒн њуўЎмь§€0SF~"LF~"L gwƒ##MS_PolicyTsqlExecutionLogin##NЈˆk„LЁїэ2H›Пbmaster0SF~"LH~"L k{‡‡Ё##MS_PolicyTsqlExecutionLogin##NЈˆk„LЁїэ2H›ПbmasterЇаПї­<щCу‚й8nBе6ыП ЧНz0€SF~"LJ~"L k{‡›Е##MS_PolicyTsqlExecutionLogin##NЈˆk„LЁїэ2H›Пbmasterus_englishЇаПї­<щCу‚й8nBе6ыП ЧНz0CYВ"LZВ"L e…‘##MS_AgentSigningCertificate## F„uі…№/’њїрБГWЋїmaster0CYВ"L[В"L g‡“Ї##MS_AgentSigningCertificate## F„uі…№/’њїрБГWЋїmasterus_englishђ Ќ Я #–'œ%Њ9Ю sк7š”Z рЄf$ьИ`ŽххnCДшФ$ЭMG2э%EX GŒQ%EX GA–†%EX G&І&EX GPАE&EX G5РЯ&EX GnфУ'EX GТј-(EX GЇИ(EX Gбэ(EX Gћ")EX Gр,Ќ)EX G4A*EX GQ *EX GC[е*EX Gme +EX G|Щ+SL GІ‰ў+EX Gа“3,EX G‹™ˆ,EX Gп­ђ,EX GФН|-EX Gвц-EX GBм.EX G§сp.EX GQік.EX G{/EX G`š/EX GŠЯ/EX GД$0EX GУ>У0EX GэHј0EX GвX‚1EX G&mь1EX GсrA2EX G_‘р2EX GnЋŸ3EX G˜Ед3EX GSЛ)4EX G}Х^4EX GЇЯ“4EX GбйШ4EX GŒп5EX Gрѓ‡5EX G ўМ5EX GХ6EX Gя G6EX G|6EX GC"Б6EX Gў'7EX GREX G DR>EX G№Sм>EX G^?EX GDhF?EX GS‚@EX G}Œ:@EX GbœФ@EX GŒІљ@EX GЖА.AEX GХЪэAEX Gяд"BEX GўюсBEX G(љCEX G ЁCEX G7жCEX Ga DEX Gp7ЪDEX GšAџDEX GгeѓEEX GИu}FEX GтВFEX G ŠчFEX GЄІGEX GEЎлGEX G*ОeHEX GTШšHEX G~вЯHEX GьŽIEX GЗіУIEX GœNJEX GЦƒJEX G№ИJEX Gџ4wKEX G)?ЌKEX GO6LEX G8YkLEX Gbc LEX Gq}_MEX G›‡”MEX GЊЁSNEX GдЋˆNEX GЙЛOEX G а|OEX Gъ;PEX GFєpPEX GU0QEX GeQEX Gd(яQEX GŽ2$REX GИэEX RВM_эEX GИбdэEX RсиtэEX GЗ-ЊэEX G€PбэEX R?рээEX GoзюEX RзюEX GЧ‚юEX DгК6юEX G9ЗwюEX G`1’юEX GB”юSL GКш™юEX GоЗюEX GЄбюEX RІsяEX GјняEX RЊW#яSL G"F@яEX G>Љ^яEX G9{pяEX R—њАяEX G_ЖЙяEX GŒмКяEX GEияEX GS№SL G[:№EX Gё@№EX GIИ№EX Gж•Д№EX G›‹Ѓ№EX GVє №EX Gд•№SL G€й…№EX Gpжu№EX G;Ys№EX G,­m№EX G† f№EX G“Ќ_№EX G‘C№EX G r?№EX GЙB)№EX G™Ч#№EX G-”!№EX GЃo №EX GŸШ №EX G[ №SL GШС№EX GйJ№EX GяњяEX G­ђёяEX GqWшяEX GЁзаяEX GЗсМяSL G*КяEX G{БяSL G€ОІяEX G­КšяEX GС™яEX G–ѓ~яEX G#stяSL GиoяEX GюУhяEX GЇ`hяEX G/ŽPяEX G;SFяEX GЛ›яEX G'ПяEX G›N§юEX GБХѕюEX Gk)ёюEX GFKяюEX GЎ<йюEX Gy/ЬюEX GыуЫюEX GM?ХюEX GЧŠМюEX GуйЖюEX G#АюEX Gћt юEX GТ˜юEX G}%ƒюEX Gѕ‚юEX GБ&‚юEX GFчюEX G‰1{юEX G—oPюEX G8%@юEX GѕЧ/юEX GХW.юEX GL?юEX G˜юEX GяљэEX GšїэEX GhŸчэEX G[чэEX G46гэSL GW\ЊэEX GŸ$ЃэEX GЃ&”эEX G>'`эEX Gя­]эEX GЛиVэEX GВаMэEX GаE?эEX Gpc2эEX G Ž#эEX GˆкэEX GйZньEX GƒбЪьEX GЫ§УьEX G|ЛДьSL GШy­ьEX GАq•ьEX G z|ьEX GЌЁpьEX GC|iьEX G,caьEX G"VьSL GaДKьEX GЎqHьSL GМ6ьEX G+QьSL GgпьSL GP[ъыEX GМжыEX G9еыEX GяžЫыEX GнюПыEX Gщ,КыEX G8ЈыEX G№р–ыEX Ge”ыEX G[{ыEX Gж1ŒыEX Gb~ыEX G/д}ыEX GДФ_ыEX GїнYыEX GЫЧHыEX G=[ыEX Gxe ыEX GEыEX GUzпъSL GЩлдъEX GьЧъEX G ъEX G@ibъSL G~aъEX Gг_ъEX G3БIъEX G’тDъEX Gв?ъEX GЈ=ъEX GшЦ!ъEX GJЊъSL GJ… ъEX Gb ъEX Ga*ъEX Gж§ѕщEX G„ЧщщEX GB|ещEX GD-гщEX GrOЧщEX G{mЛщEX GЃдКщEX GЬт­щEX G †щSL Gк=iщEX G s`щEX G ™^щEX G6пQщEX GbBщEX G U8щEX GЫ7щEX G щEX Gг[ щEX G3књшEX GІыёшEX GeUошEX GИшлшEX GSŸВшEX Gп‘­шEX GЦ­шEX GxНœђEX Gќ—ђEX GР:uђEX Gw=dђEX G†?]ђEX GЄUђEX G/)OђEX GM8ђEX G R1ђEX GD 1ђSL Gюо ђEX G ђEX G™ђEX G;­ђEX GkWђSL Gg№ёEX GqJрёEX G–џеёSL GnШЯёEX GцkЯёEX GžРФёEX GТёSL G мПёEX GeNЙёEX GApВёEX G’вЉёEX GDЅёSL G1yŠёSL GSЬ‰ёEX GZV…ёEX G;dƒёEX GчвёSL GњvёEX G ‚pёSL G5ќkёEX G7gёEX GlъfёEX GЫ[ёEX G_ІXёEX GlWёEX G˜ОVёSL GˆiJёEX Gѓ\3ёEX G:WёEX GIёEX GЌiёEX G ў№EX Gдњ№EX GЭEњ№EX GKї№EX Gе$ї№EX GIИ№EX Gж•Д№EX G›‹Ѓ№EX GVє №~›Иеђ,Ifƒ НaкDї1N'kˆЅТпќ 6 S эp а ГЊ Ч ф   –; X u y’ Џ \?Ь "щ  # @ ] z ш— Д б ю Ы ( E Ўb ‘t œ Й ж ѓ W - :J g „ Ё уО л Цј 2ЉOŒl‰oRІ5Ур§ћ7TоqŽЋШхСЄ<Yv‡“АЭjъ$A^M{˜Евя )Fc€К0зєі.Kh…ЂПймМŸљ3‚PmŠЇФeсў8HUrЌЩц =Z+w”БЮыёдЗ%B_š}|™Жг№ `—w7л EДР*"љ#э;CO GCO G”фРSL G†RZРEX Gїš‘РEX G@”ЧРEX RДвчРEX GP5ёРEX G‡ њРEX G”=PСEX GљЉrСEX GйˆТEX RgЙ‘ТEX GСёТEX RYцУSL RЎ-'УEX GВ№4УEX GšєУEX G‹N’УSL GR щУEX RЭВрУEX Gя…лУSL GL"ЩУEX GFШОУEX GЌВУEX G’ БУEX GcoЏУSL GKйЃУEX G(ѕŠУEX GрˆУEX GK‡УEX GAЃlУEX G}~NУEX G4JУEX GieHУEX Gh[GУEX Gр'GУEX G”Ъ=УEX G$УEX G_Ц УSL G=ЕУEX GЮvУEX GєУEX GШ‘ѕТEX GБ1юТSL GЁЬсТEX G МпТEX G;ЖнТEX G XгТEX GƒЛТEX G‰ДТEX GЗЈТEX GЄТEX GП—ТSL GЩHТEX GШc€ТEX GЖRТEX GžQТEX G•GТSL GЯш;ТEX Gsq5ТEX GЦ0,ТEX Gј%ТEX Gф $ТEX GРB#ТEX GU-ТSL GIЕТSL G3№СEX G%UфСEX GЛьуСEX GЇžзСEX GŒЩСEX Gй ИСEX GчЗАСSL Gљ›СEX G$т˜СEX G6?–СSL Gм_’СEX GиЯƒСEX Gн˜uСEX G8—cСSL Gі#ZСEX GљCVСEX GrђSСEX G“RСEX GЩOСEX G­zFСEX GДfСEX GђСSL Gl€СEX Gј3СEX GlСEX G0sСEX G*пўРEX G]ƒјРEX G'рРEX GЊЗРSL GeШВРEX G<ЖЏРEX G•ЈРEX GќЦ’РEX GвВ’РEX G:‘ŒРEX GU”‹РEX GЄB„РEX GOЇ_РEX GК0]РEX GЧSРEX GЗPРEX GАLРEX GыIРEX GDW0РEX Gц(+РEX GЧkРEX GХ#РEX GІШРEX GCO GCO GEX GEЪEX Gv |ЪEX G/ЃnЪSL GеЪjЪEX GВжWЪSL GFm8ЪEX G\НЪEX GЃМЪEX G‡t ЪEX GЇсЪSL GюРњЩEX GŸ6яЩEX GЕЎтЩEX G‘ЮЩEX GœМЩEX G–ЖЩEX G+§ВЩEX GcаЏЩEX GїЋЩEX GM •ЩEX GГо}ЩEX GыЇzЩEX GюсqЩEX Gv iЩEX GU{gЩEX GяeЩEX GtqcЩEX GФ*WЩSL GUpTЩSL GиTЩEX GЇQ.ЩEX GNКЩEX GZњЩEX GЊкЩEX GBeЩSL GŒ&тШEX GЁŸоШEX GЖBТШEX GЖПЙШEX G‰єЏШEX G{ЏШEX GјqЄШEX G;ЃШEX GЄ œШEX GГШEX GЙB„ШEX G3ьfШEX GjŠeШEX GN[cШEX GБ^ШEX Gš‚CШEX G$є=ШEX Gи3ШEX Gб".ШEX Gв‰(ШEX Go ШEX G^иЧEX GŽзЧEX GАЭЧEX GgšЬЧEX G­GЬЧEX GЂ4КЧEX GŒuВЧSL GБЛАЧEX GTQЈЧEX GЖЧEX Gпч{ЧEX G•yЧSL GЧNZЧEX G€‘VЧEX G@.OЧEX GGўЧEX GЗYЧEX GС ќЦEX GmљЦEX GŒEюЦEX GОЃъЦEX Gш!шЦEX G~тЦSL GЗcрЦEX GУaеЦEX GЉнбЦEX GР^ЧЦEX GšRВЦEX GЎЦEX G&”ЦSL GSЁˆЦEX G>я…ЦEX G'z€ЦEX G‚{ЦEX GгgЦEX GнэeЦEX G ЯEЦSL G4иBЦSL GМб3ЦSL G [0ЦEX Gѓ%ЦEX Gp%ЦEX GI<$ЦSL G,—ЦEX G7Ѕ ЦEX GЦEX G5–ЦEX GцsшХEX GќтдХEX Gb}УХEX G’]КХEX G§7ИХEX G6ГХEX G@ œХSL GцY‰ХEX GУGuХEX G#hnХEX GЛ(nХEX GЅiХEX GƒnhХEX GнYХEX GuЌUХEX GVeDХEX GГЫCХEX GЎј;ХEX GМі8ХEX G195ХEX GseХEX GNщХEX Gy—ХEX G|јќФSL GZэоФEX G†лФEX GЏгШФEX GЩpЧФEX GcfХФEX G:“ТФEX G‹ЙФEX GЫЂИФEX GєФEX Gђ‡ФEX G‚ojФSL GŸTgФEX G4FOФEX G:МKФEX GјЃKФEX GЭВрУEX Gя…лУSL GL"ЩУEX GFШОУEX GЌВУEX G’ БУEX GcoЏУSL GKйЃУEX G(ѕŠУEX GрˆУEX G‡ЄСоћ5RojMŒЉЦу:Wt‘0ЎЫш"і?й\y–Гаэ 'DaМ~Ÿ›Иеђ,Ifƒ Нкї1NkˆЅТпќ 6 S ‚p  Њ Ч ф e  ; X u ’ Џ Ь щ H +# ё@ ] z — Д б дю ( E b З œ Й ж ѓ  - šJ g О Ё „ }`оFЄЎž!љT)Ф`ДEЮPЅшSL Dэ%EX Ct#cќEX ŒzЇЈџEX ўџџSL Ž˜SїEX э%Й№EX H‰шEX ‘*]иEX ’)ѕAтEX “ КAиSL ”Ћ&nбEX •ЗЋ&ЭEX –июУEX —˜ьаД$|@x”\АЬш` ZKіG—^H8ДО`KœJHØc$"Ш є}TTTTTT  T  T  T  T  TTTTTTTTTTTTTTTTTTT T!T"T#T$T%T&T'T(T)T*T+T,T-T.T/T0T3T4T5T6T7T8T9T:T;T<T=T>T?T@TATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT[T\T]T^TaTbT@ щiЧбэ( vЂ%tќ vЂ%tќ vЂ%tќ vЂ%tќ vЂ%tќ vЂ%tќ vЂ%tќ vЂ%tќ vЂ%tќ vЂ% tќ vЂ% tќ vЂ% tќ ЏЦh ЏЦОри ЏЦMо… ЏЦ†z ЏЦOjА ЏЦЄІG ЏЦTШšH ЏЦьŽI ЏЦЦƒJ ЏЦ№ИJ ЏЦџ4wK ЏЦŽ2$R ЏЦ9ŸU ЏЦ€^њY ЏЦ+Ыж\ ЏЦƒ0Кs ЏЦМTЎt ЏЦgСŠw ЏЦ„vO| ЏЦh ЏЦОри ЏЦMо… ЏЦ†z ЏЦ1oV ЏЦzѓž ЏЦOjА ЏЦвX‚1 ЏЦЄІG ЏЦTШšH ЏЦьŽI ЏЦЦƒJ ЏЦ№ИJ ЏЦџ4wK ЏЦŽ2$R ЏЦ9ŸU ЏЦHЙПU ЏЦ€^њY ЏЦ+Ыж\ ЏЦ-Wn ЏЦƒ0Кs ЏЦМTЎt ЏЦgСŠw ЏЦЏџ=y ЏЦ„vO| ЏЦh ЏЦОри ЏЦMо… ЏЦ†z ЏЦ1oV ЏЦzѓž ЏЦOjА ЏЦвX‚1 ЏЦЄІG ЏЦTШšH ЏЦьŽI ЏЦЦƒJ ЏЦ№ИJ ЏЦџ4wK ЏЦŽ2$R ЏЦ9ŸU ЏЦHЙПU ЏЦ€^њY ЏЦ+Ыж\ ЏЦ-Wn ЏЦƒ0Кs ЏЦМTЎt ЏЦgСŠw ЏЦЏџ=y ЏЦ„vO| ЏЦ1oV ЏЦвX‚1 ЏЦЄІG ЏЦTШšH ЏЦьŽI ЏЦЦƒJ ЏЦџ4wK ЏЦ€^њY ЏЦ-Wn ЏЦЏџ=y ЏЦвX‚1 ЏЦ€^њY ЏЦЏџ=y Эњ—бэ( мW9K N]? ‡3 xgt бэ( ЂqЉ К‘ Mо… †z wшК Œп5 wшК тИж: †z П&n †z јJb •9бэ( Є6јнZь y­ бэ( ? \L˜№ $цбэ( x.PL˜№ БRDL˜№ ъv8L˜№ Я†Тбэ( zѓžбэ( ь;‡бэ( ˜йбэ( —Јcбэ( њжŒ 3ћ€! њжŒ lu" њжŒ ЅCi# ёK!бэ(  "Q/џ" ŠSѓ#Уwч$ оg]$7жC ‰д9'Тј-( ‰д9'me + ‰д9'вц- ‰д9'Qік. ‰д9'ŠЯ/ ‰д9'ЋчшV Тј-(4A* |Щ+}Х^4 |Щ+bœФ@ |Щ+ ЁC |Щ+}Х^4 |Щ+bœФ@ |Щ+ ЁC |Щ+}Х^4 |Щ+bœФ@ |Щ+ ЁC |Щ+ЕЃН, |Щ+юЧБ- |Щ+}Х^4 |Щ+bœФ@ |Щ+ ЁC |Щ+bœФ@ |Щ+ЕЃН, |Щ+юЧБ- |Щ+bœФ@ |Щ+}Х^4 |Щ+bœФ@ |Щ+ ЁC |Щ+ }Х^4 |Щ+ bœФ@ |Щ+ bœФ@ |Щ+ }Х^4 |Щ+ bœФ@ |Щ+ ЁC |Щ+ }Х^4 |Щ+ bœФ@ |Щ+ ЁC |Щ+bœФ@ |Щ+bœФ@ |Щ+bœФ@ |Щ+bœФ@ |Щ+bœФ@ |Щ+ ЁC І‰ў+п­ђ, а“3,Х6 И'-НšC} И'-іО7~ §сp.SЛ)4 §сp.Œп5 §сp.Х6 6e/Œп5 o*Y0Х6 ЈNM1Œп5 ќbЗ1ŒІљ@ ќbЗ1тВF 5‡Ћ2рѓ‡5 5‡Ћ26Э@; 5‡Ћ2S‚@ —53Х6 nЋŸ3ЇЯ“4 рѓ‡5|6 Ф„X9§ЈL: 6Э@;oё4< ŒІљ@ўюсB ХЪэAўюсB №ИJРl ›‡”MЂqЉ ›‡”MК‘ ›‡”MњжŒ ›‡”Mоg]$ ›‡”MnЋŸ3 ›‡”MФ„X9 ›‡”MЈ)= ›‡”Mъ;P ›‡”MFєpP ›‡”MИ,іфвРЎœŠxfTB0 њшжФВ Ž|jXF4"ўькШЖЄ’€n\J8&№оЬКЈ–„r`N<*єтаОЌšˆvdR@. јцдТАžŒzhVD2 ќъиЦДЂ~lZH6$юмЪИІ”‚p^L:(ђ р Ю М Њ ˜ † t b P > ,   і ф в Р Ў œ Š x f T B 0  њ ш ж Ф В   Ž | j X F 4 "  ў ь к Ш Ж Є ’ € n \ J 8 &   № о Ь К Ј – „ r ` N < *   єтаОЌšˆvdR@. јцдТАžŒzhVD2 ќъиЦДЂ~lZH6$юмЪИІ”‚p^L:(ђрЮМЊ˜†tbP>,іфвРЎœŠxfTB0 њшжФВ Ž|jXF4"ўькШЖЄ’€n\J8&№оЬКЈ–„r` ZKіI—%^876548№”О` ZіJЄ˜ :Š^FŒEDCŽ84”О` ZJіK—Ј^L8pО`ЄJаш LЗ&>%AЧbя (qЖƒAв &€&&‚1233@3@3@3@3@3@3@3@3 @555555555 5 5 5 5 5666666777<<<<< 2P224R RI R R R R R R R R R R R R R R R R R R  R!RdRR,R-R/R0R1R2R3R4RHRNR@RBRARmR:R;RFRGRDRERLRMRKRJR5R6R7R8Rh1P2P_`dReeRfeRgeRlgRhhRihRjhRkjRШkRЩlRЪmRnmRpmRtnRopRqpR9pR<qRrqR=rRsrR>tRutRyuRvvRwwRxxR?IQ||Q}@2@@2@@2@@2@@2@@2@@2@@2@ @2 @нЪ;нЪ;(TП<Щ%Г=%Г=(ЦIЇ>Щџm›?џm›?(8’@Щ>e>f>g>i>jdLdeLefLf>h >>se. The database owner must run sp_dboption to enable this option.0 YObject '%.*ls' cannot be modified.c0 ™Column '%.*ls' cannot be modified because it is a computed column.e0 WCannot update a timestamp column.0 'Cannot insert a non-null value into a timestamp column. Use INSERT with a column list or with a default of NULL for the timestamp column.0 ЉThe text, ntext, and image data types cannot be used in a GROUP BY clause.0 ЫThe text, ntext, and image data types are invalid in this subquery or aggregate expression.0 ЅOnly text, ntext, and image columns are valid with the TEXTPTR function.pŠ0 Б%d is not a valid style number when converting from %ls to a character string.0 The '%.*ls' procedure attempted to return a status of NULL, which is not allowed. A status of 0 will be returned instead.0 ЛREADTEXT cannot be used on inserted or deleted tables within an INSTEAD OF trigger. 0 ‰Rules cannot be bound to text, ntext, or image data types.0 ЩThe READTEXT, WRITETEXT, and UPDATETEXT statements cannot be used with views or functions.иии0 ‰The logical tables INSERTED and DELETED cannot be updated.0 yThe %ls statement is not allowed within a trigger.0  йThe PATINDEX function operates on char, nchar, varchar, nvarchar, text, and ntext data types only.&&&0# ‘CAST or CONVERT: invalid attributes specified for type '%.*ls'"""0$ ЅThere is insufficient result space to convert a smallmoney value to %ls.0% ЏCannot convert char value to smallmoney. The char value has incorrect syntax.0& лThe conversion from char data type to smallmoney data type resulted in a smallmoney overflow error.0' Syntax error converting character string to smalldatetime data type.zŠ0( эThe conversion of char data type to smalldatetime data type resulted in an out-of-range smalldatetime value.щщщ0* яThe conversion from datetime data type to smalldatetime data type resulted in a smalldatetime overflow error.0+ yThe DATEADD function was called with bad type %ls.0- ‹Query contains an outer-join request that is not permitted.0/ )The table '%.*ls' is an inner member of an outer-join clause. This is not allowed if the table also participates in a regular join clause.02 ѓThe text, ntext, and image data types cannot be compar ў ь к Ш Ж Є ’ € n \ J 8 &   № о Ь К Ј – „ r ` N < *   єтаОЌšˆvdR@  . Ž ј| цдТАžŒzhVD2 ќъиЦДЂ~lZH6$юмЪИІ”‚p^L:(ђрЮМЊ˜†tbP>,іфвРЎœж Ф j X В F 4 " ŠxfTB0 њшжФВ Ž|jXF4"ўькШЖЄ’€n\J8&№оЬКЈ–„r` ZJіM—и^N8ФМО`ЄJh PNЗ%>%‰Ф4Ў 3 _нЪ;`24567<PP1P2 %Г=2567<џm›?2567<256<56<56555 5 5 R 5 5 5R R R R R R R R R R R R R R R R R R R! RdRedRfeRgeRhgRihRjhRkhRleRmRnmRonRpmRqpRrqRsrRtmRutRvuRwvRxwRyt&€&&‚RШjRЩkRЪlRR,R-R/R0R1R2R3R4R5R6R7R8R9pR:R;R<pR=qR>rR?xR@RARBRDRERFRGRHRIRJRKRLRMRNRhQ|IQ}|2@@3@2@@3@2@@3@2@@3@2@@3@2@@3@2@@3@2@@3@2 @ @3 @1(TП<ЩнЪ;(ЦIЇ>Щ%Г=(8’@Щџm›?(qЖƒAв>e>f>g>i>jLddLeeLff>h>>p&L filetype&L filestater&Lfileguidle&L)internalstatuskt&L#readonlylsnf&L%readwritelsn1&L+readonlybaselsn—&L)firstupdatelsn&L'lastupdatelsn—&Lbackuplsna&L#diffbaselsnt&L%diffbaseguidkt&L%diffbasetime@f&L)diffbaseseclsn&L%redostartlsn%&L'redotargetlsn-&Lforkguider&Lforklsne&Lforkvc@t&L/redostartforkguide&<valclass&<objid&<subobjid9K&<valnum&<value&<imagevalps&@class&@idJ&@nameub&@statusat&@typecl&@intpropi&@createdb&@modifiedpi&6idin&6indid&6namegc&6statusL&6intprop&6fillfact&6type&6tinypropma&6 dataspacew&6 lobdsn&6 rowsetam&7idmajore&7idminorp&7subidi&7status&7intprop&7tinyprop1&7tinyprop2s&Aclassd&Aobjid&Aindexidn&Arowsetnumy&Arowsetidfi&Astatusyp'lastupdatelsnn&Lbackuplsnp&L#diffbaselsnm&L%diffbaseguidet&L%diffbasetimeњжŒ&L)diffbaseseclsnel&L%redostartlsn0n&L'redotargetlsnp&Lforkguid1n&Lforklsnv&Lforkvc#&L/redostartforkguidŒ&<valclassњжŒ&<objidŒ&<subobjid &<valnumњжŒ&<valuee&<imageval3ћ€&@classf&@idev&@name&@statusef&@typeel&@intpropl&@created&@modified3ћ€&6idel&6indid&6name&6status#&6intpropu&6fillfactel&6typeel&6tinypropev&6 dataspacel&6 lobdsu&6 rowsetam&7idmajorv&7idminort&7subidl&7status&7intprop&7tinyprop1&7tinypr` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` X0 ФАœˆ”8мМфШЌрФЈtX< шЬА”x\@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ 4p T 8  ф Ш Ќ  t X <  шЬА”x\@$ŒpьќаTД8˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|` ZіO˜8^h8рО`€4vЂ%f˜PM`4&J™U“”[5:—Љb ќќќќ›ЇАЗЈW`}Ј_ |ЊЌy’’’’’CCCCР‡ЇАГЈQL>­f Џš0€“____АГЈ@“ЇO`}Ј_22222h0XЁЈ0 Ј[ggggˆ—Ї`ЗЈKЪ­rддддд Оš0€“<ЇЈ@ŒЇИŒЇH Ъ­mююююю№Ёš0€“ЛЛЛЛИŒЇ8ˆЇFЪ­4ФФФФФр›0€“TˆЇ‘‘‘‘ЈЇшˆЇAЪ­4ЂЂЂЂЂр›0€“‰Їїїїї˜ŽЇ˜‰Ї;Ъ­4ааааар›0€“Д‰Ї…………ˆЇHŠЇ6Ъ­4[[[[[р›0€“dŠЇИ€ЇјŠЇ1Ъ­4цццццр›0€“‹ЇГГГØ‚ЇИЈ&Ъ­4чччччр›0€“ЌИЈВВВВˆƒЇ@ЙЈ!Ъ­4џџџџџр›0€“\ЙЈЊЊЊЊЈЇЈ‹Ї,Ъ­4(((((р›0€“Ф‹Ї}}}}ИЌЈ№ЙЈЪ­4р›0€“ КЈEEEEЈ­Ј КЈЪ­4фффффр›0€“МКЈББББ˜ЎЈА‚“Ъ­4р›0€“lЛЈKKKKˆЏЈЇЈ`}Ј_‹‹‹‹‹X0РЁЈ№ПЈbооооШЇЈLЙЌН:::::0€“ЬтЌќhЌooooЄЈ8“АІЈ|ЃЈБЈЁ—таs­UUUUU\ž˜$БЈ0БЈ€ЄЈ˜L>­h ]]]]]\ž˜LБЈXpHЄЈXБЈ—L>­e ЂЂЂЂЂŒ$›ьБЈФБЈЌ›ЇїїїїРВЈшВЈ‡L>­`ђђђђђ\ž˜ мВЈЇЇЇЇ8шВЈГЈ…L>­]ЏЏЏЏЏ\ž˜ ГЈњњњњГЈ8ГЈƒL>­Zїїїїї\ž˜ ,ГЈЂЂЂЂŒŒ˜8ГЈ`ГЈL>­WЬЬЬЬЬ\ž˜ TГЈ™™™™˜ЅЈˆГЈ0 —паs­sssss\ž˜ЄГЈ&&&&­­­­pЖЈРЖЈyЪ­) 0€“ ŒЖЈBBBBРЖЈXœЇwЪ­(      0€“ мЖЈѕѕѕѕ`ГЈЗЈL>­Tппппп\ž˜ |ГЈŠŠŠŠјЌАІЈYL>­0     \ž˜ єГЈѕѕѕѕxІЈ  ЈXL>­,›››››є†“”ІЈЮЮЮЮ­vр’Їhˆ“TL>­Ÿppppp 0€“Аt­ќ’Ї%%%%ЈЛЈXЇЈ Ъ­ЁЕЕЕЕЕ 0€“М“Їрррр ЇЈˆЏЈЪ­ ­­­­­аТš0€“јјјјp T ЃЈ@ЋЈŒ&­§fffff0€“МЃЈ3333@ЋЈаЃЈLЙЌРЯЯЯЯЯ0€“(\ЋЈššššЈЈР€ЊЈшџџџРTшџџџPTHДДДДˆ0 ЈЈ ЇЈn\Ђќ€€€€€ееееР0иЈЈ ЇЈo \ЂНuuuuuІЈ„ІЈьІЈ 0 ЈјH(ЉЈ ЇЈp(АІЌЊ ыыыыыŒŒ˜”ЃЈ@ЈЈМЈЈМž“ЉЈООООшШаІЈq|ЊЌЉўўўўўЋЋЋЋ8ˆ0ЇЈ№ПЈќќќќШpД­Ќ2.....{{{{(@ЈЂЈ№ПЈ(€‡Ї№œ@\­оЬтЌLЧЈќЧЈ<уЌЦЈДЦЈЌуЌМФЈlХЈ,˜ЇtУЈ$ФЈœ˜Ї,ТЈмТЈ ™ЇфРЈ”СЈ|™ЇDЌLРЈь™Їќ}ЌЌ~Ќ\šЇД|Ќd}ЌЬšЇl{Ќ|Ќ<›Ї$zЌдzЌ ЈшЋЈ(gЂШBBBBzzzzЉЈ@ЋЈ Ъ­уfffffœš ЈDИg(ьЉPщЉќhЌœъЌдuš!ЌЇЈь Ј0€“ьЃЈмjЌLgЂ3333ЇЈШЇЈ `}Ј_ѕѕѕѕѕЬ‚“PPРЋЈрЊЈ#0LgЂёыыыыы0˜˜2,T™88 Ќ„Ї,T™ООООИи ЌЈАЉЈ$|ЊЌ‡ўўўўў>>>>kkkk%С€ыЌHЄЈ™PўЌ;‹‹‹‹‹оооо€ЄЈ€БЈ–L>­d ѓѓѓѓѓœЄЈІІІІhАЈXБЈЈБЈ•L>­X ‰‰‰‰‰Ќ›Їммммш(€БЈаБЈ”L>­( љљљљљЌЌЌЌССССЈБЈœЇ“L>­' ЁЁЁЁЁœБЈєєєє­M ССССС””””ўћ јБЈHВЈŽL>­L VVVVVŒВЈ ЊЈ ВЈpВЈL>­K 00000ДВЈeeee0HВЈ˜ВЈŒL>­ JJJJJ№?pВЈРВЈ‹L>­ ˆˆˆˆˆЌ›Їнннн`˜ВЈИЄЈˆPўЌ;DDDDИЄЈ№ЄЈ†PўЌ;88888mmmm (№ЄЈ(ЅЈ„PўЌ;сссссДДДД (ЅЈ`ЅЈ‚PўЌ;ppppp%%%%єВЈ`ЅЈ@ІЈ€PўЌ;ПППППъъъъЁ—˜ЅЈрPўЌ;ГГГГГцццц ЊЈа ЈЁЈP`}Ј_lЛЈWWWWєЌxІЈZPўЌ;sssss&&&& mšДЈP##ДЈ р  ЊЈ`}Јўћ ћћћћФГЈќГЈсvXYЎЎЎЎ№с˜€јЌ˜,`}Ј_BBBBBЫЫЫЫИДЈ(ДЈш(x;Ј—Љ€‡Їю,`}Ј_\\\\\Ќ›Ї<›ЇЬšЇ\šЇь™Ї|™Ї ™Їœ˜Ї,˜ЇЌуЌ<уЌ l†Їрў˜ ћЌ&,`}Ј_44444ќў˜Дў˜lў˜$ў˜짘”§˜L§˜§˜Мќ˜tќ˜,ќ˜aaaaрДЈˆя˜˜с˜Ь,А^­|||||€#›0€“))))p[Ї€WЇп,А^­Pммммм€#›0€“‰‰‰‰ИџЌшњЌь,`}Ј_дџЌŒџЌDџЌќўЌДўЌlўЌ$ўЌм§Ќ”§ЌL§Ќ§ЌPPPPDЖЈИuš т˜Ё,аs­$ћћћћћ€#›0€“ЎЎЎЎ****ЗЈаЅЈz,`}Ј_(((((lЛЈМКЈ КЈ\ЙЈЌИЈФ‹Ї‹ЇdŠЇД‰Ї‰ЇTˆЇ}}}}аЅЈІЈx,`}Ј_<›ЇЬšЇ\šЇь™Ї|™Ї ™Їœ˜Ї,˜ЇЌуЌ<уЌЬтЌFFFF88@ІЈpЖЈ}0Ъ­хёёёёё$Мš0€“є†“$ІЈьЅЈ‹ЇЌ›ЇЄЄЄЄ0ЁЈ@ŒЇJ,ќ­GТТТТТДЎЈФ­ЈдЌЈЄƒЇД‚ЇФЇд€ЇЄЇДŽЇФЇдŒЇ————Ћ—  Јр’ЇV0L>­ЕЪЪЪЪЪЬЎš0€“є†“0€“М ЈŸŸŸŸИЈXр˜ЙЙЙЙЈgЈ`ИЈаЗЈї$x;ЈЋЧЧЧЧЧ|ИЈ ‚Ї˜‚Ї)4Ъ­§Ш›0€“88 ,љЇЊЊFFFF88€ЂЈƒЇ%8єІЌ эээээ№п™ дmЌ \ЙЈ88 єдЈbtИИИИƒЇˆƒЇ#4Ъ­§ Ш›0€“88 јјЇQQ____№ИЈАЂЈ@ЌЈ 8єІЌ JJJJJ№п™ЄЅTmЌ КЈ88 двЈЦљІ@ЌЈИЌЈ4Ъ­§ЅЅЅЅЅШ›0€“88 ФјЇ №№№№ ЃЈ0­Ј8єІЌ žžžžž№п™<КЈдlЌ МКЈ88 ЌаЈўЫЫЫЫ0­ЈЈ­Ј4Ъ­§јјјјјШ›0€“88 јЇ­­­­@ЃЈ ЎЈ8єІЌ DDDDD№п™TlЌ lЛЈ88 \ЮЈЛЈ ЎЈ˜ЎЈ4Ъ­§XXXXXШ›0€“88 \јЇЈ А‚“ЏЈ8єІЌ №п™ЊдkЌ ==<ЬЈJHHHFFFFЏЈ ЇЈ 4Ъ­§їїїїїШ›0€“==шЭЇЈЂЂЂЂфЌАЈ  ЈЄЈ„ЇœЇДЈИЈЇPЇ˜ЇЌЈшЌXЇ№˜є˜ЈЈ` ZvЂ%іQЉ8д„ЖС^8€‰“О`ЏЦTœRV0 T6J W(datetimeP qZ6SRV\PConstraints on System tables6SRV^.sp_renamedb6D _*read only6DBR@a0sp_recompileP №@џџ0BЇЇЇа4ЈЈЈЈјЇHЇ4 є@ІCmmmmmdЇ„ЇЄЇ8888(‚ЇШЇ5 МшІљNNNNNLx?p‚ЇјЇ6(МшІF>>>>> ƒЇ € Јkkkk№‚Ї(‚Ї7`є@І@њњњњњ@џџˆDЇЇЇа4@џџEЇ88 @џџhEЇЇЇа4ЏЏЏЏ ƒЇp‚Ї8 є@ІC@@@@@Œ‚ЇЌ‚ЇЬ‚ЇPƒЇ№‚Ї9 МшІљиииииLx˜ƒЇ ƒЇ:(МшІFNNNNN4„Ї € Ј„ЇPƒЇ;`є@І@ввввв@џџРGЇЇЇа4@џџXHЇ88 @џџАHЇЇЇа4‡‡‡‡H„Ї˜ƒЇ< є@ІCMMMMMДƒЇдƒЇєƒЇ„Їx„Ї„Ї= МшІљвввввLx‡‡‡‡а4Р„ЇH„Ї>(МшІF55555\…Ї € Ј````@…Їx„Ї?`є@І@)))))@џџKЇЇЇа4@џџ KЇ88 @џџјKЇЇЇа4||||Р„Ї@ є@ІCм„Їќ„Ї…ЇQQQQа4$шЌ"""" ‰Ї8…Ї XљІluuuuuМ‰Ї Ш‰Ї€…Ї XљІЭ00000ф‹Ї\„Їeeee№‰Ї ‰Ї АБЂк?????@2jjjjGGŠЇШ‰ЇАБЂк№№№№№intЅЅЅЅ`ŠЇ№‰Ї(x;Ју РРРРРчча4|ŠЇ••••ˆŠЇŠЇФљІз=====inthhhh№ŠЇ`ŠЇDx;Ј >>>>>мŒЇ4ŠЇ4€488 œ‹Ї ‹Їkkkk‹ЇˆŠЇx;ЈЕ ттттт@2ЗЗЗЗ№п™X‹Ї№ŠЇ XЁЂБ:::::œ‹ЇlЇt‹ЇЇoooo€‹Ї‹Їx;Јs]]]]]@2 Ш‹ЇX‹Ї(XЁЂГFFFFF88 ДшЌ№‹Ї€‹ЇXљІЭцццццŽЇЄŠЇГГГГŒЇШ‹ЇАБЂкЎЎЎЎЎ@3ћћћћџџHŒЇ№‹ЇАБЂкœœœœœvarcharЩЩЩЩŒЇŒЇ(x;Ју бббббчча4ЌŒЇ„„„„РŒЇHŒЇФљІзиииииvarcharЈ(ЇŒЇDx;Ј ‘‘‘‘‘dŒЇ€4ЇЇа4дЇDЇФФФФzzzzPЇРŒЇx;ЈЕ OOOOO@3є˜šЇ(Ї XЁЂБCCCCCдЇЌЇИЇPЇx;ЈsŸŸŸŸŸ@3ЪЪЪЪXŽЇЇ(XЁЂГ)))))ЇЇа4DщЌ||||(ŽЇИЇ XљІЭєєєєємŒЇЁЁЁЁŽЇŽЇ!HXЁЂW33333|ЇќЇJшffff Ї(ŽЇ"px;ЈWТТТТТ\„Їє˜šД ` €Ї(<Їшџџџџ————рЇŽЇ# `}Ј_jjjjjLЖ—\оЈSSnnnnшЇuuuu№‰Ї ЂЈ7XЪ­5KKKKKє˜š0€“<ЂЈьД—????(Ї Ї$$x;Ј[„„„„„ЌŽЇ`™Жџџџџџџџџџџџџбббб`ЇрЇ%АБЂйIIIIIspt_valuesШЇ(Ї&HXЁЂW4’ЇЄщЌLџџџџУSSSSX‘Ї`Ї'px;ЈWъъъъъЌ’ЇД ` €Ї(t‘Ї@УџџПППП’ЇШЇ( `}Ј_ЭЭЭЭЭФ”ЇЇ‘Їx;ЈЋ}}}}}м‘Ї\”ЇІ((((`‘Їx‘Їax;ЈЋLLLLL’ЇAAAA8’ЇшЇ=˜˜˜˜`’ЇX‘Ї)$x;Ј[—————фЇ0€“ЖџџџџџџџџџџџџТТТТ<€Ї’Ї’Ї* АБЂй     nameѕѕѕѕ@ј’Ї`’Ї+Dx;Ј ­­­­­l“ЇD›Ї€4ччFа4џџџџ“Їјјјј_Ў “Ї’Ї,x;ЈЕ ЏЏЏЏЏnameњњњњP“Їј’Ї-АБЂйЊЊЊЊЊnumberџџџџИ“Ї “Ї.Dx;Ј &&&&&4”Їœ‹Ї ™Ї€488 џ@џ д“Їssss Щш“ЇP“Ї/ x;ЈЕ  number\\\\TˆЇ”ЇИ“Ї0 АБЂйљљљљљtypeЌЌЌЌ€”Їш“Ї1Dx;Ј мммммЇŒ›ЇЅЅ€4яяа4џ@џœ”Ї‰‰‰‰мYЇЈ”Ї”Ї2x;ЈЕ typeJJJJh•Ї€”Ї3 XЁЂЪЪЪЪЪЏЦU  р 2˜U“`џџМ•Ї„•ЇŸŸŸŸ •ЇЈ”Ї4x;Јъ spt_valuesKKKK–Їh•Ї5XXЁЂЗПППППє˜š^Hъъъъ@–Ї •Ї6АБЂкиииии@1šh–Ї–Ї7АБЂкффффф@2ББББ–Ї@–Ї8АБЂкŒŒŒŒŒ@3ййййЄАšЇh–Ї9XљІlQQQQQЬšЇиšЇ–Ї:XљІЭUUUUUєšЇ\„Ї›ЇАšЇ;XљІЭ00000›ЇЄŠЇeeee(›ЇиšЇ<XљІЭРРРРРмŒЇ••••p›Ї›Ї=$ЄЈDТТТТТT…ЇeччFа4————И›Ї(›Ї>$ЄЈDjjjjjдЇ  Јdяяа4????XœЇp›Ї?€`}Ј_„„„„„є†“ЅЅџ$™„„„„œЇH4HЇ4œЇаБЈРчЌ’(L>­t ъъъъъœ$›dВЈ<ВЈВЈќчЌмчЌЌ›ЇббббјœЇИ›Ї@€`}Ј_IIIII0вš0€“x;Ј$žЇ—ЇшœЇr$Ъ­˜ ФФФФФЇЌ›Ї‘‘‘‘ œЇАтЌq`ЇXœЇADd/ІЩ ЭЭЭЭЭЌЇ€488 џџ |Ї˜˜˜˜ЇјœЇB x;ЈЕ —————statusТТТҘ TиЇ`ЇC(x;Ј—ЎЎЎЎЎ88 єЇћћћћžЇЇDФљІзœœœœœЩЩЩЩ žЇиЇE€`}Ј_‘‘‘‘‘˜ IIIIIœ˜ЇH €˜Ї№˜Їg$Ъ­˜ 44444 ™Їaaaažžžž№˜ЇФФФФ@ŸЇžЇF€`}Ј_OOOOOЌЄDDDD`™Їа™Їc$Ъ­˜ ЬЬЬЬЬь™Ї™™™™а™Ї@šЇa$Ъ­ @Ї žЇG€`}Ј_CCCCCчччч0€Ї@šЇАšЇ_$Ъ­˜ ŽŽŽŽŽггЬšЇллллАšЇ ›Ї]$Ъ­˜ дддддvАœˆtX.` ZЏЦіSЉHтMгs^8(РЈО`_@ЏЦ4єTTШ 0A 'rpc0A 'pub0A 'sub0A )dist0A )dpub0@A /rpc out0€A 7data access0A Icollation compatible0A -system0A Iuse remote collation0A Mlazy schema validation0џџџџB 3YES OR NO0B %no0B 'yes0B )none0C KCONFIGURATION OPTIONS0eC џOrecovery interval (min)0fC ;allow updates0gC џAuser connections0jC ˆџџџ+locks0kC џџџ9open objects0mC d?fill factor (%)0sC ?nested triggers0uC ;remote access0|C 'Adefault language0їC џEmax worker threads0љC Onetwork packet size (B)0C Kshow advanced options0C Cremote proc trans0 C ;c2 audit mode0fC џџџUdefault full-text language0gC й'Ktwo digit year cutoff0сC РџџџQindex create memory (KB)0эC =priority boost0яC џџџQremote login timeout (s)0№C џџџQremote query timeout (s)0ћC џџџџџџџAcursor threshold0ќC Iset working set size0ўC џ9user options0џC €џџџ;affinity mask0C џџџMmax text repl size (B)0C m?media retention0C џ]cost threshold for parallelism0C Smax degree of parallelism0C џџџSmin memory per query (KB)0C џџџџџџџ=query wait (s)0C џџџMmin server memory (MB)0C џџџMmax server memory (MB)0 C џџџSquery governor cost limit0 C Glightweight pooling0 C Mscan for startup procs0 C 7awe enabled0 C €џџџ?affinity64 mask0C WCross DB Ownership Chaining0D ?DATABASE STATUS0D 3autoclose0D Iselect into/bulkcopy0D Itrunc. log on chkpt.0D Gtorn page detection0 D /loading0@D 9pre recovery0€D 5recovering0D ;not recovered0D /offline0D 3read only0D 9dbo use only0D 7single user0€D =emergency mode0@D 5autoshrink0D ;missing files0@D Acleanly shutdown0D Euser info in doubt0@D IALL SETTABLE OPTIONS0D2 ADATABASE OPTIONS0D2 7db chaining0D2 Enumeric roundabort0D2 5arithabort0 D2 9ANSI padding0@D2 CANSI null default0D2 Oconcat null yields null0D2 Erecursive triggers0D2 Odefault to local cursor0€D2 Cquoted identifier0D2 Mauto create statistics0D2 Mcursor close on commit0D2 5ANSI nulls0D2 ;ANSI warnings0 D2 Cfull text enabled0@D2 Mauto update statistics0|“WD2 IALL SETTABLE OPTIONS0DC CDATABASE CATEGORY0DC 3published0DC 5subscribed0DC ;merge publish0DC 7Distributed0DC IALL SETTABLE OPTIONS0E GSQLSERVER HOST TYPE0E 5WINDOWS/NT0E €9int high bit0E =int4 high byte0џџџџF KSYSREMOTELOGINS TYPESF 0F /trusted0џџџџF_U]SYSREMOTELOGINS TYPES (UPDATE)F_U0F_U/trusted0G KGENERAL MISC. STRINGS0G SSQL Server Internal Table0I 7INDEX TYPES0I 9nonclustered0I Kignore duplicate keys0I -unique0I Kignore duplicate rows0I 3clustered0 I 9hypothetical0@I 5statistics0€I 7auto create0I Estats no recompute0I 7primary key0I 5unique key0J ACOMPATIBLE TYPES0J --binary0J %3varbinary0J 2'bit0J /)char0J '/varcharХœuBд#ьŸhЗ~KгˆOХzK.бЂ…:§ФHШџX%т™L Ю™LџМm(й–](уЌkœн",aяИLт­tEўЕl9њ d - р ™ F љ Ќ o  Щ l - р Ѕ l # т‘@Вgз”IњЕЃ t9њЛ‚WлŒAёЬ™LжV'ўеЎ‡`€ЏЦЎUTа6A rpc6A pub6A sub6A dist6A dpub6@A  rpc out6€A (data access6A :collation compatible6A system6A :use remote collation6A >lazy schema validation6џџџџB $YES OR NO6B no6B yes6B none6C <CONFIGURATION OPTIONS6eC @recovery interval (min)6fC ,allow updates6gC 2user connections6jC locks6kC *open objects6mC 0fill factor (%)6sC 0nested triggers6uC ,remote access6|C 2default language6їC 6max worker threads6љC @network packet size (B)6C <show advanced options6C 4remote proc trans6 C ,c2 audit mode6fC Fdefault full-text language6gC <two digit year cutoff6сC Bindex create memory (KB)6эC .priority boost6яC Bremote login timeout (s)6№C Bremote query timeout (s)6ћC 2cursor threshold6ќC :set working set size6ўC *user options6џC ,affinity mask6C >max text repl size (B)6C 0media retention6C Ncost threshold for parallelism6C Dmax degree of parallelism6C Dmin memory per query (KB)6C .query wait (s)6C >min server memory (MB)6C >max server memory (MB)6 C Dquery governor cost limit6 C 8lightweight pooling6 C >scan for startup procs6 C (awe enabled6 C 0affinity64 mask6C HCross DB Ownership Chaining6D 0DATABASE STATUS6D $autoclose6D :select into/bulkcopy6D :trunc. log on chkpt.6D 8torn page detection6 D  loading6@D *pre recovery6€D &recovering6D ,not recovered6D  offline6D $read only6D *dbo use only6D (single user6€D .emergency mode6@D &autoshrink6D ,missing files6@D 2cleanly shutdown6D 6user info in doubt6@D :ALL SETTABLE OPTIONS6D2 2DATABASE OPTIONS6D2 (db chaining6D2 6numeric roundabort6D2 &arithabort6 D2 *ANSI padding6@D2 4ANSI null default6D2 @concat null yields null6D2 6recursive triggers6D2 @default to local cursor6€D2 4quoted identifier6D2 >auto create statistics6D2 >cursor close on commit6D2 &ANSI nulls6D2 ,ANSI warnings6 D2 4full text enabled6@D2 >auto update statistics6|“WD2 :ALL SETTABLE OPTIONS6DC 4DATABASE CATEGORY6DC $published6DC &subscribed6DC ,merge publish6DC (Distributed6DC :ALL SETTABLE OPTIONS6E 8SQLSERVER HOST TYPE6E &WINDOWS/NT6E *int high bit6E .int4 high byte6џџџџF <SYSREMOTELOGINS TYPESF 6F  trusted6џџџџF_UNSYSREMOTELOGINS TYPES (UPDATE)F_U6F_U trusted6G <GENERAL MISC. STRINGS6G DSQL Server Internal Table6I (INDEX TYPES6I *nonclustered6I <ignore duplicate keys6I unique6I <ignore duplicate rows6I $clustered6 I *hypothetical6@I &statistics6€I (auto create6I 6stats no recompute6I (primary key6I &unique key6J 2COMPATIBLE TYPES6J binary6J $varbinary6J bit6J char6J  varchar6J "datetime6J "datetimn6J ,smalldatetime6J float6J floatn6J real6J int6J intn6J "smallint6J  tinyint6J money6J moneyn6J &smallmoney6K ,SYSKEYS TYPES6K  primary6K  foreign6K common6L &LOCK TYPES6L NULL6L Sch-S6L Sch-M6L S6L U6L X6L IS6L IU6 L IX6 L SIU6 L SIX6 L UIX6 L BU6L "RangeS-S6L "RangeS-U6L *RangeIn-Null6L $RangeIn-S6L $RangeIn-U6L $RangeIn-X6L "RangeX-S6L "RangeX-U6L "RangeX-X6LR .LOCK RESOURCES6LR NUL6LR DB6LR FIL6LR IDX6LR TAB6LR PAG6LR KEY6LR EXT6 LR RID6 LR APP6LS 0LOCK REQ STATUS6LS GRANT6LS CNVT6LS WAIT6LO 0LOCK REQ STATUS6LO Xact6џџџџB X*YES OR NO6eC ]Frecovery interval (min)6O [&triggerЮP Y6@DBR`>sp_fulltext_catalogиФXž. ZЏЦіVЉH1Ы kщ^8О`a№„ЏЦЮ*WW`0J =1datetime0J o1datetimn0J :;smalldatetime0J >+float0J m-floatn0J ;)real0J 8'int0J &)intn0J 41smallint0J 0/tinyint0J <+money0J n-moneyn0J z5smallmoney0K ;SYSKEYS TYPES0K /primary0K /foreign0K -common0L 5LOCK TYPES0L )NULL0L +Sch-S0L +Sch-M0L #S0L #U0L #X0L %IS0L %IU0 L %IX0 L 'SIU0 L 'SIX0 L 'UIX0 L %BU0L 1RangeS-S0L 1RangeS-U0L 9RangeIn-Null0L 3RangeIn-S0L 3RangeIn-U0L 3RangeIn-X0L 1RangeX-S0L 1RangeX-U0L 1RangeX-X0LR =LOCK RESOURCES0LR 'NUL0LR %DB0LR 'FIL0LR 'IDX0LR 'TAB0LR 'PAG0LR 'KEY0LR 'EXT0 LR 'RID0 LR 'APP0LS ?LOCK REQ STATUS0LS +GRANT0LS )CNVT0LS )WAIT0LO ?LOCK REQ STATUS0LO )Xact0LO )Crsr0LO )Sess0O 9OBJECT TYPES0O 9system table0O )view0O 5user table0O Astored procedure0O /default0O )rule0O /trigger0 O greplication filter stored procedure0O9TQsysobjects.type, reports0џџџџO9T?AP: application0џџџџO9T;C : check cns0џџџџO9TOD : default (maybe cns)0џџџџO9TGF : foreign key cns0џџџџO9TGIF: inline function0џџџџO9T/L : log0џџџџO9TIP : stored procedure0џџџџO9TGFN: scalar function0џџџџO9TGPK: primary key cns0џџџџO9T1R : rule0џџџџO9TWRF: replication filter proc0џџџџO9TAS : system table0џџџџO9TETF: table function0џџџџO9T7TR: trigger0џџџџO9T=U : user table0џџџџO9TEUQ: unique key cns0џџџџO9T1V : view0џџџџO9TQX : extended stored procP P P P P P  P @P €P  P  P  P  P 0LNG3Bulgarian0LNG+Czech0LNG-Danish0LNG-German0LNG+Greek0 LNG/English0 LNG/Spanish0 LNG/Finnish0 LNG-French0LNG3Hungarian0LNG/Italian0LNG1japanese0LNG+Dutch0LNG-Polish0LNG1Romanian0LNG/Russian0LNG1Croatian0LNG-Slovak0LNG/Swedish0LNG/Turkish0$LNG3Slovenian0LNG3Norwegian0LNG5Portuguese0%LNG1Estonian0&LNG/Latvian0'LNG5Lithuanian0LNG3Brazilian0LNGGTraditional Chinese0LNG-Korean0LNGESimplified Chinese0LNG-Arabic0LNG)ThaiCP DP EP FP @GP €HP IP JP KP LP MP NP @OP €PP QP RP SP TP UP VP @WP €XP YP ZP [P \P ]P ^P @_P €`P aP bP cP dP eP fP @gP €hP iP jP kP lP mP  nP @oP €pP 0LNG3Bulgarian0LNG+Czech0LNG-Danish0їкН ƒfI,ђеИ›Є Jд—`кƒR {LФО o 4 ѕ =  х Ж u @  о Ѕ Т ™ n /  сК“lEївЋn| S * ы &ыГ„SИ‰Z-ќЭœшoDbфБ„UїЬŸrGд= лЈuB иЇ‚[4 шУž{X5 пЖT%іЛ†Y.џЮЅ~U(§Т‘` [ƒЏЦŠ XRр6џџџџB $YES OR NO6џџџџF <SYSREMOTELOGINS TYPES6џџџџF_UNSYSREMOTELOGINS TYPES (UPDATE)6B no6C <CONFIGURATION OPTIONS6D 0DATABASE STATUS6D2 2DATABASE OPTIONS6DC 4DATABASE CATEGORY6E 8SQLSERVER HOST TYPEF F_U6G <GENERAL MISC. STRINGS6G DSQL Server Internal Table6I (INDEX TYPES6I *nonclustered6J 2COMPATIBLE TYPES6K ,SYSKEYS TYPES6L &LOCK TYPES6LO 0LOCK REQ STATUS6LR .LOCK RESOURCES6LS 0LOCK REQ STATUS6A rpc6B yes6D $autoclose6DC $published6E &WINDOWS/NT6F  trusted6I <ignore duplicate keys6J binary6J $varbinary6K  primary6L NULL6LO Xact6LR NUL6LS GRANT6A pub6B none6DC &subscribed6E *int high bit6I unique6J bit6K  foreign6L Sch-S6LR DB6LS CNVT6E .int4 high byte6J char6J  varchar6K common6L Sch-M6LR FIL6LS WAIT6A sub6D :select into/bulkcopy6DC ,merge publish6I <ignore duplicate rows6J "datetime6J "datetimn6J ,smalldatetime6L S6LR IDX6J float6J floatn6J real6L U6LR TAB6J int6J intn6J "smallint6J  tinyint6L X6LR PAG6DC :ALL SETTABLE OPTIONS6J money6J moneyn6J &smallmoney6L IS6LR KEY6A dist6D :trunc. log on chkpt.6L IU6LR EXT6 L IX6 LR RID6 L SIU6 LR APP6 L SIX6 L UIX6 L BU6L "RangeS-S6L "RangeS-U6A dpub6D 8torn page detection6DC (Distributed6F_U trusted6I $clustered6L *RangeIn-Null6L $RangeIn-S6L $RangeIn-U6L $RangeIn-X6L "RangeX-S6L "RangeX-U6L "RangeX-X6 D  loading6 I *hypothetical6@A  rpc out6@D *pre recovery6@I &statistics6LO Crsr6LO Sess6O *OBJECT TYPES6O *system table6O view6O &user table6O 2stored procedure6O  default6O rule6O  trigger6 O Xreplication filter stored procedure6O9TBsysobjects.type, reports6џџџџO9T0AP: application6џџџџO9T,C : check cns6џџџџO9T@D : default (maybe cns)6џџџџO9T8F : foreign key cns6џџџџO9T8IF: inline function6џџџџO9T L : log6џџџџO9T:P : stored procedure6џџџџO9T8FN: scalar function6џџџџO9T8PK: primary key cns6џџџџO9T"R : rule6џџџџO9THRF: replication filter proc6џџџџO9T2S : system table6џџџџO9T6TF: table function6џџџџO9T(TR: trigger6џџџџO9T.U : user table6џџџџO9T6UQ: unique key cns6џџџџO9T"V : view6џџџџO9TBX : extended stored procP P P P P P P P P  P  P  P  P  P P P P P P P P P P P P P P P P P P P  P !P "P #P $P %P &P 'P (P )P *P +P ,P -P .P /P 0P 1P 2P 3P 4P 5P 6P 7P 8P 9P :P ;P <P =P >P ?P @P AP BP CP DP EP FP GP HP IP JP KP LP MP NP OP PP QP RP SP TP UP VP WP XP YP ZP [P \P ]P ^P _P `P aP bP cP dP 6R *REPORT TYPESR 6€џџR  (rpt)6SFL,SF LOCK TYPES6SFL@Extent Lock - Exclusive6 SFL:Extent Lock - Update6 SFL6Extent Lock - Next6 SFL>Extent Lock - Previous6SOP$@@OPTIONS6SOP>disable_def_cnst_check6SOP<implicit_transactions6SOP>cursor_close_on_commit6SOP,ansi_warnings6SOP*ansi_padding6 SOP&ansi_nulls6@SOP&arithabort6T 6SYSPROTECTS.ACTION6T &References6V 4SYSDEVICES STATUS6V *default disk6V ,physical disk6V *logical diskN@2$њьоаТДІ˜Š|n`RD6(к рЖ–ў№тдЦИЊœŽ€rdVH:,єциЪМЎ ’„vhZДLlL>0"6јъмЮР*ВЄц –Т ˆž zz ŠlP , ф Ќ ’ ^p PN B8 D4Z & № и д Р Њ ^”ќ’ | B ( ю  њ д Ж š ` рH 4  ђ и Р вЈ ” z \ @ ц ФЮ(  шЦЄh<ъЖЈаИ œ~^DКфЈŽќцЪЊ’tJ$ ђІšdжОЄŠjF(ьЬІ‚^F.\‚h<ŒВ:ўа zNђЪ†J<.іТ`$J(ђФœf4ьЪ’ ШZP$єР„`J] `ТЏЦ.NYW`6A :collation compatible6D ,not recovered6C HCross DB Ownership Chaining6їC 6max worker threads6љC @network packet size (B)6A system6D  offline6C <show advanced options6C 4remote proc trans6 C ,c2 audit mode6A :use remote collation6D $read only6D2 (db chaining6fC Fdefault full-text language6gC <two digit year cutoff6сC Bindex create memory (KB)6эC .priority boost6яC Bremote login timeout (s)6№C Bremote query timeout (s)6ћC 2cursor threshold6ќC :set working set size6ўC *user options6џC ,affinity mask6C >max text repl size (B)6C 0media retention6C Ncost threshold for parallelism6C Dmax degree of parallelism6C Dmin memory per query (KB)6C .query wait (s)6C >min server memory (MB)6C >max server memory (MB)6 C Dquery governor cost limit6 C 8lightweight pooling6 C >scan for startup procs6 C (awe enabled6 C 0affinity64 mask6A >lazy schema validation6D *dbo use only6D2 6numeric roundabort6I (primary key6D (single user6D2 &arithabort6I &unique key6 D2 *ANSI padding6@D2 4ANSI null defaultЮP ЯP аP бP вP гP дP еP жP зP иP йP кP лP мP нP оP пP рP сP тP уP фP хP цP чP шP щP ъP ыP ьP эP юP яP №P ёP ђP ѓP єP ѕP іP їP јP љP њP ћP ќP §P ўP џP 6SOP4quoted_identifier6SOP nocount6SOP4ansi_null_dflt_on6SOP6ansi_null_dflt_off6SOP@concat_null_yields_null6 SOP6numeric_roundabort6ЮT Deny6ЯT (Create View6оT 2Create Procedure6рT  Execute6фT 0Backup Database6щT .Create Default6ыT 6Backup Transaction6ьT (Create Rule6V $read only6 V "deferred6SRV>Process Administrators6SRV*processadmin6SRVKILL6SRVFAdd member to processadmin6SRV8Disk Administrators6SRV$diskadmin6SRV$DISK INIT6SRV@Add member to diskadmin6SRV0sp_addumpdevice6SRV.sp_diskdefault6SRV,sp_dropdevice6SRV4Database Creators6SRV$dbcreator6SRV0CREATE DATABASE6SRV.ALTER DATABASE6SRV@Add member to dbcreator6SRV0Extend database6SRV(sp_renamedb6SRV2RESTORE DATABASE6SRV(RESTORE LOG6SRV,DROP DATABASE6SRVFBulk Insert Administrators6SRV$bulkadmin6SRV(BULK INSERT6SRV@Add member to bulkadmin6@DBR$DB Owners6@DBR<EXECUTE any procedure6@DBR<sp_change_users_login6@DBRPAdd/drop to/from db_accessadmin6@DBRDAdd/drop to/from db_owner6@DBRTAdd/drop to/from db_securityadmin6@DBRJAdd/drop to/from db_ddladmin6@DBRVAdd/drop to/from db_backupoperator6@DBRNAdd/drop to/from db_datareader6@DBRNAdd/drop to/from db_datawriter6@DBRVAdd/drop to/from db_denydatareader6@DBRVAdd/drop to/from db_denydatawriter6@DBR0dbcc checkalloc6@DBR*dbcc checkdb6@DBR8dbcc checkfilegroup6@DBR0dbcc checkident6@DBR0dbcc checktable6@DBR.dbcc dbreindex6@DBR.dbcc proccache6@DBR:dbcc show_statistics6@DBR0dbcc showcontig6@DBR8dbcc shrinkdatabase6@DBR0dbcc shrinkfile6@DBR.sp_dbcmptlevel6@DBR:sp_dboption (update)6@DBR2dbcc updateusage6LNG$Bulgarian6LNGCzech6LNGDanish6LNGGerman6LNGGreek6 LNG English6 LNG Spanish6 LNG Finnish6 LNGFrench6LNG$Hungarian6LNG Italian6LNG"japanese6LNGDutch6LNGPolish6LNG"Romanian6LNG Russian6LNG"Croatian6LNGSlovak6LNG Swedish6LNG Turkish6$LNG$Slovenian6LNG$Norwegian6LNG&Portuguese6%LNG"Estonian6&LNG Latvian6'LNG&Lithuanian6LNG$Brazilian6LNG8Traditional Chinese6LNGKorean6LNG6Simplified Chinese6LNGArabic6LNGThaishview6@DBR.sp_dbcmЌ~RцNцЌ~P №ИŽ^ђ"оВvdРŽ€ n V єf ŠВ. 0 таиДрј К„ZьФ†N ЬŽ`иŠZ№ЦŒZжЈf*ф@ ўp4P2№ЮfА”ТrR.№А”vX<ŠrЬšBє€LЄдФ М˜^2ўТ ђТ:^‚Є Ђ„DЦx:ЂМp š`b T F 8 *   ђ ф ж Ш К Ќ ž  ‚ t f ЬX –J < h.   і 8ш к Ь О А Ђ ц ” † x j \ N @ 2 $   њ ь о а О Т Є Д №\ЋЏЦ‘ZV0 qP rP sP tP uP  vP @wP €xP yP zP {P |P }P  ~P @P €€P P ‚P ƒP „P …P  †P @‡P €ˆP ‰P ŠP ‹P ŒP P  ŽP @P €P ‘P ’P “P ”P •P  –P @—P €˜P ™P šP ›P œP P  žP @ŸP € P ЁP ЂP ЃP ЄP ЅP  ІP @ЇP €ЈP ЉP ЊP ЋP ЌP ­P  ЎP @ЏP €АP БP ВP ГP ДP ЕP  ЖP @ЗP €ИP ЙP КP ЛP МP НP  ОP @ПP €РP СP ТP УP ФP ХP  ЦP @ЧP €ШP ЩP ЪP ЫP ЬP ЭP  ЮP @ЯP €аP бP вP гP дP еP  жP @зP €иP йP кP лP мP нP  оP @пP €рP сP тP уP фP хP  цP @чP €шP щP ъP ыP ьP эP  юP @яP €№P ёP ђP ѓP єP ѕP  іP @їP €јP љP њP ћP ќP §P ўP @џP €0R 9REPORT TYPESR 0€џџR - (rpt)0SFL;SF LOCK TYPES0SFLOExtent Lock - Exclusive0 SFLIExtent Lock - Update0 SFLEExtent Lock - Next0 SFLMExtent Lock - Previous0SOP3@@OPTIONS0SOPMdisable_def_cnst_check0SOPKimplicit_transactions0SOPMcursor_close_on_commit0SOP;ansi_warnings0SOP9ansi_padding0 SOP5ansi_nulls0@SOP5arithabort0€SOP7arithignore0SOPCquoted_identifier0SOP/nocount0SOPCansi_null_dflt_on0SOPEansi_null_dflt_off0SOPOconcat_null_yields_null0 SOPEnumeric_roundabort0@SOP5xact_abort0SRV SComplete SETUSER SQL user0SRVOAdd extended procedures0SRVMAdd member to sysadmin0SRV7BULK INSERT-Delete0ХT -Update0ЦT 9Create Table0ЫT ?Create Database0ЬT 3Grant_WGO0ЭT +Grant0ЮT )Deny0ЯT 7Create View0оT ACreate Procedure0рT /Execute0фT ?Backup Database0щT =Create Default0ыT EBackup Transaction0ьT 7Create Rule0žT WCross DB Ownership Chaining0V CSYSDEVICES STATUS0V 9default disk0V ;physical disk0V 9logical disk0V 7skip header0V ;backup device0 V ;serial writes0V 3read only0 V 1deferred0SRVџџџџKSystem Administrators0SRV1sysadmin0SRVERaiserror With Log0SRVYConstraints on System tables0SRVAdbcc traceon/off0SRVAdbcc setioweightj/єН„IЭ?њН~OзЎƒPиЋ~Q$хvАkЮkZ О6ёЂ]ыЈq<Ю“FћЎ{.щ Q“ЬщvY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}`X ]ШЏЦ d[SШ 6O  triggerP 6SFL@Extent Lock - Exclusive6SOP,ansi_warnings6 L IX6 LR RID P 6 SFL:Extent Lock - Update6 L SIU6 LR APP P 6 L SIX P 6 SFL6Extent Lock - Next6 L UIX6 O Xreplication filter stored procedure P 6 SFL>Extent Lock - Previous6 L BU P 6L "RangeS-SP 6L "RangeS-UP 6A dpub6D 8torn page detection6DC (Distributed6F_U trusted6I $clustered6L *RangeIn-NullP 6SOP*ansi_padding6L $RangeIn-SP 6L $RangeIn-UP 6L $RangeIn-XP 6L "RangeX-SP 6L "RangeX-UP 6L "RangeX-XP P P P P 6T &ReferencesP P P P P 6 D  loading6 I *hypothetical P 6 SOP&ansi_nulls!P "P #P $P %P &P 'P (P )P *P +P ,P -P .P /P 0P 1P 2P 3P 4P 5P 6P 7P 8P 9P :P ;P <P =P >P ?P 6@A  rpc out6@D *pre recovery6@I &statistics@P 6@SOP&arithabortAP BP CP DP EP FP GP HP IP JP KP LP MP NP OP PP QP RP SP TP UP VP WP XP YP ZP [P \P ]P ^P _P `P aP bP cP dP 6V (skip header6V ,backup device6 V ,serial writes6SRV<System Administrators6SRV"sysadmin6SRV6Raiserror With Log6SRVJConstraints on System tables6SRV2dbcc traceon/off6SRV2dbcc setioweight6SRV4dbcc setcpuweight6SRV8dbcc showoptweights6SRV>dbcc change 'on' rules6SRV2dbcc inputbuffer6SRVDUSE to a suspect database6SRVVCreate/delete/modify system tables6SRVPCreate indices on system tables6SRVDComplete SETUSER SQL user6SRV@Add extended procedures6SRV>Add member to sysadmin6SRV0sp_altermessage6SRV@sp_dboption update part6SRV.sp_updatestats6SRV(sp_password6SRV<sp_change_users_login6SRV2sp_changedbowner6SRV&sp_adduser6SRV(BULK INSERT6SRV8DBCC ShrinkDatabase6SRV0DBCC ShrinkFile6SRV6sp_dropremotelogin6SRV8sp_fulltext_service6SRV0sp_remoteoption6SRV4dbcc outputbuffer6SRV8dbcc checkfilegroup6SRV*dbcc checkdb6SRV0dbcc checkident6SRV0dbcc checktable6SRV.dbcc dbreindex6SRV.dbcc proccache6SRV:dbcc show_statistics6SRV0dbcc showcontig6SRV,dbcc pintable6SRV<dbcc dropcleanbuffers6 SRV@Security Administrators6 SRV,securityadmin6 SRV,sp_grantlogin6 SRV.sp_revokelogin6 SRV*sp_denylogin6 SRV(sp_addlogin6 SRV*sp_droplogin6 SRV6Read the error log6 SRVHAdd member to securityadmin6 SRVTGrant/deny/revoke CREATE DATABASE6 SRV,sp_helplogins6 SRV(sp_password6 SRV*sp_defaultdb6 SRV6sp_defaultlanguage6 SRV:sp_addlinkedsrvlogin6 SRV<sp_droplinkedsrvlogin6 SRV6sp_dropremotelogin6 SRVBsp_remoteoption (update)6@SRV<Server Administrators6@SRV(serveradmin6@SRV(RECONFIGURE6@SRV"SHUTDOWN6@SRVDAdd member to serveradmin6@SRV8sp_fulltext_service6@SRV*sp_configure6@SRV.sp_tableoption6@SRV6dbcc freeproccacheЂТТТҘ™Ђ(™ЂАФљІз  Vuuuu)šЂp™ЂБHXЁЂWMMMMMDБl›ЂМЎкУМшІ šЂ˜™ЂВpx;ЈWЗЗЗЗЗœЂЇЇД ` Ј(ЌšЂУџџттттP›ЂšЂГ `}Ј_‰‰‰‰‰<БіііімšЂи€H›ЂЈ™Ђ<,МшІš˜˜˜˜˜ŒŒ˜ЇЇа4 ›ЂИšЂЭЭЭЭ€P(€Ђи™Ђ=lЈ№№№№№TЅЅЅЅ`рœЂмммм˜›ЂšЂД$x;Ј[џџџџџšЂЖџџџџџџџџџџџџЊЊЊЊxа›ЂP›ЂЕАБЂкRRRRRspt_valuesœЂ˜›ЂЖ АБЂк88888namemmmm,@2hœЂа›ЂЗDx;Ј їїїїїмœЂфБ))€4„œЂЂЂЂЂspœЂœЂИx;ЈЕ [[[[[nameРœЂhœЂЙАБЂкnumberдддд,(ЂœЂКDx;Ј ЄЂ\БЈ™Ђ€4 DЂдддд,XЂРœЂЛ x;ЈЕ CCCCCnumber(ˆЂ(ЂМ АБЂк)))))type||||Ј=№ЂXЂНDx;Ј ддддд\žЂєБ,€4 žЂžЂˆЂОx;ЈЕ ђђђђђtypeЇЇЇЇ@žЂ№ЂПАБЂкLLLLLlowЈžЂžЂРDx;Ј {{{{{ŸЂdБЌ€4ђ ф ж Ш К Ќ ž  ‚ t f X J < .   і ш к Ь О А Ђ ” † x j \ N @ 2 $   žж8шЌ.ZтдЎ„dVH:,єциЪМЎ ’„vhZL>0"јъмЮРВT Žj6 b4јМˆ^цО6і8ЖnŒ~T4& ќюШКЌž‚`R0"ђЮРœŽj( ž € М КЂшj4zLJ~о ^ Ьі ^$ Т іŽвl КШ˜h>. т 8 ˆЄ Ь@2фФœdJ< ъмЦˆz" дЦЎ ˆp6(њ ЮŽ€`Z^XЏЦФх\TР0SRVYConstraints on System tables0SRVAdbcc setioweight0SRVAdbcc traceon/off0SRVERaiserror With Log0SRV1sysadmin0SRVџџџџKSystem Administrators0T ESYSPROTECTS.ACTION0T 5References0žT WCross DB Ownership Chaining0ВT ?Create Function0СT -Select0УT -Insert0ФT -Delete0ХT -Update0ЦT 9Create Table0ЫT ?Create Database0ЬT 3Grant_WGO0ЭT +Grant0ЮT )Deny0ЯT 7Create View0оT ACreate Procedure0рT /Execute0фT ?Backup Database0щT =Create Default0ыT EBackup Transaction0ьT 7Create Rule0V CSYSDEVICES STATUS0V 9default disk0V ;physical disk0V 9logical disk0V 7skip header0V ;backup device0 V ;serial writes0V 3read only0 V 1deferred0SRVCdbcc setcpuweight0SRVGdbcc showoptweights0SRVMdbcc change 'on' rules0SRVAdbcc inputbuffer0SRV SUSE to a suspect database0SRV eCreate/delete/modify system tables0SRV _Create indices on system tables0SRV?sp_altermessage0SRVOsp_dboption update part0SRV=sp_updatestats0SRV7sp_password0SRVKsp_change_users_login0SRVAsp_changedbowner0SRV5sp_adduser0SRVGDBCC ShrinkDatabase0SRV?DBCC ShrinkFile0SRVEsp_dropremotelogin0SRVGsp_fulltext_service0SRV?sp_remoteoption0SRVCdbcc outputbuffer0SRVGdbcc checkfilegroup0SRV9dbcc checkdb0SRV ?dbcc checkident0SRV!?dbcc checktable0SRV"=dbcc dbreindex0SRV#=dbcc proccache0SRV$Idbcc show_statistics0SRV%?dbcc showcontig0SRV&;dbcc pintable0SRV'Kdbcc dropcleanbuffers0 SRVџџџџOSecurity Administrators0 SRV;securityadmin0 SRV;sp_grantlogin0 SRV=sp_revokelogin0 SRV9sp_denylogin0 SRV7sp_addlogin0 SRV9sp_droplogin0 SRVERead the error log0 SRVWAdd member to securityadmin0 SRVcGrant/deny/revoke CREATE DATABASE0 SRV ;sp_helplogins0 SRV 7sp_password0 SRV 9sp_defaultdb0 SRV Esp_defaultlanguage0 SRV Isp_addlinkedsrvlogin0 SRVKsp_droplinkedsrvlogin0 SRVEsp_dropremotelogin0 SRVQsp_remoteoption (update)0@SRVџџџџKServer Administrators0@SRV7serveradmin0@SRV7RECONFIGURE0@SRV1SHUTDOWN0@SRVSAdd member to serveradmin0@SRVGsp_fulltext_service0@SRV9sp_configure0@SRV=sp_tableoption0@SRVEdbcc freeproccache0€SRVџџџџISetup Administrators0€SRV5setupadmin0€SRVQAdd member to setupadmin0€SRVcAdd/drop/configure linked servers0€SRVeMark a stored procedure as startup0SRVџџџџMProcess Administrators0SRV9processadmin0SRV)KILL0SRVUAdd member to processadmin0SRVџџџџGDisk Administrators0SRV3diskadmin0SRV3DISK INIT0SRVOAdd member to diskadmin0SRV?sp_addumpdevice0SRV=sp_diskdefault0SRV ;sp_dropdevice0SRVџџџџCDatabase Creators0SRV3dbcreator0SRV?CREATE DATABASE0SRV=ALTER DATABASE0SRVOAdd member to dbcreator0SRV?Extend database0SRV7sp_renamedb0SRVARESTORE DATABASE0SRV7RESTORE LOG0SRV;DROP DATABASE0SRVџџџџUBulk Insert Administrators0SRV3bulkadmin0SRV7BULK INSERT````(__0^_Шx;Јъ ГГГГГs.ћР…NкЁ^'тЅf7іП–k8љР“f9 ЭvAќ{&Ў<Дs§ыџМ2qЎDPƒ ЖR‹ДЗn =ььlГшz/Б)0оPѕ™нNmР‡ІКkВ[w Б€ c Y  з Э л  Ž  ;њ˜ Q ЂІ]Й_ хЂ 6 уЄeх ,щЪ / `€[ Y„ЏЦь ]SШ 6eC @recovery interval (min)eP 6fC ,allow updatesfP 6gC 2user connectionsgP hP iP 6jC locksjP 6kC *open objectskP lP 6mC 0fill factor (%)mP nP oP pP qP rP 6sC 0nested triggerssP tP 6uC ,remote accessuP vP wP xP yP zP {P 6|C 2default language|P }P ~P P 6€A (data access6€D &recovering€P 6€SOP(arithignore6€SRVBAdd member to setupadmin6€SRVTAdd/drop/configure linked servers6€SRVVMark a stored procedure as startup6€SRV:Setup Administrators6€SRV&setupadminP ‚P ƒP „P …P †P ‡P ˆP ‰P ŠP ‹P ŒP P ŽP P P ‘P ’P “P ”P •P –P —P ˜P ™P šP ›P œP P žP 6žT HCross DB Ownership ChainingŸP  P ЁP ЂP ЃP ЄP ЅP ІP ЇP ЈP ЉP ЊP ЋP ЌP ­P ЎP ЏP АP БP ВP 6ВT 0Create FunctionГP ДP ЕP ЖP ЗP ИP ЙP КP ЛP МP НP ОP ПP РP СP 6СT SelectТP УP 6УT InsertФP 6ФT DeleteХP 6ХT UpdateЦP 6ЦT *Create TableЧP ШP ЩP ЪP ЫP 6ЫT 0Create DatabaseЬP 6ЬT $Grant_WGOЭP 6ЭT Grant”””””O` Ј€4|K`ССССЇЇˆK`јJ`^x;ЈЕ $$$$$lowqqqqHL``K`_ XЁЂhhhhh@џџœL`dL`====€L`ˆK``x;Јъ СССССspt_values””””@џџјL`HL`aXXЁЂЗ88^HNNNN`M`€L`bFАБЂй•••••Create/delete/modify system tablesРРРРЈM`јL`c(x;Јп """""8M`ЇЇ"а4ФM`"wwww№M``M`d"ФљІзсссссCreate/delete/modify system tablesДДДДБЇЇ8N`ЈM`e(x;Јџ 44444Cч88 TN`aaaa`N`№M`fФљІз66666ccccˆN`8N`gАБЂйкккккSRVаN``N`h(x;Јп ŒŒŒŒŒ`N`ЇЇа4ьN`ййййјN`ˆN`iФљІзrrrrrSRV''''88@O`аN`j(x;Јџ _____а488 \O` hO`јN`kФљІз LLLL  O`@O`lАБЂк00000spt_valueseeee P`hO`mHXЁЂWXXXXXФX`tQ`$Г кЊ У(Б  ˜P` O`npx;ЈW[[[[[ьQ`Д `  (ДP`УџџXQ`P`o `}Ј_IIIIIМT`7(МшІFппппп”Q` € ЈŠŠŠŠxQ`АP`8`є@І@љљљљљ@џџhБЇЇа4@џџјБ88  Q`˜P`p$x;Ј[ $P`јP`ЖџџџџџџџџџџџџuuuuTQ`аQ`XQ`q АБЂкЯЯЯЯЯnamešššš8R` Q`rDx;Ј &&&&&ЌR`ŒV`МR`€4TR`ssss@э`R`аQ`sx;ЈЕ      nameѕѕѕѕR`8R`tАБЂкnumberRRRRЇјR``R`uDx;Ј ™™™™™tS`W`C9€4 S`ЬЬЬЬ(S`R`v x;ЈЕ эээээnumberИИИИXS`јR`w АБЂкХХХХХtype`РS`(S`xDx;Ј CCCCC,T`ЌW`а4€4мS`а4шS`XS`yx;ЈЕ 22222typeggggT`РS`zАБЂкЯЯЯЯЯlowššššxT`шS`{Dx;Ј yyyyyX`(€4”T`,,,,(T` T`T`|x;ЈЕ lowJJJJЇ`U`xT`} XЁЂqqqqq@џџДU`|U`$$$$˜U` T`~x;Јъ •••••spt_valuesРРРР;™V``U`XXЁЂЗэээээ;r^HИИИИpV`˜U`€@АБЂйДДДДДCreate indices on system tablesссссИV`V`(x;Јп ŸŸŸŸŸВВВВЇЇа4дV`ЪЪЪЪјV`pV`‚ФљІздддддCreate indices on system tables@W`ИV`ƒ(x;Јџ 88 \W`ХХХХhW`јV`„ФљІзЯЯЯЯЯšššš@F`W`@W`…АБЂй SRVXXXXиW`hW`†(x;Јп шF`ЇЇа4єW`ккккX`W`‡ФљІз00000SRVeeeeььььHX`иW`ˆ(x;Јџ /////88 dX`zzzzpX`X`‰ФљІз————— ТТТТЈX`HX`ŠАБЂкДДДДДspt_valuesсссс_Y`pX`‹HXЁЂWЦЦЦЦЦьВ|Z`ьГЌ p У8Ь_ ““““ Y`ЈX`Œpx;ЈWТТТТТєZ`Д `  (МY`Уџџ————`Z`Y` `}Ј_EEEEEФ]`0Q_ЈQ_8 Ъ­pЦЦЦЦЦ$›0Р_hh““““ЈQ_ R_6 Ъ­ъ$›0Р_hhFFFFS_ˆS_0 Ъ­ЎќќќќќЈZ` Y`Ž$x;Ј[DDDDD,Y`@H_Жџџџџџџџџџџџџ0Р_иZ``Z` АБЂк„„„„„nameбббб­Ў4@[`ЈZ`Dx;Ј лллллД[`Œ_`aaaa€4\[`ŽŽŽŽЧЧЧЧh[`иZ`‘x;ЈЕ  name\\\\˜[`@[`’АБЂкDDDDDnumber \`h[`“Dx;Ј )))))|\`<В€4 \`||||----0\`˜[`” x;ЈЕ лллллnumberŽŽŽŽP``\`\`• АБЂкtypeSSSSЏH`Ш\`0\`–Dx;Ј wwwww4]`дВ€4ф\`""""№\``\`—x;ЈЕ ЫЫЫЫЫtypežžžž]`Ш\`˜АБЂк low^^^^€]`№\`™Dx;Ј lllllDВ€4œ]`9999Ј]`]`šx;ЈЕ  low^^^^h^`€]`› XЁЂууууу@џџМ^`„^`ЖЖЖЖ ^`Ј]`œx;Јъ spt_valuesSSSS_`h^`XXЁЂЗSSSSS^H№ т О А € r d V H :   ф ж И Њ Œ ~ p R D 6 (  ў№тдЦИЊœŽ€PB4& ќюрвФЖЈšŒ~pbTF8№тдЦИЊœŽ€rdVH:,єциЪМЎ ’„vhZL&ь–BиЪЄ|n`RDішкЬОА„vh8*ђфДІ˜n`D6(шкЎ `\"ЏЦД^TР 0SRV7sp_renamedb0SRV7BULK INSERT0SRVџџџџUBulk Insert Administrators0SRV3bulkadmin0T ESYSPROTECTS.ACTION0T 5References0žT WCross DB Ownership Chaining0ВT ?Create Function0СT -Select0УT -Insert0ФT -Delete0ХT -Update0ЦT 9Create Table0ЫT ?Create Database0ЬT 3Grant_WGO0ЭT +Grant0ЮT )Deny0ЯT 7Create View0оT ACreate Procedure0рT /Execute0фT ?Backup Database0щT =Create Default0ыT EBackup Transaction0ьT 7Create Rule0V CSYSDEVICES STATUS0V 9default disk0V ;physical disk0V 9logical disk0V 7skip header0V ;backup device0 V ;serial writes0V 3read only0 V 1deferred0SRVOAdd member to bulkadminа4@џџxkЊ88 mmmmhБ˜Б}є@ІC"""""ДБдБєББwwww˜Б8Б~ МшІљZŠQQQQvaрБhБ(МшІFЌЌЌЌЌœ Б € Јљљљљ€ Б˜Б€€є@І@#####@џџРmЊЇЇ а4@џџPnЊ88 @џџЈnЊЇЇа4@џџ0oЊ88 vvvvА БрБє@ІC55555ќБ Б< Б\ Б````р Б€ Б‚ МшІљZŠХХХХt_( БА Бƒ(МшІFяяяяяф Б € ЈККККШ Бр Б„€є@І@ННННН@џџxqЊЇЇ а4@џџrЊ88 @џџ`rЊЇЇа4@џџшrЊ88 шшшшј Б( Б…є@ІCzzzzzD Бd Б„ БЄ Б////( БШ Б† МшІљbbbbbZŠ7777, p Бј Б‡(МшІFUUUUU, Б € Ј Б( Бˆ€є@І@ЅЅЅЅЅ@џџ0uЊЇЇа4@џџШuЊ88 @џџ vЊЇЇа4@џџЈvЊ88 №№№№p Б‰є@ІC#####Œ БЌ БЬ Бь Бvvvv) values ('sp_dropdevice', 512, 'SRV', 9) -- dbcreator insert spt_values(name, number, type, low) values ('Database Creators', 1024, 'SRV', -1) insert spt_values(name, number, type, low) values ('dbcreator', 1024, 'SRV', 0) insert spt_values(name, number, type, low) values ('CREATE DATABASE', 1024, 'SRV', 1) insert spt_values(name, number, type, low) values ('ALTER DATABASE', 1024, 'SRV', 2) insert spt_values(name, number, type, low) values ('Add member to dbcreator', 1024, 'SRV', 3)@0ЈТ ЬeЈ‚tttttДБДБ*Бv.!!!!@XБ(БУvЬeЈ™™™™™ insert spt_values(name, number, type, low) values ('Extend database', 1024, 'SRV', 4) insert spt_values(name, number, type, low) values ('sp_renamedb', 1024, 'SRV', 5) insert spt_values(name, number, type, low) values ('RESTORE DATABASE', 1024, 'SRV', 6) insert spt_values(name, number, type, low) values ('RESTORE LOG', 1024, 'SRV', 7) insert spt_values(name, number, type, low) values ('DROP DATABASE', 1024, 'SRV', 8) ЬЬЬЬ ˜И Б(БФ|мQЈЕчччччјБ `ј@џџја4ј88 v@џџЎЇЇВВВВа4  Б№БЦPўЌ;ИИИИИээээМБ(р Б№Б МшІљ”””””LxССССˆББ(МшІFžžžžž$Б € ЈЫЫЫЫБ@Б`є@І@ppppp@џџ`ЎЇЇ а4@џџ№Ў88 @џџHЎЇЇа4%%%%8БˆБ є@ІCЇЇЇЇЇЄБФБфБђђђђLhББ МшІљ)))))hž||||pАБ8Б(МшІFЭЭЭЭЭŒБ € Ј˜˜˜˜pБhБ є@І@ttttt@џџhaЊЇЇ а4@џџјaЊ88 @џџPbЊЇЇа4@џџиbЊ88 @џџ0cЊ88 !!!!ЈБАБє@ІCЬБьБ Б,БLБMMMMмБиБpБ МшІљ‡‡‡‡‡hžввввš БЈБ(МшІF‘‘‘‘‘ќБ € ЈФФФФрБиБ є@І@rrrrr@џџ eЊЇЇа4@џџ(fЊ88 @џџ€fЊЇЇа4@џџgЊ88 @џџ`gЊ88 '''' Бє@ІC˜˜˜˜˜<Б\Б|БœБМБЭЭЭЭT____\Б`РБˆБPd/І€qqqqqs˜„БD р ! МБL4БxмБЬ‚ЂuФБ$$$$p(БИБNМшІ0ЬЬЬЬЬ(@1 varchar(30),@2 int,@3 varchar(30))™™™™Вp РБ(Б‘zМшІ1‚‚‚‚‚INSERT [spt_values]([name],[number],[type]) VALUES(@1,@2,@3)ззззе庘šј0БˆБ’ МшІ3ЦЦЦЦЦБЄБќБ““““0xБ№Б“,МшІšnnnnnŒŒ˜ЇЇа4@0@_\XВ;;;;P0Б Б”lЈ™™™™™Backup DatabaseЬЬЬЬˆPрБРБ•,МшІšјјјјјŒŒ˜88 xБрБo­­­­O 9р€hБРБ–,МшІšЇЇЇЇЇŒŒ˜ЇЇа4мp­ 8­ђђђђP(Б Б—lЈTQQQQ­Ё ƒhБРБ˜Pd/І€s˜ŒŸЂт | # ќБLtБxБЬ‚ЂuФііHHHHp(Б№Б™NМшІ0ГГГГГ(@1 varchar(30),@2 int,@3 varchar(30))ццццp БhБšzМшІ1INSERT [spt_values]([name],[number],[type]) VALUES(@1,@2,@3)LLLL_0PЎРБ› МшІ3TБфБ<БBBBBАt­0И(БШ Бœ,МшІš@@@@@ŒŒ˜ЇЇа4hhhhиЎ(_P0Б БlЈ›››››Create DefaultЮЮЮЮˆP ББž,МшІš,,,,,ŒŒ˜88 љљљљ\ž˜yyyy\PВраpŸЂБŸ,МшІšШШШШШŒŒ˜ЇЇа4œЈ—_MEPxБ(Б lЈTAAAA(HБ(БˆUпЈo4ћИ<џР‘P№Х’SэР“f'а›V#Ю—Й`TaVЏЦN_U 0D 3read only0D 9dbo use only0D 7single user0€D =emergency mode0D ;missing files0@D 5autoshrink0@D IALL SETTABLE OPTIONS0D Euser info in doubt0@D Acleanly shutdown0D2 ADATABASE OPTIONS0D2 7db chaining0D2 Enumeric roundabort0D2 5arithabort0 D2 9ANSI padding0@D2 CANSI null default0D2 Oconcat null yields null0D2 Erecursive triggers0D2 Odefault to local cursor0€D2 Cquoted identifier0D2 Mauto create statistics0D2 Mcursor close on commit0D2 5ANSI nulls0D2 ;ANSI warnings0 D2 Cfull text enabled0@D2 Mauto update statistics0|“WD2 IALL SETTABLE OPTIONS0@DBRџџџџ3DB Owners0@DBRKEXECUTE any procedure0@DBRKsp_change_users_login0@DBR_Add/drop to/from db_accessadmin0@DBRSAdd/drop to/from db_owner0@DBRcAdd/drop to/from db_securityadmin0@DBRYAdd/drop to/from db_ddladmin0@DBReAdd/drop to/from db_backupoperator0@DBR]Add/drop to/from db_datareader0@DBR ]Add/drop to/from db_datawriter0@DBR eAdd/drop to/from db_denydatareader0@DBR eAdd/drop to/from db_denydatawriter0@DBR ?dbcc checkalloc0@DBR Gsp_fulltext_catalog0@DBRIsp_fulltext_database0@DBRCsp_fulltext_table0@DBR9dbcc checkdb0@DBRGdbcc checkfilegroup0@DBR?dbcc checkident0@DBR?dbcc checktable0@DBR=dbcc dbreindex0@DBR=dbcc proccache0@DBRIdbcc show_statistics0@DBR?dbcc showcontig0@DBRGdbcc shrinkdatabase0@DBR?dbcc shrinkfile0@DBR=sp_refreshview0@DBR=sp_dbcmptlevel0@DBRIsp_dboption (update)0@DBRAdbcc updateusage0@DBRџџџџQDB Access Administrators0@DBRAsp_grantdbaccess0@DBRCsp_revokedbaccess0@DBR7sp_dropuser0@DBR7sp_addalias0@DBR9sp_dropalias0@DBRџџџџUDB Security Administrators0@DBRAsp_addrolemember0@DBRCsp_droprolemember0@DBR5sp_addrole0@DBR7sp_droprole0@DBR+GRANT0@DBR-REVOKE0@DBR)DENY0@DBR;sp_addapprole0@DBR =sp_dropapprole0@DBR Esp_approlepassword0@DBR Isp_changeobjectowner0@DBR =sp_changegroup0@DBR 9sp_dropgroup0@DBR7sp_addgroup0@DBRџџџџKDB DDL Administrators0@DBR_All DDL but GRANT, REVOKE, DENY0@DBReREFERENCES permission on any table0@DBRIsp_changeobjectowner0@DBREsp_fulltext_column0@DBRCsp_fulltext_table0@DBR Idbcc show_statistics0@DBR ?dbcc showcontig0@DBR ?dbcc cleantableIsp_dboption (update)0@DBRAdbcc updateusage0@DBRџџџџQDB Access Administrators0@DBRAsp_grantdbaccess0@DBRCsp_revokedbaccess0@DBR7sp_dropuser0@DBR7sp_addalias0@DBR9sp_dropalias0@DBRџџџџUDB Security Administrators0@DBRAsp_addrolemember0@DBRCsp_droprolemember0@DBR5sp_addrole0@DBR7sp_droprole0@DBR+GRANT0@DBR-REVOKE0@DBR)DENY0@DBR;sp_addapprole0@DBR =sp_dropapprole0@DBR Esp_approlepassword0@DBR Isp_changeobjectowner0@DBR =sp_changegroup0@DBR 9sp_dropgroup0@DBR7sp_addgroup0@DBRџџџџKDB DDL Administrators0@DBR_All DDL but GRANT, REVOKE, DENY0@DBReREFERENCES permission on any table0@DBR9sp_recompile0@DBR=sp_tableoption0@DBR3sp_rename0@DBRIsp_changeobjectowner0@DBREsp_fulltext_column0@DBRCsp_fulltext_tableиЃ\%мЁl9DџЖQа‡ЇђФ<7/БњlƒpєžsЫ.D‡ѕОВЎх œ U (ыt)qo(щ   c & ч Ј a (  іqБ L дя ’ - П­`т­`а<эЊq<їР>љА{@Ь“`"І Еˆ<x`А@рhђvA systemvD  offline&VP кVP кVP кVP кVP кVP кVP кVP кVP кV P кV P кV P кV P кV P кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кV P кV!P кV"P кV#P кV$P кV%P кV&P кV'P кV(P кV)P кV*P кV+P кV,P кV-P кV.P кV/P кV0P кV1P кV2P кV3P кV4P кV5P кV6P кV7P кV8P кV9P кV:P кV;P кV<P кV=P кV>P кV?P кV@P кVAP кVBP кVCP кVDP кVEP кVFP кVGP кVHP кVIP кVJP кVKP кVLP кVMP кVNP кVOP кVPP кVQP кVRP кVSP кVTP кVUP кVVP кVWP кVXP кVYP кVZP кV[P кV\P кV]P кV^P кV_P кV`P кVaP кVbP кVcP кVdP кVeP кVfP кVgP кVhP кViP кVjP кVkP кVlP кVmP кVnP кVoP кVpP кVqP кVrP кVsP кVtP кVuP кVvP кVwP кVxP кVyP кVzP кV{P кV|P кV}P кV~P кVP кV€P кVP кV‚P кVƒP кV„P кV…P кV†P кV‡P кVˆP кV‰P кVŠP кV‹P кVŒP кVP кVŽP кVP кVP кV‘P кV’P кV“P кV”P кV•P кV–P кV—P кV˜P кV™P кVšP кV›P кVœP кVP кVžP кVŸP кV P кVЁP кVЂP кVЃP кVЄP кVЅP кVІP кVЇP кVЈP кVЉP кVЊP кVЋP кVЌP кV­P кVЎP кVЏP кVАP кVБP кVВP кVГP кVДP кVЕP кVЖP кVЗP кVИP кVЙP кVКP кVЛP кVМP кVНP кVОP кVПP кVРP кVСP кVТP кVУP кVФP кVХP кVЦP кVЧP кVШP кVЩP кVЪP кVЫP кVЬP кVЭP кVЮP кVЯP кVаP кVбP кVвP кVгP кVдP кVеP кVжP кVзP кVиP кVйP кVкP кVлP кVмP кVнP кVоP кVпP кVрP кVсP кVтP кVуP кVфP кVхP кVцP кVчP кVшP кVщP кVъP кVыP кVьP кVэP кVюP кVяP кV№P кVёP кVђP кVѓP кVєP кVѕP кVіP кVїP кVјP кVљP кVњP кVћP кVќP кV§P кVўP кVџP кVP кVP кVP кVP кVP кVP кVP кVP кVP кV P кvSOP nocountюvSRV$diskadminvSRV8Disk AdministratorsКž‚fJ.ікОЂ†jN2њоТІŠnR6ўтЦЊŽrV:цЪЎ’vZ>"ъЮВ–z^B& ювЖš~bђжКž‚fJ.і к О Ђ † j N 2  њ о Т І Š n R 6  ў т Ц Њ Ž r V :   ц Ъ Ў ’ v Z > "  ъ Ю В – z ^ B & ювЖš~bF*ђжКž‚fJ.ікОЂ†jN2њоТІŠnR6ўтЦЊŽrV:цЪЎ’vZ>"ъЮВ–z^B& ювЖš~bF*ђж2вКŒ`"С‡Г)qa­ptfО&PP RKкPP SKкPP TKкPP UK кPP VK@кPP WK€кPP XLкPP YLкPP ZLкPP [LкPP \LкPP ]L кPP ^L@кPP _L€кPP `MкPP aMкPP bMкPP cMкPP dMкPP eM кPP fM@кPP gM€кPP hNкPP iNкPP jNкPP kNкPP lNкPP mN кPP nN@кPP oN€кPP pOкPP qOкPP rOкPP sOкPP tOкPP uO кPP vO@кPP wO€кPP xPкPP yPкPP zPкPP {PкPP |PкPP }P кPP ~P@кPP P€кPP €QкPP QкPP ‚QкPP ƒQкPP „QкPP …Q кPP †Q@кPP ‡Q€кPP ˆRкPP ‰RкPP ŠRкPP ‹RкPP ŒRкPP R кPP ŽR@кPP R€кPP SкPP ‘SкPP ’SкPP “SкPP ”SкPP •S кPP –S@кPP —S€кPP ˜TкPP ™TкPP šTкPP ›TкPP œTкPP T кPP žT@кPP ŸT€кPP  UкPP ЁUкPP ЂUкPP ЃUкPP ЄUкPP ЅU кPP ІU@кPP ЇU€кPP ЈVкPP ЉVкPP ЊVкPP ЋVкPP ЌVкPP ­V кPP ЎV@кPP ЏV€кPP АWкPP БWкPP ВWкPP ГWкPP ДWкPP ЕW кPP ЖW@кPP ЗW€кPP ИXкPP ЙXкPP КXкPP ЛXкPP МXкPP НX кPP ОX@кPP ПX€кPP РYкPP СYкPP ТYкPP УYкPP ФYкPP ХY кPP ЦY@кPP ЧY€кPP ШZкPP ЩZкPP ЪZкPP ЫZкPP ЬZкPP ЭZ кPP ЮZ@кPP ЯZ€кPP а[кPP б[кPP в[кPP г[кPP д[кPP е[ кPP ж[@кPP з[€кPP и\кPP й\кPP к\кPP л\кPP м\кPP н\ кPP о\@кPP п\€кPP р]кPP с]кPP т]кPP у]кPP ф]кPP х] кPP ц]@кPP ч]€кPP ш^кPP щ^кPP ъ^кPP ы^кPP ь^кPP э^ кPP ю^@кPP я^€кPP №_кPP ё_кPP ђ_кPP ѓ_кPP є_кPP ѕ_ кPP і_@кPP ї_€кPP ј`кPP љ`кPP њ`кPP ћ`кPP ќ`кPP §` кPP ў`@кPP џ`€кPP aкPP aкPP aкPP aкPP aк#T%Гр>ГH>Г”Dx;Ј іііііL?Г CF№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`':™9b‰+"0'X љљLљљL —http://schemas.microsoft.com/SQL/ServiceBroker/Error0'E љљLљљL Ÿhttp://schemas.microsoft.com/SQL/ServiceBroker/EndDialog0'X љљLљљL Џhttp://schemas.microsoft.com/SQL/Notifications/QueryNotification0'X њљLњљL Џhttp://schemas.microsoft.com/SQL/Notifications/EventNotification0'E њљLњљL Ѓhttp://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer0'X њљLњљL йhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/MissingRoute0'X њљLњљL зhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/FailedRoute0'X њљLњљL їhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/MissingRemoteServiceBinding0' X њљLњљL ѕhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/FailedRemoteServiceBinding0' N њљLњљL ­http://schemas.microsoft.com/SQL/ServiceBroker/ServiceEcho/Echo0' X њљLљљL Лhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic/Query0' X њљLњљL Нhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic/Status0' N њљLњљL Чhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnoqtic/Description0'N њљLњљL =DEFAULT0'њљLњљL Зhttp://schemas.microsoft.com/SQL/Notifications/PostQueryNotification0'њљLњљL Зhttp://schemas.microsoft.com/SQL/Notifications/PostEventNotification0'њљLњљL Пhttq://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice0'њљLњљL Ѓhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceEcho0'њљLњљL Џhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic0'њљLњљL =DEFAULT0'ќљLќљL Нhttp://schemas.microsoft.com/SQL/Notifications/QueryNotificationService0'§љL§љL Нhttp://schemas.microsoft.com/SQL/Notifications/EventNotificationService0'ўљLўљL Їhttp://schemas.microsoft.com/SQM/ServiceBroker/ServiceBrokerйхххххItalianoААААЈ№Ў(№Ўг(x;Ју OOOOOчча4Ф№Ўи№Ў`№ЎдФљІзнннннItalianoˆˆˆˆёЎЈ№ЎеАБЂй{{{{{Italian....PёЎи№Ўж(x;Ју !!!!!чча4lёЎtttt€ёЎёЎзФљІзItalianDDDD`ђЎPёЎиМАБЂйƒƒƒƒƒgennaio,febbraio,marzo,aprile,maggio,giugno,luglio,agosto,settembre,ottobre,novembre,dicembreжжжжЈђЎ€ёЎй(x;Ју яяяяяччКа4ФђЎКККККˆѓЎ`ђЎкКФљІзgennaio,febbraio,marzo,aprile,maggio,giugno,luglio,agosto,settembre,ottobre,novembre,dicembreШШШШєЎЈђЎл`АБЂй33333gen,feb,mar,apr,mag,giu,lug,ago,set,ott,nov,dicffffPєЎˆѓЎм(x;Ју ЧЧЧЧЧчч^а4lєЎ^’’’’аєЎєЎн^ФљІз—————gen,feb,mar,apr,mag,giu,lug,ago,set,ott,nov,dicТТТТhѕЎPєЎоrАБЂйуууууlunedь,martedь,mercoledь,giovedь,venerdь,sabato,domenicaЖЖЖЖАѕЎаєЎп(x;Ју ШШШШШччpа4ЬѕЎp@іЎhѕЎрpФљІзВВВВВlunedь,martedь,mercoledь,giovedь,venerdь,sabato,domenicaччччˆіЎАѕЎс(x;Јџ ŽŽŽŽŽЧЕ88 ЄіЎллллАіЎ@іЎтФљІз]]]]]јіЎˆіЎу(x;Јџ aaaaa88 їЎ4444 їЎАіЎфФљІзўўўўўЋЋЋЋ`їЎјіЎхАБЂкsyslanguagesIIII?AЌH–ШїЎ їЎцHXЁЂW`````фЌЎ4љЎЄЭЎ6NxУ 5555XјЎ`їЎчpx;ЈWИИИИИЌљЎД ` В(tјЎУџџээээљЎШїЎш `}Ј_˜˜˜˜˜dЂЎЌ ЎXX@ Ў@иЏh4Аh­ZZZZZ<$›Д=В”—š—š0 Ў№хЎ‡_`А^­ЭЭЭЭ`љЎXјЎщ$x;Ј[вввввфїЎЖџџџџџџџџџџџџ‡‡‡‡љЎљЎъАБЂк"""""langidwwwwјљЎ`љЎыDx;Ј ЈЈЈЈЈ|њЎдЃЎ%€4 њЎ§§§§(њЎљЎь x;ЈЕ {{{{{langid....dє^`њЎјљЎэАБЂкИИИИИdateformatээээШњЎ(њЎюDx;Ј TћЎlЄЎЙ­€4фњЎ\\\\ћЎ`њЎяx;ЈЕ dateformatGGGG’’’’8ћЎШњЎ№АБЂкGGGGGdatefirst+ ћЎћЎёDx;Ј ўўўўў$ќЎмЄЎ€4МћЎЋЋЋЋ$›ићЎ8ћЎђx;ЈЕ ~~~~~datefirst++++ВќЎ ћЎѓАБЂкˆˆˆˆˆupgradeннннpќЎићЎєDx;Ј шшшшшьќЎLЅЎ€4ŒќЎНННН ќЎќЎѕx;ЈЕ *****upgradeаќЎpќЎі АБЂк22222nameggggдд<$›8§Ў ќЎїDx;Ј рррррЌ§ЎєЅЎ€4T§ЎЕЕЕЕ0 Ў`§ЎаќЎјx;ЈЕ nameIIII§Ў8§Ўљ АБЂк"""""aliaswwwwј§Ў`§ЎњDx;Ј їїїїїtўЎЄІЎ€4 ўЎЂЂЂЂ(ўЎ§Ўћ x;ЈЕ }}}}}alias((((­Ќ тXўЎј§ЎќАБЂкЙЙЙЙЙmonthsььььРўЎ(ўЎ§Dx;Ј щщщщщDџЎьЇЎ€4 мўЎММММ№ўЎXўЎў x;ЈЕ MMMMMmonthsи(џЎРўЎџАБЂк11111shortmonthsddddџЎ№ўЎDx;Ј < Ў„ЉЎ€4ЌџЎШШШШ/ШџЎ(џЎx;ЈЕ эээээshortmonthsИИИИff  ЎџЎ’ел , ‰ Ъ  \  X ›р3>Gp—єE–ї` Z:іc‰^b8О` :B d‰, H0&vhttp://schemas.microsoft.com/SQL/ServiceBroker/Error&~http://schemas.microsoft.com/SQL/ServiceBroker/EndDialog&Žhttp://schemas.microsoft.com/SQL/Notifications/QueryNotification&Žhttp://schemas.microsoft.com/SQL/Notifications/EventNotification&‚http://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer&Иhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/MissingRoute&Жhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/FailedRoute&жhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/MissingRemoteServiceBinding& дhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice/FailedRemoteServiceBinding& Œhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceEcho/Echo& šhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic/Query& œhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic/Status& Іhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic/Description&DEFAULT&–http://schemas.microsoft.com/SQL/Notifications/PostQueryNotification&–http://schemas.microsoft.com/SQL/Notifications/PostEventNotification&žhttp://schemas.microsoft.com/SQL/ServiceBroker/BrokerConfigurationNotice&‚http://schemas.microsoft.com/SQL/ServiceBroker/ServiceEcho&Žhttp://schemas.microsoft.com/SQL/ServiceBroker/ServiceDiagnostic&DEFAULT&œhttp://schemas.microsoft.com/SQL/Notifications/QueryNotificationService&œhttp://schemas.microsoft.com/SQL/Notifications/EventNotificationService&†http://schemas.microsoft.com/SQL/ServiceBroker/ServiceBrokerag,donderdag,vrijdag,zaterdag,zondag0dmy 1CчEЋNorskNorwegianjanuar,februar,mars,apqil,mai,juni,juli,august,september,oktober,november,desemberjan,feb,mar,apr,mai,jun,jul,aug,sep,okt,nov,desmandag,tirsdag,onsdag,torsdag,fredag,laurdag,sundag0 dmy 9M§[їPortuguъsPortuguesejaneiro,fevereiro,marчo,abril,maio,junho,julho,agosto,setemaro,outubro,novembro,dezembrojan,fev,mar,abr,mai,jun,jul,ago,set,out,nov,dezsegunda-feira,terчa-feira,quarta-feira,quinta-feira,sexta-feira,sсbado,domingo0 dmy   1??ЧKSuomiFinnishtammikuuta,helmikuuta,maaliskuuta,huhtikuuta,toukokuuta,kesфkuuta,heinхkuuta,elokuuta,syyskuuta,lokakuuta,marraskuuta,joulukuutatammi,helmi,maalis,huhti,touko,kesф,heinф,elo,syys,loka,marras,joulumaanantai,tiistai,keskiviikko,torstai,perjantai,lauantai,sunnuntai0 ymd 5CэK­SvenskaSwedishjanuari,februari,mars,april,mai,juni,juli,augusti,september,oktober,november,decemberjan,feb,mar,apr,maj,jun,jul,aug,sep,okt,nov,decmхndag,tisdag,onsdag,torsdag,fredag,lіrdag,sіndag^0 dmy 5?с+‹ eatinaCzechleden,њnor,bYezen,duben,kvten, erven, ervenec,srpen,zсYэ,Yэjen,listopad-prosinecI,II,III,IV,V,VI,VII,VIII,IX,X,XI,XIIpondlэ,њter§,stYeda, tvrtek,pсtek,sobota,nedle0 ymd 3EmгmagyarHungarianjanuсr,februсr,mсrcius,сprilis,mсjus,jњnius,jњlius,augusztus,szeptember,oktѓber,november,decemberjan,febr,mсrc,сpr,mсj,jњn,jњl,aug,szept,okt,nov,dechщtfQ,kedd,szerda,csќtіrtіk,pщntek,szombat,vasсrnap0dmy 3?џIНpolskiPolishstyczeD,luty,marzec,kwiecieD,maj,czerwiec,lipiec,sierpieD,wrzesieD,pazdziernik,listopad,grudzieDI,II,III,IV,V,VI,VII,VIII,IX,X,XI,XIIponiedziaBek,wtorek-[roda,czwartek,pitek,sobota,niedzielaКЎ0dmy 3CcСromтnRomanianianuarie,februarie,martie,aprilie,mai,iunie,iulie,august,septembrie,octombrie,noiembrie,decembrieIan,Feb,Mar,Apr,Mai,Iun,Iul,Aug,Sep,Oct,Nov,Decluni,marci,miercuri,joi,vineri,sюmbt-duminic0ymd 7G_бhrvatskiCroatiansije anj,velja a,o~ujak,travanj,svibanj,lipanj,srpanj,kolovoz,rujan,listopad,studeni,prosinacsij,vel,o~u,tra,svi,lip,srp,kol,ruj,lis,stu,proponedjeljak,utorak,srijeda, etvrtak,petak,subota,nedjeljab0dmy ;Gщ3™sloven inaSlovakjanuсr,februсr,marec,aprэl,mсj,jњn,jњl,august,september,oktѓber,november,decemberI,II,III,IV,V,VI,VII,VIII,IX,X,XI,XIIpondelok,utorok,streda,atvrtok,piatok,sobota,nede>adg,tirsdag,onsdag,torsdag,fredag,laurdaМ „ X к К Ž$ h 0–Ь`жpђ`Њ6Tтr  Z:іe‰ ^d8МxО`y,x;"м ЎfЗP`$.В8kп<,|FЅ7X …Ѓ™U“П!L Tsp_getschemalock<,7Lњ7P дE›U“Ы!L fsp_MSset_current_activity<,aV/8 P ‚dšU“П!L lsp_check_constbytable_rowset<,‹`d8P ašU“П!L Lsp_dropalias<,Еj™8X ŽЃ™U“П!L \sp_releaseschemalock<,ppю8P 7F›U“Ы!L Psp_MSobjsearch<,Ф„X9P ЂšU“П!L Hsp_addrole<,юŽ9X йЃ™U“П!L Tsp_resyncprepare<,Љ”т9P F›U“П!L Tsp_MShasdbaccess<,гž: P ]gšU“П!L `sp_foreign_keys_rowset<,§ЈL:P кšU“WЫ!L Jsp_addgroup<,'Г:X $Є™U“П!L Tsp_resyncexecute<,тИж: P эF›U“П!L Vsp_resolve_logins<,6Э@;P %šU“П!L Jsp_droprole<,`зu;X fЄ™U“П!L Zsp_resyncexecutesql<,oё4<P bšU“WЫ!L Lsp_dropgroup<,™ћi<X ЈЄ™U“П!L \sp_resyncuniquetable<,~ є< P ,kšU“П!L Vsp_indexes_rowset<,Ј)=P ЩšU“П!L Nsp_addapprole<,в^=X +Ѕ™U“П!L Psp_refreshview<,с9>P  šU“П!L Xsp_approlepassword<, DR>X  Ѕ™U“П!L Vsp_setuserbylogin<,№Sм> P жlšU“П!L `sp_primary_keys_rowset<,^?P LšU“П!L Nsp_setapprole<,DhF?P Ї™U“П!L Tsp_user_counter1<,S‚@P ŽšU“П!L Psp_dropapprole<,}Œ:@P gЇ™U“П!L Tsp_user_counter2<,bœФ@ P УnšU“П!L dsp_provider_types_rowset<,ŒІљ@P аšU“П!L Tsp_addrolemember<,ЖА.AP ЈЇ™U“П!L Tsp_user_counter3<,ХЪэAP SšU“П!L Vsp_droprolemember<,яд"BP ъЇ™U“П!L Tsp_user_counter4<,ўюсBP •šU“WЫ!L Psp_changegroup<,(љCP ,Ј™U“П!L Tsp_user_counter5<, ЁC P оpšU“П!L hsp_procedure_params_rowset<,7жCP лšU“П!L ^sp_change_users_login<,a DP mЈ™U“П!L Tsp_user_counter6<,p7ЪDP šU“П!L Tsp_changedbowner<,šAџDP ЏЈ™U“П!L Tsp_user_counter7<,Љ[ОEP ^šU“П!L jsp_check_removable_sysusers<,гeѓEP №Ј™U“П!L Tsp_user_counter8<,Иu}F P §ršU“П!L \sp_procedures_rowset<,тВFP сšU“П!L \sp_changeobjectowner<, ŠчFP 2Љ™U“П!L Tsp_user_counter9<,ЄІGP ТšU“П!L Psp_helpsrvrole<,EЎлGP tЉ™U“П!L Vsp_user_counter100,нЪ;SQњљL~њL lQueryNotificationErrorsQueue0,TП< ITнЪ;ћљLњL fqueue_messages_10031506190,%Г=SQќљL~њL lEventNotificationErrorsQueue0,ЦIЇ> IT%Г=ќљLњL fqueue_messages_10351507330,џm›?SQ§љLњL XServiceBrokerQueue0,8’@ ITџm›?§љL€њL fqueue_messages_10671508470,qЖƒA IThњLiњL Lsyscommittab0,ЊкwBU  С!LЭ†#L Jspt_monitor0,уўkCU ]С!LЯ†#L Hspt_values0,#`DD уўkC]С!L{С!L pDF__spt_value__statu__4460231C0,UGTE U [{#Lб†#L ^MSreplication_options0,ŽkHFP Й{#Lд†#L Vsp_MSrepl_startup0,ЧФљІзЛЛЛЛЛюююю(­а­?АБЂйвввввromтn‡‡‡‡p­ј­@(x;Ју zzzzzчч а4Œ­ //// ­(­A ФљІзWWWWWromтnДи­p­BАБЂйПППППRomanianъъъъ ­ ­C(x;Ју ььььь0 Ўчча4<­ЙЙЙЙP­и­DФљІзkkkkkRomanian>>>>8­ ­EФАБЂй`````ianuarie,februarie,martie,aprilie,mai,iunie,iulie,august,septembrie,octombrie,noiembrie,decembrie5555ќЁЎ€­P­F(x;Ју ёёёёёњCччТа4œ­ТЄЄЄЄh­8­GТФљІз]]]]]ianuarie,februarie,martie,aprilie,mai,iunie,iulie,august,septembrie,octombrie,noiembrie,decembrieРЎАш­€­H`АБЂйIan,Feb,Mar,Apr,Mai,Iun,Iul,Aug,Sep,Oct,Nov,DecSSSS0­h­I(x;Ју @@@@@`Вчч^а4L­^А­ш­J^ФљІз  Ian,Feb,Mar,Apr,Mai,Iun,Iul,Aug,Sep,Oct,Nov,DecYYYY330­0­K`АБЂйЭЭЭЭЭluni,marci,miercuri,joi,vineri,sюmbt,duminic˜˜˜˜x­А­L(x;Ју €€€€€5555чч^а4”­^ееееј­0­M^ФљІз™™™™™luni,marci,miercuri,joi,vineri,sюmbt,duminicЬЬЬЬ­@­x­N(x;Јџ ййййй88 \­ŒŒŒŒh­ј­OФљІзyyyyy,,,,А­@­P(x;Јџ zzzzzxxxx88 Ь­////и­h­QФљІзšššššЯЯЯЯ&­А­RАБЂкsyslanguagesMMMM€­и­SHXЁЂWŸŸŸŸŸдnБь­Ь‰Йu82r5У”—š ЪЪЪЪ­­Tpx;ЈWўўўўўd­Д ` В(,­УџџЋЋЋЋа­€­U `}Ј_ІІІІІ4dБАh­_____<$›”—š—š0 Ў”—š—š0 Ўѓѓѓѓ­­V$x;Ј[œ­ЖџџџџџџџџџџџџKKKK0 ЎH­а­WАБЂкlangidFFFFА­­XDx;Ј ККККК4­ЄeБ€4 Ь­яяяяр­H­Y x;ЈЕ ѓѓѓѓѓlangidІІІІ­А­ZАБЂк{{{{{dateformat....€­р­[Dx;Ј ~~~~~ ­:B><2@8,=>5<2@8,45:5<2@8O=C0@8,D52@C0@8,<0@B,0?@8;,<09,N=8,N;8,023CAB,A5?B5<2@8,>:B><2@8,=>5<2@8,45:5<2@8?>=545;=8:,2B>@=8:,A@O40,G5B2J2BJ:,?5BJ:,AJ1>B0,=545;O0dmy 5Cс?Й@CAA:89Russian/=20@L,$52@0;L,0@B,?@5;L,09,N=L,N;L,23CAB,!5=BO1@L,:BO1@L,>O1@L,5:01@LO=2,D52,<0@,0?@,<09,8N=,8N;,023,A5=,>:B,=>O,45:?>=545;L=8:,2B>@=8:,A@540,G5B25@3,?OB=8F0,AC11>B0,2>A:@5A5=L50dmy 3Aе3TќrkчeTurkishOcak,^ubat,Mart,Nisan,May1s,Haziran,Temmuz,Austos,Eylќl,Ekim,Kas1m,Aral1kOca,^ub,Mar,Nis,May,Haz,Tem,Au,Eyl,Eki,Kas,AraPazartesi,Sal1,Чar_amba,Per_embe,Cuma,Cumartesi,PazarЇЏ0dmy   5S§[ЫBritishBritish EnglishJanuary,February,March,April,May,June,July,August,September,October,November,DecemberJan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,DecMonday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday0dmy%% 1AѕiхeestiEstonianjaanuar,veebruar,mфrts,aprill,mai,juuni,juuli,august,september,oktoober,november,detsemberjaan,veebr,mфrts,apr,mai,juuni,juuli,aug,sept,okt,nov,detsesmaspфev,teisipфev,kolmapфev,neljapфev,reede,laupфev,pќhapфev,0ymd&& 7E kљlatvieauLatvianjanvris,februris,marts,apr+lis,maijs,jknijs,jklijs,augusts,septembris,oktobris,novembris,decembrisjan,feb,mar,apr,mai,jkn,jkl,aug,sep,okt,nov,decpirmdiena,otrdiena,treadiena,ceturtdiena,piektdiena,sestdiena,svtdiena,0ymd'' 7K glietuvisLithuaniansausis,vasaris,kovas,balandis,gegu~,bir~elis,liepa,rugpjktis,rugsjis,spalis,lapkritis,gruodissau,vas,kov,bal,geg,bir,lie,rgp,rgs,spl,lap,grdpirmadienis,antradienis,tre iadienis,ketvirtadienis,penktadienis,aeatadienis,sekmadienis0dmy K] kPortuguъs (Brasil)BrazilianJaneiro,Fevereiro,Marчo,Abril,Maio,Junho,Julho,Agosto,Setembro,Outubro,Novembro,DezembroJan,Fev,Mar,Abr,Mai,Jun,Jul,Ago,Set,Out,Nov,DezSegunda-Feira,Terчa-Feira,Quarta-Feira,Quinta-Feira,Sexta-Feira,Sсbado,Domingo0ymd /UŸхA~дš-N‡eTraditional ChineseNg,ŒNg, Ng,лVg,”Ng,mQg,Ng,kQg,]Ng,ASg,ASNg,ASŒNg01,02,03,04,05,06,07,08,09,10,11,12fgN,fgŒN,fg N,fgлV,fg”N,fgmQ,fgхe0ymd -9Хћ\еm­ДХKorean01,02,03,04,05,06,07,08,09,10,11,1201,02,03,04,05,06,07,08,09,10,11,12дЦ”Ц|Ч,Tж”Ц|Ч,Т”Ц|Ч,ЉК”Ц|Ч,Ў”Ц|Ч, б”Ц|Ч,|Ч”Ц|Ч0ymd /S™п€{SO-N‡eSimplified Chinese01,02,03,04,05,06,07,08,09,10,11,1201,02,03,04,05,06,07,08,09,10,11,12fgN,fgŒN,fg N,fgлV,fg”N,fgmQ,fgхeДЏ0dmy 3?AŸArabicArabicMuharram , Safar , Rabie I , Rabie II , Jumada I , Jumada II , Rajab , Shaaban , Ramadan , Shawwal , Thou Alqadah , Thou AlhajjaJan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,DecMonday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday0 dmy -5їsЯD"Thai!#2!,8! 21L,!52!,@!)2",$) 2!,!482",#2!,*4+2!,1"2",8%2!,$(42",1'2!!..,..,!5..,@!.".,..,!4.".,..,*..,.".,..,.".,..1#L,-12#,8,$+1*5,(8#L,@*2#L,-24"L МИЏ]]]]arаИЏ8ИЏt x;ЈЕ (((((months}}}}i,ЙЏ ИЏuАБЂкАААААshortmonthsххххpЙЏаИЏvDx;Ј ЏЏЏЏЏєЙЏЄ‚Аze€4ŒЙЏњњњњ^ЈЙЏЙЏwx;ЈЕ shortmonthsPPPPЏиЙЏpЙЏx АБЂк>>>>>dayskkkk,Ap@КЏЈЙЏyDx;Ј ДКЏЌƒАSe€4\КЏииииšЫhКЏиЙЏzx;ЈЕ хххххdaysАААА˜КЏ@КЏ{ АБЂкffffflcid3333Јc”ЛЏhКЏ|Dx;Ј |ЛЏL„АMi€4ЛЏ\\\\ta(ЛЏ˜КЏ}x;ЈЕ ыыыыыlcidОООО`ЛЏЛЏ~АБЂкнннннmsglangidˆˆˆˆШЛЏ(ЛЏDx;Ј –––––М„А,€4фЛЏУУУУ aМЏ`ЛЏ€x;ЈЕ лллллmsglangidŽŽŽŽРМЏШЛЏ XЁЂ–––––@џџНЏмМЏУУУУјМЏМЏ‚x;Јъ LLLLLsyslanguagespНЏРМЏƒXXЁЂЗХХХХХar^HИНЏјМЏ„(x;Јџ `````\88 дНЏ5555рНЏpНЏ…ФљІзГГГГГццццd]ОЏИНЏ†АБЂй›››››ymdЮЮЮЮPОЏрНЏ‡(x;Ју WWWWWamчча4lОЏxОЏОЏˆФљІзymdGGGGdРОЏPОЏ‰(x;Јџ ng88 мОЏ****шОЏxОЏŠФљІзњњњњњЏЏЏЏ8,0ПЏРОЏ‹(x;Јџ ˜ P88 LПЏJJJJXПЏшОЏŒФљІзхххххААААќ…АˆПЏ0ПЏ АБЂйзззззA~дš-N‡e‚‚‚‚ттŒŒ˜аПЏXПЏŽ(x;Ју ЋЋЋЋЋЕ Dчча4ьПЏўўўў €АˆПЏќЯМ­„k@ігА…` k Zіk˜ˆ^l8ЈО`шqlДАU­Ъэ0Rс&—U“њL 03Opublic GRЌ.`HŠ€#7ХнRV0Sи&—U“и&—U“ 1228dbodbo0Sц&—U“ц&—U“ 566@guestguest0SƒљLƒљL 8IINFORMATION_SCHEMA0SƒљLƒљL 8+sys0@Rя&—U“њL 07Sdb_owner @0@Rя&—U“њL 0C_db_accessadmin @0@Rє&—U“њL 0Gcdb_securityadmin @0@Rє&—U“њL 0=Ydb_ddladmin @0@Rљ&—U“њL 0Iedb_backupoperator @0@Rљ&—U“њL 0A]db_datareader @0@Rљ&—U“њL 0A]db_datawriter @0@R§&—U“њL 0Iedb_denydatareader @0 @R§&—U“њL 0Iedb_denydatawriter  @0SS"LS"L 0iy##MS_PolicyEventProcessingLogin##NЏTM UpAœђ€цЩбІ0SS"LS"L m}}ƒ##MS_PolicyEventProcessingLogin##NЏTM UpAœђ€цЩбІdbo0CYВ"LYВ"L 0cƒ##MS_AgentSigningCertificate## F„uі…№/’њїрБГWЋїcloseЗ0*ytхX €4™U“ Nsp_cursorfetchH0*˜йX €9™U“ Lsp_cursoropen0*ыМЭX €9™U“ Psp_cursoroption0*$сС X €Ў™U“ Nsp_bindsessionЗ0*К‘ P рц§™U“ Dsp_rename0*Mо… P Р[ў™U“ Nsp_resetstatuse0*†z P РІў™U“ nsp_add_file_recover_suspect_db€0*П&nP Роў™U“ xsp_add_data_file_recover_suspect_db0*јJbP Р џ™U“ vsp_add_log_file_recover_suspect_dbr0*1oVP Рfџ™U“ Jsp_spaceused_0*j“JP РšU“ Fsp_sqlexec_0*ЃЗ>P Р№šU“ Psp_unbindefault0*мл2P Р1šU“ Lsp_unbindrule0*'P Р”šU“ >sp_who*0*N$P РжšU“ @sp_who20*‡HP Р3šU“ Vsp_check_removable'-0*РlP РušU“ Zsp_certify_removable0*љїP РЗšU“ RMS_sqlctrs_users0*2ЕыP РјšU“ Jsp_autostats 0*kйпP рZšU“ Nsp_updatestatss0*Є§гP руšU“ Nsp_createstatss0*н!ШP Р<šU“ Tsp_cycle_errorlog0*FМP Р‚šU“ Nsp_helptrigger_0*OjАP РФšU“ Hsp_fixindex0*ˆŽЄP Р&šU“ Vsp_settriggerorder0*С˜TF Р’šU“ `fn_listextendedproperty0*њжŒ P РгšU“ dsp_validatepropertyinputs0*3ћ€!P Р šU“ ^sp_addextendedpropertym<*ъЏ\ P рBšU“ Vsp_special_columns… <*#дP P рбBšU“ Vsp_special_columns<*\јD P рCšU“ Vsp_special_columnst0*•9P рTCšU“ Vsp_special_columnsl<*Ю@-P рсCšU“ Rsp_sproc_columns <*e!P р"DšU“ Rsp_sproc_columnsV<*@‰P рdDšU“ Rsp_sproc_columns0*y­ P рЏDšU“ Rsp_sproc_columns<*Вб§P р\EšU“ Lsp_statistics<*ыѕёP рžEšU“ Lsp_statistics0*$цP ррEšU“ Lsp_statistics<*]>кP рcFšU“ Zsp_stored_proceduresc<*–bЮP рЦFšU“ Zsp_stored_proceduresf0*Я†ТP р(GšU“ Zsp_stored_proceduresr<*ЋЖP рАGšU“ Xsp_table_privileges<*AЯЊP рёGšU“ Xsp_table_privileges0*zѓžP р3HšU“ Xsp_table_privileges<*Г“P рзHšU“ Dsp_tables0*ь;‡P рIšU“ Dsp_tables0*%`{P рИIšU“ Rsp_linkedserversd0*^„oP р7JšU“ Hsp_catalogs0*—ЈcP рПJšU“ Jsp_tables_ex_<*аЬW P рKKšU“ Lsp_columns_ex0* ёK!P рЎKšU“ Lsp_columns_ex0*РЅ' X €74›U“ Txp_getfiledetails0*љЩ X €™4›U“ Txp_servicecontrol0*2ю X €л4›U“ Txp_availablemedia0*kX €5›U“ Fxp_dirtree 0*Є6јX €5›U“ Hxp_eventlog0*нZьP  н5›U“ Hsp_eventlog0*рX €D6›U“ Nxp_fixeddrives0*OЃдX €І6›U“ Fxp_subdirs-(0*ˆЧШX €у6›U“ Lxp_getnetname0*СыМX €K7›U“ Tsp_IsMBCSLeadByte0*њБX €­7›U“ Tsp_GetMBCSCharLen0*34ЅX €8›U“ Xxp_sqlagent_monitor0*lX™X €Q8›U“ Vxp_sqlagent_notifyš0*Ѕ|X €’8›U“ \xp_sqlagent_enum_jobs0*о X €д8›U“ `xp_sqlagent_is_starting0*ХuX €9›U“ Txp_sqlagent_param0*PщiX €X9›U“ dxp_sqlagent_proxy_account0*‰ ^X €™9›U“ `xp_sqlagent_msx_account0*Т1RX €л9›U“ hxp_enum_activescriptengines0*ћUFX €=:›U“ Jxp_fileexist 0*4z:X €Ÿ:›U“ Zxp_ntsec_enumdomainss0*mž.X €;›U“ Lxp_msx_enlist0*ІТ" X €D;›U“ Hxp_sqlmaint0*пц!X €…;›U“ Xxp_get_tape_devices\\\\\(ќlјДhа@H €ј єР0Ј АXьT јœ ”@Д @фh р| „4И ,ф` д˜ €Pр ,” рМD ˜pќ H,А ш(Ыn АMю›юkp'чЏ` Z@іm˜А^n8HјО`‚@Ъ n˜њб„x&2@&db_accessadmin&2@,db_backupoperator&2@$db_datareader&2@$db_datawriter&2@ db_ddladmin&2@,db_denydatareader&2 @,db_denydatawriter&2@db_owner&2@*db_securityadmin&2dbo&5default&6default&2guest&2.INFORMATION_SCHEMA&5internal&6internal& <Microsoft.SqlServer.Types&PRIMARY&PRIMARY&2sys&>$system_health |˜U“јџtsp_msupg_dropcatalogcomputedcols0*u\{P  |˜U“јџxsp_msupg_createcatalogcomputedcols0*Ў€„|P  |˜U“јџlsp_msupg_recreatesystemviews0*чЄx}P  |˜U“јџbsp_msupg_upgradecatalogР0* Щl~V  |˜U“јџJsyssegments0*Yэ`V  |˜U“јџPsysconstraints0*МTЎtP Річ™U“ Jsp_helpindex0*ѕxЂuP Рјш™U“ Jsp_helpstats0*.–vP Р$ъ™U“ Vsp_objectfilegroup0*gСŠwP Р&ы™U“ @sp_help0* х~xP РЙь™U“ Lsp_helprotect0*й syP Рmю™U“ Hsp_helptext0*.gzP Р№™U“ Hsp_helpuser0*KR[{P Р€ё™U“ Nsp_indexoption0*„vO|P Рѓђ™U“ @sp_lock0*НšC}P Рє™U“ Lsp_getapplock0*іО7~P Рзѕ™U“ Tsp_releaseapplock0*/у+P РNї™U“ Jsp_logdeviceР0*’JytU ря6šU“ \spt_datatype_info_ext0*ЫnmuU рњ7šU“ Tspt_datatype_info0*“avU р›9šU“ Pspt_server_info<*=ЗUwP рё:šU“ Zsp_column_privileges<*vлIxP р3;šU“ Zsp_column_privileges0*Џџ=yP рu;šU“ Zsp_column_privileges<*ш#2zP р<šU“ Fsp_columnsР<*!H&{P р_<šU“ Fsp_columns<*Zl|P рЁ<šU“ Fsp_columnsћћ0*“}P рч<šU“ Fsp_columnshh<*ЬД~P рa=šU“ Jsp_databases0*йі~P рЂ=šU“ Jsp_databases””<*>§ъP р*>šU“ Rsp_datatype_info0*h@DtV 3 $“šU“ BROUTINESтт0*Ёd8uV  ‡“šU“ FPARAMETERS0*кˆ,vV  щ“šU“ PROUTINE_COLUMNS0*­ wX €-›U“ Fxp_regread0*LбxX €Р-›U“ Hxp_regwrite0*…ѕyX €.›U“ Txp_regdeletevalue0*О§yX €І.›U“ Zxp_regaddmultistringР0*ї=ёzX €/›U“ `xp_regremovemultistring0*0bх{X €k/›U“ Nxp_regenumkeys0*i†й|X €х/›U“ Rxp_regenumvalues0*ЂЊЭ}X €0›U“ Pxp_regdeletekey0*лЮС~X €^0›U“ Xxp_instance_regread0*ѓЕX €С0›U“ Zxp_instance_regwrite8 \qРhqРјpРeФљІз?????jjjjРqР@qРf8x;Јг 33333qР U(88 ќ…ПffffрuРhqРgXљІl‚‚‚‚‚$vРКЩ!LКЩ!LDsystem_healthXXXXXX XXX8YkL 8YkL 8YkL 8YkL 8YkL8YkLq}_M q}_M q}_M q}_M ЊЁSN ЊЁSN ЊЁSN ЊЁSN ЊЁSN уХGOц^уtуХGOц^уtуХGOц^уtуХGOц^уtуХGOц^уtъ;P›‡”Mъ;P(ъ;P(ъ;P(ъ;P(ъ;P(ъ;P(ъ;P(ъ;P(ъ;P( ъ;P( ъ;P( ъ;P( ъ;P( ъ;P(ъ;P(ъ;P!ъ;P!ъ;P!ъ;P!ъ;P!ъ;P!ъ;P!ъ;P!ъ;P! U0Q(U0Q(U0Q! U0Q!U0Q!U0Q!U0Q!U0Q!U0Q!U0Q(Ž2$R(Ž2$R( Ž2$R(Ž2$R( Ž2$R(Ž2$R(Ž2$RЏЦŽ2$RЏЦŽ2$RЏЦЧVS(ЧVS(ЧVSъ;PЧVS!ЧVS( ЧVSŽ2$RЧVS({ T({ T({ T({ T({ T( 9ŸU(9ŸUЏЦ9ŸUЏЦ9ŸUЏЦ9ŸU(9ŸU(9ŸU(9ŸU( 9ŸU( 9ŸU( 9ŸU(9ŸU(rУєU(rУєU(rУєU! rУєU! rУєU!rУєU!rУєU!ЋчшV(ЋчшV(ЋчшVц^уtЋчшVц^уtЋчшV‰д9'ЋчшV!ЋчшV! ЋчшV! ЋчшV!ЋчшV!ЋчшV!ЋчшV!ЋчшV!ЋчшV!ЋчшV!ЋчшV!ЋчшV! ф нW(ф нW(ф нW!ф нW! ф нW! ф нW!ф нW!ф нW!O6LO6L O6LO6LO6LO6LO6L O6LO6LO6L Gs*M Gs*M  Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M  Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M Gs*M €—N €—N €—N €—N €—N €—N €—N €—N €—N €—N €—N €—N €—N €—N €—N €—NЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛOЙЛO ђпP ђпP  ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP  ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP ђпP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћP +ћPd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQd(яQ LуR LуR LуR LуR LуRYэ` LуRYэ` LуRYэ` LуR LуR LуR LуR LуRYэ` LуRYэ` LуRYэ`жpзSжpзSжpзSжpзSжpзSYэ`жpзSYэ`жpзSYэ`жpзSжpзSжpзSжpзSжpзSYэ`жpзSYэ`жpзSYэ` •ЫT •ЫT •ЫT •ЫT •ЫT •ЫT •ЫT •ЫT •ЫT •ЫT •ЫT  •ЫTЏЦ •ЫTЏЦ •ЫT˜йHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПU HЙПUHЙПUHЙПUЏЦHЙПUЏЦHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПU HЙПUHЙПUHЙПUЏЦHЙПUЏЦнГV( нГV(нГV(нГV(нГV(нГV(нГV(нГV(нГV( нГV(нГV(нГV(нГV(нГV(нГV(нГV(ОNcОNcОNcОNc ОNc ОNcОNc ОNcОNcОNc ОNc ОNc ОNc O6LO6L O6LO6LO6LO6LO6L O6LO6LO6LGs*M   Gs*M 0Gs*M Gs*M0000000000000000000000000000000000000000000000000000000000000000000№раРА @ P p € `    А P@0 №раРp 0 @    0 № р  € А Р а € АРар№ 0@P`pР а р №  р№Аp€ а АР№ 0 @ P ` p €    А 0 `p€ №АРар№ р А Р а №А€ ра ` € @   P p P`p@ 0р№а АРРА  0 № Р р А а p€0@P` Рар№€p`P@0 №р   0 @ P ` p €   А@P`p€ 0Рар№аРА €p`€p`P@0 №раРА  №раРА €€ Ар№P`p 0@ АРаp€ 0@P`P№раРАар№ АР`p€ 0@Pр№ № АРарp€ 0@P` АРар№@PАРа`p€  0`pар№€h0іО„8ьЈdиŽHо\,є˜` Z<іq­hјSХ^ ‹8HМ€ О` Zіr˜0^s8˜€О` ’ZsЗ  %Ÿ!œN%I+ЇвLЃ…aaмб[Ї‡ч‚GJЛЇžs9•і$џџи}“Х{ЭEЋ^ЋкQЗЎЦ ‘Ÿ3ICIМѓЏй>Ž Юи ёш‚KAЗ‘M-u1J hмэ1YаK‘эоzb@S '$Хu9˜B€CХЩй№б 2ЗГW?KOЇиХ`a{%@logphysical;Ј&ђІт[@logsize&ђІт[#@syslogical&ђІт[%@sysphysicalъ&ђІт[@syssizeAС&+Ыж\@objname{{{&dяЪ]@dbname&dяЪ]#@skipchecks&П^!@defstatus@С&П^%@logicalname&ж7Г_@delfileCС&ж7Г_%@logicalname4&\Ї`@lang&\Ї`@msgnum&H€›a@typename&Єb@loginame&Єb#@remotenameˆ&Єb'@remoteserverT&КШƒc@nomsg&КШƒc@objname&ѓьwd@endС&ѓьwd@start&ѓьwd-Checkpoint Begin&ѓьwd9CHKPT Begin DB Version&ѓьwdContext&ѓьwd#Current LSN&ѓьwdElement&ѓьwd)Element Length&ѓьwdFlag Bits&ѓьwd !Index Name&ѓьwd/Log Record Length&ѓьwd!Max XDESID&ѓьwd%Num Elements&ѓьwd-Num Transactions&ѓьwd #Object Name&ѓьwdOffset&ѓьwd'Offset in Row&ѓьwdOperation&ѓьwd Page ID№&ѓьwd%Previous LSN&ѓьwd /Previous Page LSN&ѓьwdRow Data `&ѓьwd Slot ID&ѓьwdTag Bits@&ѓьwd+Transaction Ctr&ѓьwd)Transaction ID&ѓьwd+CHKPT Begin LSNi&ѓьwdLast LSNTr&ѓьwd%Record Count­:я&ѓьwd !Bytes Usedac&ѓьwd!)Bytes Reservednџ&ѓьwd")Checkpoint End&ѓьwd#5CHKPT End DB Versionц^у&ѓьwd$#Minimum LSN&ѓьwd%#Dirty Pages&ѓьwd&COldest Replicated Begin LSNs&ѓьwd';Next Replicated End LSN&ѓьwd(KLast Distributed Backup End LSN&ѓьwd)=Last Distributed End LSNdm&ѓьwd*!Server UIDli&ѓьwd,SPIDse&ѓьwd-+Beginlog Statusv&ѓьwd.!Begin Timetu&ѓьwd0End Timesi&ѓьwd1/Transaction Begin&ѓьwd21Replicated Recordsппп&ѓьwd3/Oldest Active LSNo&ѓьwd4#Server Nameџ&ѓьwd5'Database Nameз&ѓьwd6Mark NameЩ&ѓьwd7'Master XDESIDd&ѓьwd8#Master DBIDr&ѓьwd9/Preplog Begin LSNt&ѓьwd:%Prepare Timeda&ѓьwd;1Previous Savepoint#&ѓьwd<)Savepoint Nametp&ѓьwd=/Rowbits First Bit&ѓьwd>/Rowbits Bit Countn&ѓьwd?/Rowbits Bit Values&ѓьwd@/LSN before writese&ѓьwdA'Pages Written&ѓьwdB%Page Counter&ѓьwdC-Bufwrite Page Id&ѓьwdD-Data Pages Delta&ѓьwdE5Reserved Pages Delta+&ѓьwdG+Data Rows Delta/&ѓьwdH%Command Typeѓьw&ѓьwdI)Publication IDj&ѓьwdJ!Article IDѓьw&ѓьwdK)Partial Status &ѓьwdLCommand&ѓьwdM#Byte Offsetv&ѓьwdNNew Valuep&ѓьwdOOld Value5&ѓьwdP)New Split Page &ѓьwdQ%Rows Deletedѓьw&ѓьwdR#Bytes Freedw&ѓьwdS#CI Table Ida&ѓьwdT#CI Index Id'&ѓьwdU%FileGroup IDEn&СЁ\@tabnamest&СЁ\@actionB&СЁ\@ftcatN&СЁ\@keynametr&:х•]@tabname&:х•]@colnameID&:х•]@actionw&:х•]@language+&:х•]'@type_colname.&s Š^9@fulltext_catalog_nameio&Ќ-~_)@cursor_returnme&Ќ-~_9@fulltext_catalog_name2&хQr`9@fulltext_catalog_nameOl&хQr`#@table_namew&vfa)@cursor_return'&vfa9@fulltext_catalog_nameeo&vfa#@table_nameI&WšZb#@table_nameI&WšZb%@column_namegi&ОNc)@cursor_returnTi&ОNc#@table_names&ОNc%@column_nameSa&ЩтBd@traceidѓьw&ЩтBd@recordsrs&зЖl\@objnamewb&зЖl\@indnameѓьw&-%b@objecti&fДc@dbname/&Ÿи d%CATALOG_NAMEѓьw&Ÿи d#SCHEMA_NAME&Ÿи d%SCHEMA_OWNERО&Ÿи dGDEFAULT_CHARACTER_SET_CATALOGP&Ÿи dEDEFAULT_CHARACTER_SET_SCHEMAel&Ÿи dADEFAULT_CHARACTER_SET_NAME+ata Rows Delta&ѓьwdH%Command Typeф&ѓьwdI)Publication ID8&ѓьwdJ!Article ID&ѓьwdK)Partial Status &ѓьwdLCommand&ѓьwdM#Byte Offset&ѓьwdNNew Value&ѓьwdOOld Value&ѓьwdP)New Split PageWС&ѓьwdQ%Rows Deleted &ѓьwdR#Bytes Freed&ѓьwdS#CI Table Id&ѓьwdT#CI Index Id&ѓьwdU%FileGroup ID&,lenameа4&,le#description&e5`ftraceid&e5`fproperty &e5`fvalue&e5`f@handle&žYTgeventid&žYTgcolumnids&žYTg@handle&з}Hhcolumnid[С&з}Hh-logical_operator&з}Hh3comparison_operator&з}Hhvalue&з}Hh@handle&ЂŽd “”temp_MS_AgentSigningCertificate_database<9@a$М"L$М"LЮи ёш‚KAЗ‘M-u1Jd KLpubs<9 @a|Х"L|Х"Lhмэ1YаK‘эоzb@Sd UVNorthwind<9@0uяљ"Lяљ"L'$Хu9˜B€CХЩй№бd _`AdventureWorks<9@0uПg#LПg#L2ЗГW?KOЇиХ`a{d cdAdventureWorksDWaultљљљ&X!sp_bindrule&$сС 'sp_bindsession&~вЯH!sp_blockcntn&G:Y%sp_checknamesœœœ&€^њY#sp_configure&ђІт[1sp_create_removableХШ&–)Њ")sp_createorphanЇ&,§sp_cursorФШ&@Pё'sp_cursorclose&˜Ед3+sp_cursorexecute&ytх'sp_cursorfetch&˜й%sp_cursoropen&ыМЭ)sp_cursoroptionАЫ&_‘р2+sp_cursorprepare&бйШ4-sp_cursorprepexecN& ўМ5/sp_cursorunprepare&Z=%sp_db_upgrade&)?ЌK'sp_dbcmptlevelL&№ИJ!sp_dboption&Й‚юZ!sp_dbremove&+Ыж\sp_depends&dяЪ]#sp_detach_db&П^'sp_diskdefault&ж7Г_%sp_dropdeviceЧШ&Ь{о 1sp_dropextendedproc&\Ї`'sp_dropmessageS&ЯMž#'sp_droporphansY&†z Gsp_add_file_recover_suspect_dbp&П&nQsp_add_data_file_recover_suspect_db&јJbOsp_add_log_file_recover_suspect_db_&‡H/sp_check_removablee&Рl3sp_certify_removableo&љї+MS_sqlctrs_usersp&2Еы#sp_autostatse&Є§г'sp_createstatsx&н!Ш-sp_cycle_errorloglp&С˜9fn_listextendedproperty&3ћ€!7sp_addextendedpropertyp&ЅCi#9sp_dropextendedpropertyJ&оg]$!sp_addloginКs&PАE&#sp_droploginѕ&me +#sp_denylogin’&вц-#sp_defaultdbe&Qік./sp_defaultlanguages&ŠЯ/1sp_addsrvrolememberms&ЇЯ“4sp_addusero&R/sp_approlepasswordЎ&S‚@'sp_dropapprolee&ŒІљ@+sp_addrolemembers&ўюсB'sp_changegroupp&7жC5sp_change_users_loginup&p7ЪD+sp_changedbowner_&Љ[ОEAsp_check_removable_sysusersД&тВF3sp_changeobjectownerr&џ4wK;sp_dbfixedrolepermission&ъ;P/sp_addlinkedserverc&ЧVS#sp_addservero&ЋчшV3sp_addlinkedsrvloginx&ф нW5sp_droplinkedsrvlogines&7e/sp_describe_cursorr&;++f?sp_describe_cursor_columnse&tOg=sp_describe_cursor_tableshe&­sh'sp_cursor_liste*=ЗUw3sp_column_privileges*vлIx3sp_column_privilegese&Џџ=y3sp_column_privilegesd*ш#2zsp_columnse*!H&{sp_columnsЁ*Zl|sp_columnsu&“}sp_columnsp*ЬД~#sp_databasesL&йі~#sp_databasess*>§ъ+sp_datatype_info*w!п+sp_datatype_info*АEг+sp_datatype_infor&щiЧ+sp_datatype_info_&^„o!sp_catalogs D*аЬW %sp_columns_expd& ёK!%sp_columns_exna&{94#9sp_column_privileges_exGs*_Ъ'sp_ddopenov*˜юј'sp_ddopenП&бэ(sp_ddopen_f&ЕЃН,7sp_add_server_sortinfo&юЧБ-;sp_add_server_sortinfo75e*'ьЅ./sp_catalogs_rowseto&`š//sp_catalogs_rowsete*™4Ž0Asp_column_privileges_rowsetы&вX‚1Asp_column_privileges_rowsetss* }v2-sp_columns_rowset;Ј*DЁj3-sp_columns_rowsetА&}Х^4-sp_columns_rowsetli*ЖщR5Asp_check_constraints_rowsetxt&я G6Asp_check_constraints_rowseted*(2;7Csp_check_constbytable_rowsets&aV/8Csp_check_constbytable_rowset&fДc/sp_bcp_dbcmptlevel_&Ÿи dSCHEMATAs&ƒiоgCOLUMNSde&Мвh1COLUMN_DOMAIN_USAGEp_&ѕБЦi-COLUMN_PRIVILEGESul&.жКjDOMAINSЯ/&gњЎk/DOMAIN_CONSTRAINTSУ& Ѓl+KEY_COLUMN_USAGEe&йB—m9REFERENTIAL_CONSTRAINTS_n&g‹n-CHECK_CONSTRAINTSk_&K‹o7CONSTRAINT_TABLE_USAGEr&„Џsp9CONSTRAINT_COLUMN_USAGE&h@DtROUTINESr&Ёd8uPARAMETERSi&кˆ,v)ROUTINE_COLUMNSst&SЛ)4;sp_ActiveDirectory_Starto&Œп57sp_ActiveDirectory_SCPs&Х67sp_ActiveDirectory_Objoeoc&с9>/sp_approlepasswords&S‚@'sp_dropapprole&ŒІљ@+sp_addrolemember&ХЪэA-sp_droprolememberl~&ўюсB'sp_changegroups&7жC5sp_change_users_login&p7ЪD+sp_changedbownerg&Љ[ОEAsp_check_removable_sysusersle&тВF3sp_changeobjectowners&ЄІG'sp_helpsrvroles&ьŽI3sp_helpsrvrolemembert&ЦƒJ/sp_helpdbfixedrolea&џ4wK;sp_dbfixedrolepermission&8YkL-sp_helprolemember‹&q}_M!sp_helprolep_&ЊЁSN'sp_helpntgroupe&ъ;P/sp_addlinkedserver&U0Q%sp_dropserver—&ЧVS#sp_addserverx&9ŸU%sp_helpserverp_&rУєU5sp_helplinkedsrvlogini_&ЋчшV3sp_addlinkedsrvlogin&ф нW5sp_droplinkedsrvloginro&0бX1sp_fulltext_getdata&VTХY1sp_fulltext_servicein&xЙZ3sp_fulltext_databaseН&7e/sp_describe_cursor&;++f?sp_describe_cursor_columns&tOg=sp_desc,,,,,,,,,,,,,,,,,,,,,,,,,, 4œ Р аЈ 4 €\мœl<D Œ h HєpЬЄ,„ tDьФœpH(є ќШЄ$Є@€ЬЌ|ј @ ˜ <l Ь ” p XX0 фdа Ј„ш X№ , М м@ X мДќ Ќx ˆ „Р   h№TNšИА`‚y:@ рxИр„IJ:":0€ :"o8€ :":Џ€:":8€:":0€:" k8€ :" :=€ :" 5=€$ :'ча4€џџ:'ча4ўџ:'ча4§џ:'0€:'8€:'0€ :'8€ :'$€:' $€ :' 8€. :' 8€2 :) 8€:) 4€:) 8€ :) ча4џџ:) 0€:) 8€:) 4€:) 0€:)  0€ :)  8€ :) ю 8€ :)  4€ :)  8€! :)ž 8€%:) 8€):)  Ѕ@ўџ:*8€:*ча4€џџ:*ЅUўџ:*8€:*Џ€ :*=€ :*$=€:*ча4§џ:* ча4ќџ :* Ѕћџ :+8€:+ча4€џџ:+ча4€ўџ:+ча4€§џ:+8€:+=€ :+ча4ќџ:+8:+ 8 :+ 8 :,0€:,8€:,ча4€џџ:,8€ :,8€ :,8€:,=€:,=€:-8€ from dbo.syssegments where convert(varchar(132)0G:Y•, name) like @pat end if exists (select name from dbo.systypes where convert(varchar(132), name) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'systypes.name') print ' ' raiserror(15572,-1,-1) raiserror(15546,-1,-1,'sp_rename') print ' ' select name from dbo.systypes where convert(varchar(132), name) like @pat end if exists (select name from dbo.sysusers where convert(varchar(132), name) like @pat) begin if (@msilent = 1) return (1) select @ret_val = 1 print ' ' print '===============================================================' raiserror(15544,-1,-1,'sysusers.name') print ' ' raiserror(15573,-1,-1) raiserror(15546,-1,-1,'UPDATE') print ' ' select sid,uid,name from dbo.sysusers where convert(varchar(132), name) like @pat end if (@ret_val = 0 and @msilent = 0) begin raiserror(15553,-1,-1, @dbname) raiserror(15554,-1,-1) end return (@ret_val) -- sp_checknames 0VTХYџcreate proc sp_fulltext_service @action varchar(20), -- resource_usage | clean_up | connect_timeout | data_timeout @value int = NULL -- value for resource_usage | connect_timeout | data_timeout as -- VALIDATE PARAMS -- if @action is null OR @action not in ('resource_usage', 'clean_up', 'connect_timeout', 'data_timeout') OR (@value is not null AND @action not in ('resource_usage', 'connect_timeout', 'data_timeout')) OR (@value is null and @action in ('resource_usage', 'connect_timeout', 'data_timeout')) begin raiserror(15600,-1,-1,'sp_fulltext_service') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_service') return 1 end -- CHECK PERMISSIONS (must be serveradmin) -- if (is_srvrolemember('serveradmin') = 0) begin raiserror(15247,-1,-1) return 1 end if @action = 'resource_usage' begin DBCC CALLFULLTEXT ( 13, @value ) -- FTSetResource( @value ) if @@error <> 0 return 1 end if @action = 'clean_up' begin DBCC CALLFULLTEXT ( 8 ) -- Iterate thru catalogs, remove if dbid doesn't exist. if @@error <> 0 return 1 end if @action = 'connect_timeout' begin DBCC CALLFULLTEXT ( 14, @value ) -- SetProperty( FT_PROP_CONN_TIMEOUT, @value ) if @@error <> 0 return 1 end if @action = 'data_timeout' begin DBCC CALLFULLTEXT ( 15, @value ) -- SetProperty( FT_PROP_DATA_TIMEOUT, @value ) if @@error <> 0 return 1 end -- SUCCESS -- return 0 -- sp_fulltext_service Ђd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž`‚:x{р*yЙАU„Яq:8€:8€:8€:8€ :8€:8€:,8€:,8€:,8€ :,8€ :08€:68€:60€:60€: ў8€ : 08€" : 68€& : 0ча4€џџ : 6ча4€ўџ :0­ *:0­ 4:0$>:,8€N:,­ R:,­ \:,­ f:0­ p:,­ z:0­ „:,­ Ž:,$˜:,=€Ј:,­ А:,­ К:,­ Ф:,$Ю:,­ о: ,€ш :!!,$№!:8€:8€:8€ :Џ€:$€:8":8€&:ча4€џџ:8€:8€:8€ :8€:0€:0€:8€:8€: 8€ : ча4€џџ : ча4€ўџ : ­ " : ­ , :$6:8€F:­ J:­ T:­ ^:­ h:­ r:­ |:­ †:$:=€ :­ Ј:­ В:­ М:$Ц:­ ж:€р:$ш:8€:8€:8€ :Џ€:=:=:€!:8€): ­€- : ­5 : 0€= : 0€> : 8€? :€C:8€K:8€:ча4€џџ:Џ€:ЅUўџ:Ѕ§џ:ча4ќџ:8€ :=€ : =€ :8€:ча4€џџ:ЅUўџ:S8€:!8€ :8€:=€:Ї=€: $€$ : 8€4 : 0€8 :` 0€:` 8€:` 8€ :` 8€ :` 8€:` Џ€:s Џ€:":8€:":ча4€џџ:":8€џ V˜>Л>ЛDx;Ј ЉЉЉЉЉŒсКм=ЛDї€4Д>Лќќќќ$Ш>Л0>Лx;ЈЕ LLLLLmessageH?Л˜>Л(x;Јџ ќќќќќl/Р88 ,?ЛьЎp2єЖx:ќО€BЦˆJ ЮRж˜Zо b$цЈj,юАr4іИz<ўР‚DШŠLа’Tиš\рЂd&шЊl.№ В t 6 ј К | > Т „ F  Ъ Œ N  в ” V  кœ^ тЄf(ъЌn0ђДv8њМ~@Ф†H ЬŽPд–Xмž` Z2іz˜а^{8$О` "2К{˜асќU&bigint&­binary&hbit&Џchar&(date&=datetime&*datetime2&+)datetimeoffset&jdecimal&>float&‚geography&geometry&€#hierarchyid&"image&8int&<money&яnchar&cntext&lnumeric&чnvarchar&;real&:'smalldatetime&4smallint&z!smallmoney&b#sql_variant&sysname&#text&)time&Нtimestamp&0tinyint&$-uniqueidentifier&Ѕvarbinary&Їvarchar&ёxml<> 0 return(1) /* Create the database's system device segment. */ select @exec_str = 'CREATE DATABASE ' + quotename( @dbname , '[') + ' ON (NAME =' + quotename( @syslogical , '[') + ',FILENAME =' + '''' + @sysphysical + '''' + ',SIZE =' + convert(varchar(28),@syssize) + ') LOG ON (NAME=' + quotename( @loglogical , '[') + ',FILENAME =' + '''' + @logphysical + '''' + ',SIZE =' + convert(varchar(28),@logsize) + ')' exec(@exec_str) if @@erroq <> 0 begin raiserror(15264,-1,-1,'system or log') return(1) end -- Add a filegroup for data select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' ADD FILEGROUP readonlyfilegroup' exec(@exec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'user filegroup') return(1) end select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical1 , '[') + ',FILENAME =' + '''' + @dataphysical1 + ''%' + ',SIZE =' + convert(varchar(28),@datasize1) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'user data') exec ('drop database '+ @dbname) return(1) end -- Make this the default filegroup select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' MODIFY FILEGROUP readonlyfilegroup DEFAULT' exec(@exec_str) if @@error <> 0 begin raiserror(15264,-1,-1,'default filegroup') return(1) end /* Cieck out optional data devices. */ if @datalogical2 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical2 , '[') + ',FILENAME =' + '''' + @dataphysical2 + '''' + ',SIZE =' + convert(varchar(28),@datasize2) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical2) exec ('drop database '+ @dbname) return(1) end select @numdevq = 2 end else goto no_more_devs if @datalogical3 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical3 , '[') + ',FILENAME =' + '''' + @dataphysical3 + '''' + ',SIZE =' + convert(varchar(28),@datasize3) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical3) exec ('drop database '+ @dbname) return(1) end select @numdevq = 3 end else goto no_more_devs if @datalogical4 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical4 , '[') + ',FILENAME =' + '''' + @dataphysical4 + '''' + ',SIZE =' + convert(varchar(28),@datasize4) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical4) exec ('drop database '+ @dbname) return(1) end select @numdevq = 4 end else goto 0ђІт[Еno_more_devs if @datalogical5 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical5 , '[') + ',FILENAME =' + '''' + @dataphysical5 + '''' + ',SIZE =' + convert(varchar(28),@datasize5) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical5) exec ('drop database '+ @dbname) return(1) end select @numdevs = 5 end else goto no_more_devs if @datalogical6 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical6 , '[') + ',FILENAME =' + '''' + @dataphysical6 + '''' + ',SIZE =' + convert(varchar(28),@datasize6) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical6) exec ('drop database '+ @dbname) return(1) end select @numdevs = 6 end else goto no_more_devs if @datalogical7 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical7 , '[') + ',FILENAME =' + '''' + @dataphysical7 + '''' + ',SIZE =' + convert(varchar(28),@datasize7) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical7) exec ('drop database '+ @dbname) return(1) end select @numdevs = 7 end else goto no_more_devs if @datalogical8 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical8 , '[') + ',FILENAME =' + '''' + @dataphysical8 + '''' + ',SIZE =' + convert(varchar(28),@datasize8) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical8) exec ('drop database '+ @dbname) return(1) end select @numdevs = 8 end else goto no_more_devs if @datalogical9 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical9 , '[') + ',FILENAME =' + '''' + @dataphysical9 + '''' + ',SIZE =' + convert(varchar(28),@datasize9) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical9) exec ('drop database '+ @dbname) return(1) end select @numdevs = 9 end else goto no_more_devs if @datalogical10 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical10 , '[') + ',FILENAME =' + '''' + @dataphysical10 + '''' + ',SIZE =' + convert(varchar(28),@datasize10) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical10) exec ('drop database '+ @dbname) returm(1) end select @numdevs = 10 end else goto no_more_devs if @datalogical11 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical11 , '[') + ',FILENAME =' + '''' + @dataphysical11 + '''' + ',SIZE =' + convert(varchar(28),@datasize11) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiserror(15269,-1,-1,@datalogical11) exec ('drop database '+ @dbname) return(1) end select @numdevs = 11 end else goto no_more_devs if @datalogical12 is not null begin select @exec_str = 'ALTER DATABASE ' + quotename( @dbname , '[') +' ADD FILE (NAME =' + quotename( @datalogical12 , '[') + ',FILENAME =' + '''' + @dataphysical12 + '''' + ',SIZE =' + convert(varchar(28),@datasize12) + ') TO FILEGROUP readonlyfilegroup' exec(@exec_str) if @retcode <> 0 begin raiядЕˆmN9$ цХЈlO4ямХЂ…fO4 ьЯКЅ’y` Z2і|™8^}88, О` "2К}™8Q\8&bigint&­binary&hbit&Џchar&(date&=datetime&*datetime2&+)datetimeoffset&jdecimal&>float&‚geography&geometry&€#hierarchyid&"image&8int&<money&яnchar&cntext&lnumeric&чnvarchar&;real&:'smalldatetime&4smallint&z!smallmoney&b#sql_variant&sysname&#text&)time&Нtimestamp&0tinyint&$-uniqueidentifier&Ѕvarbinary&Їvarchar&ёxmlat the device actually exists. */ if not exists (select * from master.dbo.sysdevices where name = @logicalname) begin raiserror(15012,-1,-1,@logicalname) return (1) end /* ** Drop the device. */ if @delfile = 'delfile' dbcc dbrepair ('', 'dropdevice',@logicalname, 1) WITH NO_INFOMSGS else dbcc dbrepair ('', 'dropdevice',@logicalname, 0) WITH NO_INFOMSGS if @@error <> 0 return (1) raiserror(15463,-1,-1) return (0) -- sp_dropdevice 0\Ї`Tcreate procedure sp_dropmessage --- 1996/04/08 00:00 @msgnum int = null, -- Number of message to drop. @lang sysname = null -- Language of message to drop (or 'ALL') as declare @retcode int declare @msglangid smallint -- Must be ServerAdmin to manage messages if is_srvrolemember('serveradmin') = 0 begin raiserror(15247,-1,-1) return (1) end /* ** If no message id, show usage */ if @msgnum is null begin raiserror(15177,-1,-1) return (1) end /* ** Message id must be > 51000 */ if @msgnum < 50001 begin raiserror(15178,-1,-1) return(1) end if (select count(*) from master.dbo.sysmessages where error=@msgnum) = 0 begin raiserror(15179,-1,-1,@msgnum) return(1) end /* ** Verify the language */ if @lang is null select @lang = @@language if upper(@lang) <> 'ALL' begin begin exec @retcode = sp_validlang @lang if @retcode <> 0 return(1) end /* ** Get langid from syslanguages; us_english won't exist, so use 0. */ select @msglangid = isnull((select msglangid from master.dbo.syslanguages where name = @lang or alias = @lang),1033) end /* ** The us_english version must be the last one to be dropped */ if (@msglangid = 1033) and (select count(*) from master.dbo.sysmessages where error = @msgnum) > 1 begin raiserror(15280,-1,-1) return(1) end /* ** Drop the message. */ if upper(@lang) = 'ALL' delete from master.dbo.sysmessages where error = @msgnum else delete from master.dbo.sysmessages where error = @msgnum!and msglangid = @msglangid return (0) -- sp_dropmessage 0хQr`:create proc sp_help_fulltext_tables @fulltext_catalog_name sysname = NULL, -- full-text catalog name @table_name nvarchar(517) = NULL -- table name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- declare @ftcatid smallint if @fulltext_catalog_name is not null begin select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end end select susr.name as TABLE_OWNER, sobj.name as TABLE_NAME, sdex.name as FULLTEXT_KEY_INDEX_NAME, ObjectProperty(sobj.id, 'TableFulltextKeyColumn') as FULLTEXT_KEY_COLID, ObjectProperty(sobj.id, 'TableHasActiveFulltextIndex') as FULLTEXT_INEEX_ACTIVE, scat.name as FULLTEXT_CATALOG_NAME from sysobjects as sobj, sysindexes as sdex, sysusers as susr, sysfulltextcatalogs as scat where( @fulltext_catalog_name is null or sobj.ftcatid = @ftcatid ) and ( @table_name is null or sobj.id = @objid ) and sobj.uid = susr.uid and sobj.ftcatid = scat.ftcatid and sdex.status & 33554432 <> 0 and /* means that this is the index used enforce the uniqueness of the full-text key column *- sdex.id = sobj.id order by TABLE_OWNER, TABLE_NAME -- SUCCESS -- return 0 -- sp_help_fulltext_tables 0vfaЧcreate proc sp_help_fulltext_tables_cursor @cursor_return CURSOR VARYING OUTPUT, @fulltext_catalog_name sysname = NULL, -- full-text catalog name @table_name nvarchar(517) = NULL -- table name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- declare @ftcatid smallint if @fulltext_catalog_name is not null begin select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end end set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR select susr.name as TABLE_OWNER, sobj.name as TABLE_NAME, sdex.name as FULMTEXT_KEY_INDEX_NAME, ObjectProperty(sobj.id, 'TableFulltextKeyColumn') as FULLTEXT_KEY_COLID, ObjectProperty(sobj.id, 'TableHasActiveFulltextIndex') as FULLTEXT_INDEX_ACTIVE, scat.name as FULLTEXT_CATALOG_NAME from sysobjects as sobj, sysindexes as sdex, sysusers as susr, sysfulltextcatalogs as scat where( @fulltext_catalog_name is null or sobj.ftcatid = @ftcatid ) and ( @table_name is null or sobj.id = @objid ) and sobj.uid = susr.uid and sobj.etcatid = scat.ftcatid and sdex.status & 33554432 <> 0 and /* means that this is the index used enforce the uniqueness of the full-text key column */ sdex.id = sobj.id order by TABLE_OWNER, TABLE_NAME open @cursor_return -- SUCCESS -- return 0 -- sp_help_fulltext_tables_cursor 0ЛG=`v create procedure sp_oledb_database as begin select name from master..sysdatabases end ћћ0єk1aЃ create procedure sp_oledb_language as begin qelect 'English','us_english' union select alias,name from master..syslanguages end 4ŽŽŽŽ `}Ј_ XЁЂЏ wwwwwT_Иќ€П”П  €Н(<€ПСџџџџ{{{{H_И@^Иb$x;Ј[eeeeeЬ]ИииииЖџџџџџџџџџџџџ0000є]Иx_И_Иc АБЂй=====namehhhhП(_И _ИH_ИdАБЂкьььььsЙЙЙЙдПа_Иx_Иe АБЂк—————ядЕˆmN9$ цХЈlO4ямХЂ…fO4 ьЯКЅ’y` Z2і~™`^8О`1"2тк ™`)Ії01""]љL]љL Cimage01##а4]љL]љL Atext01$$]љL]љL Yuniqueidentifier01(( 6њL6њL Adate01))6њL6њL Atime01**6њL6њL Kdatetime201++ "6њL6њL Udatetimeoffset0100]љL]љL Gtinyint0144]љL]љL Ismallint0188 ]љL]љL ?int01::]љL]љL Ssmalldatetime01;;]љL]љL Areal01<<]љL]љL Cmomey01==]љL]љL Idatetime01>>5]љL]љL Cfloat01bbP]љL]љL Osql_variant01ccа4]љL]љL Cntext01hh]љL]љL ?bit01jj&&]љL]љL Gdecimal01ll&&]љL]љL Gnumeric01zz ]љL]љL Msmallmoney01]љL]љL Ebigint01€№|JњLJњL Ohierarchyid01№џџWњLWњL Igeometry01‚№џџ…њL…њL Kgeography01ЅЅ@]љL]љL Kvarbinary01ЇЇ@а4]љL]љL Gvarchar01­­@]љL]љL Ebinary01ЏЏ@а4]љL]љL Achar01НН]љL]љL Ktimestamp01чч@а4]љL]љL Invarchar01яя@а4]љL]љL Cnchar01ёёџџ]љL]љL ?xml01ча4]љL]љL Gsysnameblog ( @start nvarchar (22) = MULL, @end nvarchar (22) = NULL ) returns table as return select * from OpenRowset (DBLog, @start, @end) 0,lecreate function system_function_schema.fn_helpcollations ( ) returns @tab table(name sysname NOT NULL, description nvarchar(1000) NOT NULL) as begin insert @tab select * from OpenRowset(collations) return end -- fn_helpcollations 0ЩтBdžcreate procedure sp_trace_getdata (@traceid int, @records int = 0 ) as select * from OpenRowset(TrcData, @traceid, @records) N07ey-- Creation of sp_describe_cursor Create Procedure sp_describe_cursor ( @cursor_return CURSOR VARYING OUTPUT, @cursor_source nvarchar (30), @cursor_identity nvarchar (128) ) AS declare @scope int /* Check if the cursor exists by name or handle. */ If cursor_status ( @cursor_source, @cursor_identity ) >= -1 begin if lower(convert(varchar(30), @cursor_source)) = 'local' OR lower(convert(varchar(128), @cursor_source)) = 'uariable' select @scope = 1 else if lower(convert(varchar(30), @cursor_source)) = 'global' select @scope = 2 set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT reference_name, cursor_name, cursor_scope, status, model, concurrency, scrollable, open_status, cursor_rows, fetch_status, column_count, row_count, last_operation, cursor_handle FROM master.dbo.syscursorrefs scr, master.dbo.syscursors sc WHERE scr.cursor_scope = @scope and scr.reference_name = @cursor_identity and scr.cursor_handl = sc.cursor_handle ORDER BY 3, 1 FOR READ ONLY open @cursor_return end y n0;++f-- Creation of sp_describe_cursor_columns Create Procedure sp_describe_cursor_columns ( @cursor_return CURSOR VARYING OUTPUT, @cursor_source nvarchar (30), @cursor_identity nvarchar (128) ) AS declare @scope int /* Check if the cursor exists by name or handle. */ If cursor_status ( @cursor_source, @cursmr_identity ) >= -1 begin if lower(convert(varchar(30), @cursor_source)) = 'local' OR lower(convert(varchar(128), @cursor_source)) = 'variable' select @scope = 1 else if lower(convert(varchar(30), @cursor_source)) = 'global' select @scope = 2 set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT column_name, ordinal_position, column_characteristics_flags, column_size, data_type_sql, column_precision, column_scale, order_position, order_direction, hidden_column, columnid, objectid, dbid, dbname FROM master.dbo.syscursorrefs scr, master.dbo.syscursorcolumns scc WHERE scr.cursor_scope = @scope and scr.reference_name = @cursor_identity and scr.cursor_handl = scc.cursor_handle ORDER BY 2 FOR READ ONLY open @cursor_return end c0Ÿи d --Identifies schmata owned by current users, databases current users has permissions in create view INFORMATION_SCHEMA.SCHEMATA as select db.name as CATALOG_NAME ,USER]NAME() as SCHEMA_NAME ,USER_NAME() as SCHEMA_OWNER ,convert(sysname, NULL) as DEFAULT_CHARACTER_SET_CATALOG ,convert(sysname, NULL) as DEFAULT_CHARACTER_SET_SCHEMA ,a_cha.name as DEFAULT_CHARACTER_SET_NAME FROM master.dbo.sysdatabases db, master.dbo.syscharsets a_cha --charset/1001, not sortorder. WHERE a_cha.type = 1001 --- type is charset AND a_cha.id = convert(tinyint, DatabasePropertyEx(db.name, 'sqlcharset')) 0иќe”--Identifies tables accessible to the aurrent user create view INFORMATION_SCHEMA.TABLES as select distinct db_name() as TABLE_CATALOG ,user_name(o.uid) as TABLE_SCHEMA ,o.name as TABLE_NAME ,case o.xtype when 'U' then 'BASE TABLE' when 'V' then 'VIEW' end as TABLE_TYPE from sysobjects o where o.xtype in ('U', 'V') and permissions(o.id) != 0 0!іe%--Identifies table constraints for tables where the current user has any permissions on object. create view INFORMATION_SCHEMA.TABLE_CONSTRAINTS as select db_name() as CONSTRAINT_CATALOG ,user_name(c_obj.uid) as CONSTRAINT_SCHEMA ,c_obj.name as CONSTRAINT_NAME ,db_name() as TABLE_CATALOG ,user_name(t_obj.uid) as TABLE_SCHEMA ,t_obj.name as TABLE_NAME ,case c_obj.xtype when 'C' then 'CHECK' when 'UQ' then 'UNIQUE' when 'PK' then 'PRIMARY KEY' when 'F' then 'FOREIGN KEY' end as CONSTRAINT_TYPE ,'NO' as IS_DEFERRABLE ,'NO' as INITIALLY_DEFERRED from sysobjects c_obj ,sysobjects t_obj where permissions(t_obj.id) != 0 and t_obj.id = c_obj.parent_obj and c_obj.xtype in ('C' ,'UQ' ,'PK' ,'F') r_intity and scr.cursor_handl = sct.cursor_handle FOR READ ONLY open @cursor_return end rn0Ÿи d --Identifies schmata owned by current users, databases current users has permissions in create view INFORMATION_SCHEMA.SCHEMATA as select db.name as CATALOG_NAME ,USER_NAME() as SCHEMA_NAME ,USER_NAME() as SCHEMA_OWNER ,convert(sysname, NULL) as DEFAULT_CHARACTER_SET_CATALOG ,convert(sysname, NULL) as DEFAULT_CHARACTER_SET_SCHEMA ,a_cha.name as DEFAULT_CHARACTER_SET_NAME FROM master.dbo.sysdatabases db, master.dbo.syscharsets a_cha --charset/1001, not sortorder. WHERE a_cha.type = 1001 --- type is charset AND a_cha.id = convert(tinyint, DatabasePropertyEx(db.name, 'sqlcharset')) TTdpЩ(Д ` О(<`Щ“ T  Ш}<їАeб‚=№Љb#р‘NТ.яІ_ П~=фЃ`†"€З  %’а&э0-PRIMARY0-PRIMARY0-PRIMARY0џ-PRIMARY0-PRIMARY<-PRIMARY<-PRIMARY<-PRIMARY<-PRIMARY<-PRIMARYfn_servershareddrives [0‚ъ$k§create function system_function_schema.fn_virtualfilestats ( @DatabaseId Int = -1, @FileId Int = -1 ) returns @tab table(DbId SmallInt NOT NULL, FileId SmallInt NOT NULL, TimeStamp Int NOT NULL, NumberReads BigInt NOT NULL, NumberWrites BigInt NOT NULL, BytesRead BigInt NOT NULL, BytesWritten BigInt NOT NULL, IoStallMS BigInt NOT NULL ) as begin insert @tab select * from OpenRowset(VirtualFileStats, @DatabaseId, @FileId) return end -- fn_virtualfilestats 0Лl§create function system_function_schema.fn_virtualservernodes ( ) returns @tab table(NodeName sysname NOT NULL) as begin insert @tab select * from OpenRowset(virtualservernodes) return end -- fn_virtualservernodes 0ѕБЦi --Identifies privileges granted to or by current user create view INFORMATION_SCHEMA.COLUMN_PRIVILEGES as select user_name(p.grantor) as GRANTOR ,user_name(p.uid) as GRANTEE ,db_name() as TABLE_CATALOG ,user_name(o.uid) as TABLE_SCHEMA ,o.name as TABLE_NAME ,c.name as COLUMN_NAME ,case p.action when 193 then 'SELECT' when 197 then 'UPDATE' else 'REFERENCES' end as PRIVILEGE_TYPE ,case when p.protecttype = 205 then 'NO' else 'YES' end as IS_GRANTABLE from sysprotects p, sysobjects o, syscolumns c where (is_member(user_name(p.uid)) = 1 or p.grantor = user_id()) and (p.protecttype = 204 or /*grant exists without same grant with grant */ (p.protecttype = 205 and not exists(select * from sysprotects p2 where p2.id = p.id and p2.uid = p.uid and p2.action = p.action and p2.columns = p.columns and p2.grantor = p.grantor and p2.protecttype = 204))) and p.action in (26,193,197) and p.id = o.id and o.xtype in ('U', 'V') and o.id = c.id and (((convert(tinyint,substring(p.columns,1,1))&1) = 0 and (convert(int,substring(p.columns,c.colid/8+1,1))&power(2,c.colid&7)) != 0) or ((convert(tinyint,substring(p.columns,1,1))&1) != 0 and (convert(int,substring(p.columns,c.colid/8+1,1))&power(2,c.colid&7)) = 0)) and 0 != (permissions (o.id, c.name) & case p.action when 26 then 4 /*REFERENCES basebit */ when 193 then 1 /*SELECT basebit */ when 197 then 2 /*UPDATE basebit */ end) e) <.жКjЌ --Identifies user defined datatype accessible to current user. create view INFORMATION_SCHEMA.DOMAINS as select DB_NAME() as DOMAIN_CATALOG ,USER_NAME(typ.uid) as DOMAIN_SCHEMA ,typ.name as DOMAIN_NAME ,spt_dtp.LOCAL_TYPE_NAME as DATA_TYPE ,convert(int, OdbcPrec(typ.xtype, typ.length, typ.xprec) + spt_dtp.charbin) as CHARACTER_MAXIMUM_LENGTH ,convert(int, spt_dtp.charbin + case when spt_dtp.LOCAL_TYPE_NAME in ('nchar', 'nvarchar', 'ntext') then 2*OdbcPrec(typ.xtype, typ.length, typ.xprec) else OdbcPrec(typ.xtype, typ.length, typ.xprec) end) as CHARACTER_OCTET_LENGTH ,convert(sysname, NULL) as COLLATION_CATALOG ,convert(sysname, NULL) as COLLATION_SCHEMA ,typ.collation as COLLATION_NAME ,convert(sysname, NULL) as CHARACTER_SET_CATALOG ,convert(sysname, NULL) as CHARACTER_SET_SCHEMA ,convert(sysname, case when spt_dtp.LOCAL_TYPE_NAME in ('char', 'varchar', 'text') then a_cha.name when spt_dtp.LOCAL_TYPE_NAME in ('nchar', 'nvarchar', 'ntext') then N'Unicode' else NULL end) as CHARACTER_SET_NAME ,nullif(typ.xprec, 0) as NUMERIC_PRECISION ,spt_dtp.RADIX as NUMERIC_PRECISION_RADIX ,convert(int, typ.scale) as NUMERIC_SCALE ,spt_dtp.SQL_DATETIME_SUB as DATETIME_PRECISION ,com.text as DOMAIN_DEFAULT FROM master.dbo.spt_datatype_info spt_dtp, systypes typ LEFT OUTER JOIN syscomments com on typ.tdefault = com.id AND com.colid = 1, master.dbo.syscharsets a_cha --charset/1001, not sortorder. WHERE typ.xtype = spt_dtp.ss_dtype AND (spt_dtp.ODBCVer is null or spt_dtp.ODBCVer = 2) -- Use 7.0 entries AND (spt_dtp.AUTO_INCREMENT is null or spt_dtp.AUTO_INCREMENT = 0) -- Remove auto increment types AND a_cha.type = 1001 --- type is charset AND a_cha.id = convert(tinyint, ServerProperty('sqlcharset')) AND typ.xusertype > 256 -- UDF Type 0gњЎk@ --Identifies user defined datatype accessible to current user, that have constraints create view INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS as select DB_NAME() as CONSTRAINT_CATALOG ,USER_NAME(obj.uid) as CONSTRAINT_SCHEMA ,obj.name as CONSTRAINT_NAME ,DB_NAME() as DOMAIN_CATALOG ,USER_NAME(typ.uid) as DOMAIN_SCHEMA ,typ.name as DOMAIN_NAME ,'NO' as IS_DEFERRABLE ,'NO' as INITIALLY_DEFERRED FROM sysobjects obj, systypes typ WHERE obj.xtype = 'R' and obj.id = typ.domain AND typ.xusertype > 256 -- UDF Type as TABLE_NAME ,c.name as COLUMN_NAME ,case p.action when 193 then 'SELECT' when 197 then 'UPDATE' else 'REFERENCES' end as PRIVILEGE_TYPE ,case when p.protecttype = 205 then 'NO' else 'YES' end as IS_GRANTABLE from sysprotects p, sysobjects o, syscolumns c where (is_member(user_name(p.uid)) = 1 or p.grantor = user_id()) and (p.protecttype = 204 or /*grant exists without same grant with grant */ (p.protecttype = 205 and not exists(select * from sysprotects p2 where p2.id = p.id and p2.uid = p.uid and p2.action = p.action and p2.columns = p.columns and p2.grantor = p.grantor and p2.protecttype = 204))) and p.action in (26,193,197) and p.id = o.id and o.xtype in ('U', 'V') and o.id = c.id and (((convert(tinyint,substring(p.columns,1,1))&1) = 0 and (convert(int,substring(p.columns,c.colid/8+1,1))&power(2,c.colid&7)) != 0) or ((convert(tinyint,substring(p.columns,1,1))&1) != 0 and (convert(int,substring(p.columns,c.colid/8+1,1))&power(2,c.colid&7)) = 0)) and 0 != (permissions (o.id, c.name) & case p.action when 26 then 4 /*REFERENCES basebit */ when 193 then 1 /*SELECT basebit */ when 197 then 2 /*UPDATE basebit */ end) 7777  Щ`оЩ” px;ЈW????? Д ` О(< Щџџџџjjjj‚‚‚‚  ЩроЩ‡ $x;Ј[lоЩЖџџџџџџџџџџџџVVVV<чѕК`7a™™`-‰U м Ё’Jyt.fn_get_sql ( @handle binary(20) ) returns @tab table(dbid SmallInt, objectid Int, number SmallInt, encrypted Bit NOT NULL, text Text) as begin insert @tab select * from OpenRowset(FnGetSql, @handle) return end -- fn_get_sql <йB—mг --Identifies foreign constraints where the current user has --any permissions on the object create view INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS as select db_name() as CONSTRAINT_CATALOG ,user_name(fc_obj.uid) as CONSTRAINT_SCHEMA ,fc_obj.name as CONSTRAINT_NAME ,db_name() as UNIQUE_CONSTRAINT_CATALOG ,user_name(pc_obj.uid) as UNIQUE_CONSTRAINT_SCHEMA ,i.name as UNIQUE_CONSTRAINT_NAME ,'NONE' as MATCH_OPTION ,CASE WHEN (ObjectProperty(r.constid, 'CnstIsUpdateCascade')=1) THEN 'CASCADE' ELSE 'NO ACTION' END as UPDATE_RULE ,CASE WHEN (ObjectPqoperty(r.constid, 'CnstIsDeleteCascade')=1) THEN 'CASCADE' ELSE 'NO ACTION' END as DELETE_RULE from sysobjects fc_obj ,sysreferences r ,sysindexes i ,sysobjects pc_obj where permissions(fc_obj.parent_obj) != 0 and fc_obj.xtype = 'F' and r.constid = fc_obj.id and r.rkeyid = i.id and r.rkeyindid = i.indid and r.rkeyid = pc_obj.id master.dbo.sysdatabases where (@dbname is null or name = @dbname)) begin raiserror(15010,-1,-1,@dbname) return (1) end select @low!= convert(varchar(11),low) from master.dbo.spt_values where type = N'E' and number = 1 /* ** Initialize #spdbdesc from sysdatabases */ insert into #spdbdesc (dbname, owner, created, dbid, cmptlevel) select name, suser_sname(sid), convert(nvarchar(11), crdate), dbid, cmptlevel from master.dbo.sysdatabases where (@dbname is null or name = @dbname) /* ** Check if you have access to database ** if have access set size and collation */ select @low = convert(varchar(11),low) from masteq.dbo.spt_values where type = N'E' and number = 1 declare ms_crs_c1 cursor for select db_name (dbid) from #spdbdesc open ms_crs_c1 fetch ms_crs_c1 into @name while @@fetch_status >= 0 begin if (has_dbaccess(@name) <> 1) begin delete #spdbdesc where current of ms_crs_c1 raiserror(15622,-1,-1, @name) end else begin /* Insert row for each database */ select @exec_stmt = 'update #spdbdesc set dbsize = (select str(convert(dec(15),sum(size))* ' + @low + '/ 1048576,10,2)+ N'' MB'' from ' + quotename(@name, N'[') + N'.dbo.sysfiles) WHERE current of ms_crs_c1' execute (@exec_stmt) end fetch ms_crs_c1 into @name end deallocate ms_crs_c1 /* ** Now for each dbid in #spdbdesc, build the database status ** description. */ declare @curdbid smallint /* the one we're currently working on */ /* ** Set @curdbid to the first dbid. */ select @curdbid = min(dbid) from #spdbdesc while @curdbid IS NOT NULL begin set @name = db_name(@curdbid) -- These properties always available SELECT @dbdesc = 'Status=' + convert(sysname,DatabasePropertyEx(@name,'Status')) SELECT @dbdesc = @dbdesc + ', Updateability=' + convert(sysname,DatabasePropertyEx(@name,'Updateability')) SELECT @dbdesc = @dbdesc + ', UserAccess=' + convert(sysname,DatabasePropertyEx(@name,'UserAccess')) SELECT @dbdesc = @dbdesc + ', Recovery=' + convert(sysname,DatabasePropertyEx(@name,'Recovery')) SELECT @dbdesc = @dbdesc + ', Version=' + convert(sysname,DatabasePropertyEx(@name,'Version')) -- These props only available if db not shutdown IF DatabaseProperty(@name, 'IsShutdown') = 0 BEGIN SELECT @dbdesc = @dbdesc + ', Collation=' + convert(sysname,DatabasePropertyEx(@name,'Collation')) SELECT @dbdesc = @dbdesc + ', SQLSortOrder=' + convert(sysname,DatabasePropertyEx(@name,'SQLSortOrder')) END -- These are the boolean properties IF DatabasePropertyEx(@name,'IsAutoClose') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoClose' IF DatabasePropertyEx(@name,'IsAutoShrink') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoShrink' IF DatabasePropertyEx(@name,'IsInStandby') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsInStandby' IF DatabasePropertyEx(@name,'IsTornPageDetectionEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsTornPageDetectionEnabled' IF DatabasePropertyEx(@namО0-Wnќ e,'IsAnsiNullDefault') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiNullDefault' IF DatabasePropertyEx(@name,'IsAnsiNullsEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiNullsEnabled' IF DatabasePropertyEx(@name,'IsAnsiPaddingEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiPaddingEnabled' IF DatabasePropertyEx(@name,'IsAnsiWarningsEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAnsiWarningsEnabled' IF DatabasePropertyEx(@name,'IsArithmeticAbortEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsArithmeticAbortEnabled' IF DatabasePropertyEx(@name,'IsAutoCreateStatistics') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoAreateStatistics' IF DatabasePropertyEx(@name,'IsAutoUpdateStatistics') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsAutoUpdateStatistics' IF DatabasePropertyEx(@name,'IsCloseCursorsOnCommitEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsCloseCursorsOnCommitEnabled' IF DatabasePropertyEx(@name,'IsFullTextEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsFullTextEnabled' IF DatabasePropertyEx(@name,'IsLocalCursorsDefault') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsLocalCursorsDefault' IF!DatabasePropertyEx(@name,'IsNullConcat') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsNullConcat' IF DatabasePropertyEx(@name,'IsNumericRoundAbortEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsNumericRoundAbortEnabled' IF DatabasePropertyEx(@name,'IsQuotedIdentifiersEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsQuotedIdentifiersEnabled' IF DatabasePropertyEx(@name,'IsRecursiveTriggersEnabled') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsRecursiveTriggersEnabled' IF DatabasePropertyEx(Aname,'IsMergePublished') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsMergePublished' IF DatabasePropertyEx(@name,'IsPublished') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsPublished' IF DatabasePropertyEx(@name,'IsSubscribed') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsSubscribed' IF DatabasePropertyEx(@name,'IsSyncWithBackup') = 1 SELECT @dbdesc = @dbdesc + ', ' + 'IsSyncWithBackup' update #spdbdesc set dbdesc = @dbdesc where dbid = @curdbid /* ** Now get the next, if any dbid. */ select @curdbid = min(dbid) from #spdbdesc where dbid > @curdbid end /* ** Now #spdbdesc is complete so we can print out the db info */ select name = dbname, db_size = dbsize, owner = owner, dbid = dbid, created = created, status = dbdesc, compatibility_level = cmptlevel from #spdbdesc order by dbname /* ** If we are looking at one database, show its file allocation. */ if @showdev = 1 and has_dbaccess(@dbname) = 1 begin print N' ' select @cmd = N'use ' + quotename(@daname) + N' exec sp_helpfile' exec (@cmd) end return (0) -- sp_helpdb ЩЌ (x;Јџ @@@@@-88 Ќ|ЩИ|ЩH|Щ­ ФљІзџџџџ]]]]We}Щ|ЩЎ (x;Јџ *****88 }Щ(}ЩИ|ЩЏ ФљІзсссссџџџџДДДДh}Щ}ЩА АБЂкддддд@datalogical11а}Щ(}ЩБ Dx;Ј ŠŠŠŠŠtsМ€4пппп8~Щh}ЩВ Dx;Ј ггггг„}Щд|Щ0}Щ€4†††† ~Ща}ЩГ Dx;Ј ЄЄЄЄЄь}Щd|Щіі€4ёёёёа4Щ8~ЩД HXЁЂWˆˆˆˆˆ CЩќ@ЩЗ­оY$Zр нннн @Щ ~ЩЕ px;ЈWŽŽŽŽŽ BЩД ` О(<@ЩрџџџџллллDDDDdbo @Щ€Щ  АБЂк_____systypes †s`Iа;k ‚Й HQ"Ь†јПI`` IaaVУ~ Ibb IЏЦЏЦTRS  I|Щ+|Щ+2†‡ I’Jyt’Jyt№ђё IЫnmuЫnmuѓѕє I“av“avїжз IдA@ I IСQP IВji IІut I""ё$ I))Ы9;  I**Х@? I++ I,,  I..šš› I22ž}| I33 I66TХФ I77 I886„ƒ I::dde I@@Ўnm ICC IEEдде IJJИLK IKKОHG INN IZZЌlk I[[! I]]&&' I__ I`` Iaa“}| Ibb IЏЦЏЦUUV I IДhO IЈsr I""ѓ# I**Ч>= I..œœ I22 {z ICC IEEііŠ I__ I`` I""ѕ"! I..žžŸ I<џ<ќќ  ID I^ I. I_ I I and #spdevtab.name = d.name set nocount off /* ** The device number is in the high byte of sysdevices.low so ** spt_values tells us which byte to pick out. */ select device_name = d.name, physical_name = d.phyname, description = #spdevtab.statusdesc, status = d.status&12319, d.cntrltype, size from master.dbo.sysdevices d, #spdevtab, master.dbo.spt_values v where d.name = #spdevtab.name and v.type = 'E' and v.number = 3 return(0) -- sp_helpdevice 0ŸŸщopcreate procedure sp_helpfile @filename sysname = NULL /* file name or all files */ as set nocount on if @filename IS NULL begin select name, fileid, filename, filegroup = filegroup_name(groupid), 'size' = convert(nvarchar(15), size * 8) + N' KB', 'maxsize' = (case maxsize when -1 then N'Unlimited' else convert(nvarchar(15), maxsize * 8) + N' KB' end), 'growth' = (case status & 0x100000 when 0x100000 then convert(nvarchar(3), growth) + N'%' else convert(nvarchar(15), growth * 8) + N' KB' end), 'usage' = (case status & 0x40 when 0x40 then 'log only' else 'data only' end) from sysfiles order by fileid end else begin if file_id(@filename) IS NULL begin -- no such file raiserror (15325, -1, -1, 'file', @filename) return (1) end select name, filename, filegroup = filegroup_name(groupid), 'size' = convert(nvarchar(15), size * 8) + N' KB', 'maxsize' = (case maxsize when -1 then N'Unlimited' else convert(nvarchar(15), maxsize * 8) + N' KB' end), 'growth' = (case status & 0x100000 when 0x100000 then convert(nvarchar(3), growth) + N'%' else convert(nvarchar(15), growth * 8) + N' KB' end), 'usage' = (case status & 0x40 when 0x40 then 'log only' else 'data only' end) from sysfiles where fileid = file_id(@filename) order by fileid end return (0) -- sp_helpfile 0K‹o? --Identifies tables that have constraints where the --current user has any permissions on the table create view INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE as select db_name() as TABLE_CATALOG ,user_name(t_obj.uid) as TABLE_SCHEMA ,t_obj.name as TABLE_NAME ,db_name() as CONSTRAINT_CATALOG ,user_name(c_obj.uid) as CONSTRAINT_SCHEMA ,c_obj.name as CONSTRAINT_NAME from sysobjects c_obj ,sysobjects t_obj where permissions(t_obj.id) != 0 and t_obj.id = c_obj.parent_obj and c_obj.xtype in ('C' ,'UQ' ,'PK' ,'F') tg.groupname, g.groupid, 'filecount' = (select count(*) from sysfiles f where f.groupid = g.groupid and (f.status & 0x40 <> 0x40)) from sysfilegroups g where g.groupid = filegroup_id(@filegroupname) select 'file_in_group' = name, fileid, filename, 'size' = convert(nvarchar(15), size * 8) + N' KB', 'maxsize' = (case maxsize when -1 then N'Unlimited' else convert(nvarchar(15), maxsize * 8) + N' KB' end), 'growth' = (case status & 0x100000 when 0x100000 then convert(nvarchar(3), growth) + N'%' else convert(nvarchar(15), growth * 8) + N' KB' end) from sysfiles where groupid = filegroup_id(@filegroupname) and (status & 0x40 <> 0x40) order by fileid end return (0) -- sp_helpfilegroup p(д(Рx;Ј  ЙpўЙ px;ЈWКККККЌІЙІЙД ` Н(< Й@ Рџџџџ _яяяяв…8ыžQЗjаƒ6щ œ O  Е h  Ю  4 ч š M Г f  Ь2х˜KўБdЪ}0у–IќЏbШ{.с”Gњ­` Z8іƒ™ ^„8 О`8БE„™ Q"”&=Dedicated Admin Connection&)TSQL Default TCP&)TSQL Default VIA&-TSQL Local Machine&)TSQL Named Pipes int ,@CountSkipPossUsers int ,@Int1 int Declare @c10DBName sysname ,@c10DBStatus int ,@c10DBSID varbinary(85) Declare @charMaxLenLoginName varchar(11) ,@charMaxLenDBName varchar(11) ,@charMaxLenUserName varchar(11) ,@charMaxLenLangName varchar(11) Declare @DBOptLoading int --0x0020 32 "DoNotRecover" ,@DBOptPreRecovery int --0x0040 64 ,@DBOptRecovering int --0x0080 128 -@DBOptSuspect int --0x0100 256 ("not recovered") ,@DBOptOffline int --0x0200 512 ,@DBOptDBOUseOnly int --0x0800 2048 ,@DBOptSingleUser int --0x1000 4096 ------------- create work holding tables ---------------- /*Create temp tables before any DML to ensure dynamic*/ CREATE Table #tb2_PlainLogins ( LoginName sysname collate database_default NOT Null ,SID varchar(85) collate database_default NOT Null ,DefDBName sysname collate database_default Null ,DefLangName sysname collate database_default Null ,AUser char(5) collate database_default Null ,ARemote char(7) collate database_default Null ) CREATE Table #tb1_UA ( LoginName sysname collate database_default NOT Null ,DBName sysname collate database_default NOT Null ,UserName sysname collate database_default NOT Null ,UserOrAlias char(8) collate database_default NOT Null ) ---------------- Initial data values ------------------- Select @RetCode = 0 -- 0=good ,1=bad ,@CountSkipPossUsers = 0 ---------------- Only SA can run this ------------------- IF (not (is_srvrolemember('securityadmin') = 1)) begin raiserror(15247,-1,-1) Select @RetCode = 1 goto label_86return end ---------------------- spt_values ---------------- -------- 'D' SELECT @DBOptLoading = number from master.dbo.spt_values where type = 'D' and name = 'loading' SELECT @DBOptPreRecovery = number from master.dbo.spt_values where type = 'D' and ! name = 'pre recovery' SELECT @DBOptRecovering = number from master.dbo.spt_values where type = 'D' and name = 'recovering' SELECT @DBOptSuspect = number from master.dbo.spt_values where type = 'D' and name = 'not recovered' SELECT @DBOptOffline = number from master.dbo.spt_values where type = 'D' amd name = 'offline' SELECT @DBOptDBOUseOnly = number from master.dbo.spt_values where type = 'D' and name = 'dbo use only' SELECT @DBOptSingleUser = number from master.dbo.spt_values where type = 'D' and name = 'single user' --------------- Cursor, for DBNames ------------------- DECLARE ms_crs_10_DB Cursor local static For SELECT ! name ,status0ƒ0КsЕ ,sid from master.dbo.sysdatabases OPEN ms_crs_10_DB ----------------- LOOP 10: thru Databases ------------------ -------------- WHILE (10 = 10) begin --LOOP 10: thru Databases FETCH Next from ms_crs_10_DB into @c10DBName ,@c10DBStatus ,@c10DBSID IF (@@fetch_status <> 0) begin Deallocate ms_crs_10_DB ! BREAK end -------------------- Okay if we peek inside this DB now? IF ( @c10DBStatus & @DBOptDBOUseOnly > 0 AND @c10DBSID <> suser_sid() ) begin Select @CountSkipPossUsers = @CountSkipPossUsers + 1 CONTINUE end IF (@c10DBStatus & @DBOptSingleUser > 0) begin SELECT @Int1 = count(*) from master.dbo.sysprocesses where spid <> @@spid and dbid = db_id(@c10DBName) IF (@Int1 > 0) begin Select @CountSkipPossUsers = @CountSkipPossUsers + 1 CONTINUE end end IF (@c10DBStatus & ( @DBOptLoading | @DBOptRecovering | @DBOptSuspect | @DBOptPreRecovery ) > 0 ) begin Select @CountSkipPossUsers = @CountSkipPossUsers + 1 CONTINUE end IF (@c10DBStatus & ( @DBOptOffline ) > 0 ) begin --Select @CountSkipPossUsers = @CountSkipPossUsers + 1 CONTINUE end IF (has_dbaccess(@c10DBName) <> 1) begin raiserror(15622,-1,-1, @c10DBName) CONTINUE end --------------------- Add the User info to holding table. select @exec_stmt = ' INSERT #tb1_UA ( DBName ,LoginName ,UserName ,UserOrAlias ) Select N' + quotename(@c10DBName, '''') + ' ,l.loginname ,u.name ,''User'' from ' + quotename(@c10DBName, '[') + '.dbo.sysusers u ,master.dbo.syslogins l where u.sid = l.sid AND isaliased=0' + case @LoginNamePattern when null then '' else ' and ( l.name = N' + quotename(@LoginNamePattern , '''') + ' or l.loginname = N' + quotename(@LoginNamePattern , '''') + ')' end + ' UNION Select N' + quotename(@c10DBName, '''') + ' ,l.loginname ,u2.name ,''MemberOf'' from ' + quotename(@c10DBName, '[')+ '.dbo.sysmembers m ,' + quotename(@c10DBName, '[')+ '.dbo.sysusers u1 ,' + quotename(@c10DBName, '[')+ '.dbo.sysusers u2 ,master.dbo.syslogins l where u1.sid = l.sid and m.memberuid = u1.uid and m.groupuid = u2.uid' + case @LoginNamePattern when null then '' else ' and ( l.name = N' + quotename(@LoginNamePattern , '''') + ' or l.loginname = N' + quotename(@LoginNamePattern , '''') + ')' end EXECUTE(@exec_stmt) end --loop 10 --------------- Populate plain logins work table --------------- INSERT #tb2_PlainLogins ( LoginName ,SID ,DefDBName ,DefLangName ! ,AUser ,ARemote ) SELECT loginname ,convert(varchar(85), sid) ,dbname ,language ,Null ,Null from master.dbo.syslogins where @LoginNamePattern is null or name = @LoginNamePattern or loginname = @LoginNamePattern -- AUser UPDATE #tb2_PlainLogins --(1996/08/12) sееееяЦ` Z8і…™ј%^‰8О`"ˆ ЖЂи ф†АЈ?юzИvA :use remote collationvD $read only'vD2 (db chaining0VP лVP лVP лVP лVP лVP лVP лVP лVP лV P лV P лV P лV P лV P лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лV P лV!P лV"P лV#P лV$P лV%P лV&P лV'P лV(P лV)P лV*P лV+P лV,P лV-P лV.P лV/P лV0P лV1P лV2P лV3P лV4P лV5P лV6P лV7P лV8P лV9P лV:P лV;P лV<P лV=P лV>P лV?P лV@P лVAP лVBP лVCP лVDP лVEP лVFP лVGP лVHP лVIP лVJP лVKP лVLP лVMP лVNP лVOP лVPP лVQP лVRP лVSP лVTP лVUP лVVP лVWP лVXP лVYP лVZP лV[P лV\P лV]P лV^P лV_P лV`P лVaP лVbP лVcP лVdP лVeP лVfP лVgP лVhP лViP лVjP лVkP лVlP лVmP лVnP лVoP лVpP лVqP лVrP лVsP лVtP лVuP лVvP лVwP лVxP лVyP лVzP лV{P лV|P лV}P лV~P лVP лvSOP4ansi_null_dflt_onяvSRV$dbcreatorvSRV4Database CreatorsvLNG$Bulgarian(vLNGCzech)vLNGDanish*vLNGGerman+vLNGGreek,v LNG English-v LNG Finnish/v LNGFrench0vLNG$Hungarian1vLNG Italian2vLNG"japanese3vLNGDutch4vLNGPolish5vLNG"Romanian6vLNG Russian7vLNG"Croatian8vLNGSlovak9vLNG Swedish:vLNG Turkish;v$LNG$Slovenian<v%LNG"Estonian?v&LNG Latvian@v'LNG&LithuanianAvLNG$BrazilianBvLNG8Traditional ChineseCvLNGKoreanDvLNGArabicFvLNGThaiGлVЖP лVЗP лVИP лVЙP лVКP лVЛP лVМP лVНP лVОP лVПP лVРP лVСP лVТP лVУP лVФP лVХP лVЦP лVЧP лVШP лVЩP лVЪP лVЫP лVЬP лVЭP лVЮP лVЯP лVаP лVбP лVвP лVгP лVдP лVеP лVжP лVзP лVиP лVйP лVкP лVлP лVмP лVнP лVоP лVпP лVрP лVсP лVтP лVуP лVфP лVхP лVцP лVчP лVшP лVщP лVъP лVыP лVьP лVэP лVюP лVяP лV№P лVёP лVђP лVѓP лVєP лVѕP лVіP лVїP лVјP лVљP лVњP лVћP лVќP лV§P лVўP лVџP лVP лVP лVP лVP лVP лVP лVP лvSOP4ansi_null_dflt_onяvSRV$dbcreatorvSRV4Database CreatorsvLNG$Bulgarian(єиМ „hL0ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  ш Ь А ” x \ @ $  ь а Д ˜ | ` D ( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpTИ8ŠZ(фШЌtњXМ<Ь  шpЬBА”xь\ц@$МdьŒа^Д˜,|`Dв( Є№zдNИ"œј€dHЦ,R„кЈ`"aЈГ)q‡­€'ЅšPP a кPP a@кPP a€кPP bкPP bкPP bкPP bкPP bкPP b кPP b@кPP b€кPP cкPP cкPP cкPP cкPP cкPP c кPP c@кPP c€кPP dкPP dкPP dкPP dкPP dкPP d кPP d@кPP d€кPP eкPP !eкPP "eкPP #eкPP $eкPP %e кPP &e@кPP 'e€кPP (fкPP )fкPP *fкPP +fкPP ,fкPP -f кPP .f@кPP /f€кPP 0gкPP 1gкPP 2gкPP 3gкPP 4gкPP 5g кPP 6g@кPP 7g€кPP 8hкPP 9hкPP :hкPP ;hкPP <hкPP =h кPP >h@кPP ?h€кPP @iкPP AiкPP BiкPP CiкPP DiкPP Ei кPP Fi@кPP Gi€кPP HjкPP IjкPP JjкPP KjкPP LjкPP Mj кPP Nj@кPP Oj€кPP PkкPP QkкPP RkкPP SkкPP TkкPP Uk кPP Vk@кPP Wk€кPP XlкPP YlкPP ZlкPP [lкPP \lкPP ]l кPP ^l@кPP _l€кPP `mкPP amкPP bmкPP cmкPP dmкPP em кPP fm@кPP gm€кPP hnкPP inкPP jnкPP knкPP lnкPP mn кPP nn@кPP on€кPP poкPP qoкPP roкPP soкPP toкPP uo кPP vo@кPP wo€кPP xpкPP ypкPP zpкPP {pкPP |pкPP }p кPP ~p@кPP p€кPP €qкPP qкPP ‚qкPP ƒqкPP „qкPP …q кPP †q@кPP ‡q€кPP ˆrкPP ‰rкPP ŠrкPP ‹rкPP ŒrкPP r кPP Žr@кPP r€кPP sкPP ‘sкPP ’sкPP “sкPP ”sкPP •s кPP –s@кPP —s€кPP ˜tкPP ™tкPP štкPP ›tкPP œtкPP t кPP žt@кPP Ÿt€кPP  uкPP ЁuкPP ЂuкPP ЃuкPP ЄuкPP Ѕu кPP Іu@кPP Їu€кPP ЈvкPP ЉvкPP ЊvкPP ЋvкPP ЌvкPP ­v кPP Ўv@кPP Џv€кPP АwкPP БwкPP ВwкPP ГwкPP ДwкPP Еw кPP Жw@кPP Зw€кF№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`ЂЕ †іЬHˆЏА †ŽsЂV P кV P кV P кV P кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кVP кV P кV!P кV"P кV#P кV$P кV%P кV&P кV'P кV(P кV)P кV*P кV+P кV,P кV-P кV.P кV/P кV0P кV1P кV2P кV3P кV4P кV5P кV6P кV7P кV8P кV9P кV:P кV;P кV<P кV=P кV>P кV?P кV@P кVAP кVBP кVCP кVDP кVEP кVFP кVGP кVHP кVIP кVJP кVKP кVLP кVMP кVNP кVOP кVPP кVQP кVRP кVSP кVTP кVUP кVVP кVWP кVXP кVYP кVZP кV[P кV\P кV]P кV^P кV_P кV`P кVaP кVbP кVcP кVdP кVeP кVfP кVgP кVhP кViP кVjP кVkP кVlP кVmP кVnP кVoP кVpP кVqP кVrP кVsP кVtP кVuP кVvP кVwP кVxP кVyP кVzP кV{P кV|P кV}P кV~P кVP кV€P кVP кV‚P кVƒP кV„P кV…P кV†P кV‡P кVˆP кV‰P кVŠP кV‹P кVŒP кVP кVŽP кVP кVP кV‘P кV’P кV“P кV”P кV•P кV–P кV—P кV˜P кV™P кVšP кV›P кVœP кVP кVžP кVŸP кV P кVЁP кVЂP кVЃP кVЄP кVЅP кVІP кVЇP кVЈP кVЉP кVЊP кVЋP кVЌP кV­P кVЎP кVЏP кVАP кVБP кVВP кVГP кVДP кVЕP кVЖP кVЗP кVИP кVЙP кVКP кVЛP кVМP кVНP кVОP кVПP кVРP кVСP кVТP кVУP кVФP кVХP кVЦP кVЧP кVШP кVЩP кVЪP кVЫP кVЬP кVЭP кVЮP кVЯP кVаP кVбP кVвP кVгP кVдP кVеP кVжP кVзP кVиP кVйP кVкP кVлP кVмP кVнP кVоP кVпP кVрP кVсP кVтP кVуP кVфP кVхP кVцP кVчP кVшP кVщP кVъP кVыP кVьP кVэP кVюP кVяP кV№P кVёP кVђP кVѓP кVєP кVѕP кVіP кVїP кVјP кVљP кVњP кVћP кVќP кV§P кVўP кVџP кe_regreadbl&ѓЕ3xp_instance_regwrite_&MЊ?xp_instance_regdeletevaluea&†;žExp_instance_regaddmultistringco&П_’Kxp_instance_regremovemultistringr&јƒ†9xp_instance_regenumkeyspr&1Јz=xp_instance_regenumvaluespr&jЬn;xp_instance_regdeletekey_&Ѓ№b5xp_getprotocoldllinfota&мW)xp_readerrorlogAB&N]? +xp_enumerrorlogsA&РЅ' -xp_getfiledetailsLE&љЩ -xp_servicecontrolIE&2,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`*8ј #0*џџџџџџџџјgDedicated Admin Connection0*јWTSQL Local Machine0*јSTSQL Named Pipes0*јSTSQL Default TCP0*јSTSQL Default VIAgСŠw gСŠwgСŠwЈy Јy ЈyЈyЈyЈyЈyЈyЈy Јy Јy >ФЦ >ФЦ  КШƒcКШƒcКШƒc ­:яs­:яs й syй syй syй syй sy ‡H ‡H  С˜ С˜ њжŒ њжŒ њжŒ њжŒ ќbЗ1 ќbЗ1 ќbЗ1 ќbЗ1 ќbЗ1 ќbЗ1 ќbЗ1 ќbЗ1 ќbЗ1  5‡Ћ2 5‡Ћ2 5‡Ћ2 5‡Ћ2 5‡Ћ2 5‡Ћ2 5‡Ћ2 nЋŸ3  nЋŸ3  nЋŸ3  nЋŸ3 nЋŸ3  nЋŸ3 nЋŸ3 nЋŸ3 nЋŸ3 nЋŸ3 nЋŸ3  ЇЯ“4 ЇЯ“5  ЇЯ“4  ЇЯ“4 ЇЯ“4 рѓ‡5 рѓ‡5 рѓ‡5  рѓ‡5 рѓ‡5  рѓ‡5 рѓ‡5  рѓ‡5  рѓ‡5  рѓ‡5 рѓ‡5  рѓ‡5 |6 |6 |6 |6 R с9= с9>  с9>  с9> S‚@ S‚@  S‚@ Љ[ОE Љ[ОE тВF тВF  “}“}“}“} “}“}y­ y­ y­ Я†ТЯ†ТЯ†Тzѓž вX‚1 вX‚1 }Х^4 }Х^4}Х^4}Х^4 }Х^4}Х^4я G6 я G6я G6 я G6aV/8 aV/8aV/8 aV/8 ЁC ЁC ЁC ЁC ЁC ЁCИu}FИu}FИu}FИu}FИu}FИu}Fƒiоgƒiоgƒiоgƒiоg ƒiоgƒiоgМвh МвhМвh.жКj.жКj.жКj .жКi.жКj.жКj.жКj.жКj.жКj.жКj .жКj.жКjgњЎk gњЎk gњЎkgњЎkg‹n g‹n„Џsp „ЏspНгgqНгgqНгgq h@Dt h@Dth@Dth@Dth@DtтИж: тИж: }Х^4}Х^4ЖщR5 ЖщR5ЖщR5 ЖщR5я G6 я G6я G6 я G6(2;7 (2;7(2;7 (2;7aV/8 aV/8aV/8 aV/8šz#9  šz#9  У ;   У ;  У ;   У ; З/ш=  З/ш= З/ш=  З/ш= ›РИA›РИA›РИAдфЌBдфЌBдфЌBдфЌBдфЌBдфЌB ЁA ЁC ЁC ЁC ЁC ЁCF-•DF-•DF-•DF-•DF-•DF-•DQ‰EQ‰EQ‰EQ‰EQ‰EQ‰EИu}FИu}FИu}FИu}FИu}FИu}Fƒiоgƒiоgƒiоgƒiоg ƒiоgƒiоgМвh МвhМвh.жКj.жКj.жКj .жКj.жКj.жКjˆ.жКjˆ.жКjˆ.жКjˆ.жКj ˆ .жКjˆ.жКjˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆр (@ј Ш А ˜ € h P 8  ` x  Ј № Ph  X H 0  ш а p И ˆ ј  ( @ P и № р Ш А ˜ € 8  h x  Р Ј Xpˆ `  H И0 р(ј@PиША ˜€8№hxЈРшаИX ˆpP8ј(@ ˜АшаИ pXи Р ша0H`H`x€hP8 №иРЈHЈ`РxИа0шˆX p(ј@АhШ€р˜и№ФqЧ` ZEіŠ™ј/^і8А€О`‚  <ŸG‹Ѓ@^м‘s0<@$8œќLЋЊ*>ЭЬL= @ A€?€@ЈА0DXl€”€?€?€?€? €?€?PA€?2@€?5@€?60<@$œќL€?ё№p=ЭЬL=ЭЬL=33лA A33ГA€?€@7nvxЋфFsЌх C`…Ќѕ0€?€?3db_accessadmin0€?€?9db_backupoperator0€?€?1db_datareader0€?€?1db_datawriter0€?€?-db_ddladmin0€?€?9db_denydatareader0€?€?9db_denydatawriter0€?€?'db_owner0€?€?7db_securityadmin0€?€?dbo0@€?%default0@@€?'internal0€?€?IMicrosoft.SqlServer.Types0@€?%PRIMARY0€?€?sysџ ((adb_accessadmindatareaderdladminenydatawritersecurityadminefaultINFORMATION_SCHEMAternalPRIMARYsys@РР Р   ,9Р?AQW^0ўџџSL G=ўџџSL G<ўџџSL G;ўџџSL G:ўџџSL G9ўџџSL G8ўџџSL G7ўџџSL GTGЅџEX G†œџEX GŠХџEX GˆщuџEX G’mџEX G:ЯVџEX GХь2џEX GF%0џEX GЎџ%џEX GиtџEX G%УџEX G˜џEX ћо5СRoЄ‡ŒЉЦу:Wt‘ЎЫшjM"?0\y–Гаэі 'Da~йМ›Иеђ,IŸf‚ƒ eНкї1NkˆЅТпќ H6 S +p  Њ Ч ф   ; X ёдЗu š}’ Џ `ŒŽзћЄ в*"™Й2FzЇЈџEX GўџџSL GўџџSL GўџџSL GўџџSL G ўџџSL G ўџџSL G ўџџSL G ўџџSL G ўџџSL GўџџSL GўџџSL G‹uџџEX G'ўўџEX G2§џEX GчoќџEX GV5јџEX Gл4пџEX GRнџEX GjџйџEX G‰ыаџEX GЌОџSL GсOЏџEX GMўџџSL GNўџџSL GOўџџSL GPўџџSL GQўџџSL GRўџџSL GSўџџSL GTўџџSL GUўџџSL GVўџџSL GWўџџSL GXўџџSL GYўџџSL GZўџџSL G[ўџџSL G\ўџџSL G]ўџџSL G^ўџџSL G_ўџџSL G`ўџџSL GaўџџSL GbўџџSL GcўџџSL GdўџџSL GeўџџSL GfўџџSL GgўџџSL GhўџџSL GiўџџSL GjўџџSL GkўџџSL GlўџџSL GmўџџSL GnўџџSL GoўџџSL GpўџџSL GqўџџSL GrўџџSL GsўџџSL GtўџџSL GuўџџSL GvўџџSL GwўџџSL GxўџџSL GyўџџSL GzўџџSL G{ўџџSL G|ўџџSL G}ўџџSL G~ўџџSL GўџџSL GћўџџSL GќўџџSL G§ўџџSL GўўџџSL GџўџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL G џџџSL G џџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL G џџџSL G!џџџSL G"џџџSL G#џџџSL G$џџџSL G%џџџSL G&џџџSL G'џџџSL G(џџџSL G)џџџSL G+џџџSL G,џџџSL G-џџџSL G.џџџSL G/џџџSL G0џџџSL G1џџџSL G2џџџSL G3џџџSL G4џџџSL G5џџџSL G6џџџSL G7џџџSL G8џџџSL G9џџџSL G:џџџSL G;џџџSL G<џџџSL G=џџџSL G>џџџSL G?џџџSL G@џџџSL RqџџџSL GrџџџSL GsџџџSL GtџџџSL GuџџџSL GvџџџSL GwџџџSL GxџџџSL GyџџџSL GzџџџSL G{џџџSL G|џџџSL G}џџџSL G~џџџSL GџџџSL G•џџџSL G–џџџSL G—џџџSL G˜џџџSL G™џџџSL GšџџџSL G›џџџSL Gh EX GЁ+EX GкOEX GщiЧEX GvЂ%SL G…МфEX GЏЦSL GОриEX GЭњ—EX GїЭEX G!SL G0)СEX GZ3іSL G9KEX GiMЕEX G“WъSL Gxgt EX GЂqЉ EX G‡3 EX GБ‹h EX GРЅ' EX GК‘ EX G>ФЦ EX GkEX G•9EX Gщ0ЃEX G"U—EX GнZьEX G1oVEX G[y‹EX GрEX Gj“JEX Gy­ EX GЃЗ>EX GˆЧШEX Gмл2EX GСыМEX G'EX GњБEX G$цEX GN$EX GЯ†ТEX GљїEX G2ЕыEX GkйпEX GzѓžEX GЄ§гEX G,§EX GТ1REX Gь;‡EX GFМEX G@PёEX GћUFEX G%`{EX GytхEX G4z:EX G^„oEX GˆŽЄEX G˜йEX G—ЈcEX GыМЭEX G$сС EX G ёK!EX G3ћ€!EX G]Ж!EX GB@"EX Glu"EX G–)Њ"EX GQ/џ"EX G{94#EX GЅCi#EX GЯMž#EX GД]($EX Gоg]$EX Gr’$EX GУwч$EX G6ўџџSL G5ўџџSL G4ўџџSL G3ўџџSL G2ўџџSL G1ўџџSL G0ўџџSL G/ўџџSL G.ўџџSL G-ўџџSL G,ўџџSL G+ўџџSL G$ўџџSL G#ўџџSL G"ўџџSL G!ўџџSL G ўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL G ўџџSL G ўџџSL G ўџџSL G ўџџSL G ўџџSL GўџџSL GўџџSL G‹uџџEX G'ўўџEX G2§џEX GчoќџEX GV5јџEX GёдЗš}V}šЗдё+He‚ŸМйі0Mj‡ЄСо`C$дŽГИg$I{ЭТйўџџSL GўџџSL GўџџSL GўџџSL GўџџSL GўџџSL G ўџџSL G!ўџџSL G"ўџџSL G#ўџџSL G$ўџџSL G+ўџџSL G,ўџџSL G-ўџџSL G.ўџџSL G/ўџџSL G0ўџџSL G1ўџџSL G2ўџџSL G3ўџџSL G4ўџџSL G5ўџџSL G6ўџџSL G7ўџџSL G8ўџџSL G9ўџџSL G:ўџџSL G;ўџџSL G<ўџџSL G=ўџџSL G>ўџџSL G?ўџџSL G@ўџџSL GAўџџSL GBўџџSL GCўџџSL GDўџџSL GEўџџSL GFўџџSL GGўџџSL GHўџџSL GIўџџSL GJўџџSL GKўџџSL GLўџџSL GMўџџSL GNўџџSL GOўџџSL GPўџџSL GQўџџSL GRўџџSL GSўџџSL GTўџџSL GUўџџSL GVўџџSL GWўџџSL GXўџџSL GYўџџSL GZўџџSL G[ўџџSL G\ўџџSL G]ўџџSL G^ўџџSL G_ўџџSL G`ўџџSL GaўџџSL GbўџџSL GcўџџSL GdўџџSL GeўџџSL GfўџџSL GgўџџSL GhўџџSL GiўџџSL GjўџџSL GkўџџSL GlўџџSL GmўџџSL GnўџџSL GoўџџSL GpўџџSL GqўџџSL GrўџџSL GsўџџSL GtўџџSL GuўџџSL GvўџџSL GwўџџSL GxўџџSL GyўџџSL GzўџџSL G{ўџџSL G|ўџџSL G}ўџџSL G~ўџџSL GўџџSL GћўџџSL GќўџџSL G§ўџџSL GўўџџSL GџўџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL G џџџSL G џџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL GџџџSL G џџџSL G!џџџSL G"џџџSL G#џџџSL G$џџџSL G%џџџSL G&џџџSL G'џџџSL G(џџџSL G)џџџSL G+џџџSL G,џџџSL G-џџџSL G.џџџSL G/џџџSL G0џџџSL G1џџџSL G2џџџSL G3џџџSL G4џџџSL G5џџџSL G6џџџSL G7џџџSL G8џџџSL G9џџџSL G:џџџSL G;џџџSL G<џџџSL G=џџџSL G>џџџSL G?џџџSL G@џџџSL RqџџџSL GrџџџSL GsџџџSL GtџџџSL GuџџџSL GvџџџSL GwџџџSL GxџџџSL GyџџџSL GzџџџSL G{џџџSL G|џџџSL G}џџџSL G~џџџSL GџџџSL G•џџџSL G–џџџSL G—џџџSL G˜џџџSL G™џџџSL GšџџџSL G›џџџSL Gh EX GЁ+EX GкOEX GщiЧEX GvЂ%SL G…МфEX GЏЦSL GОриEX GЭњ—EX GїЭEX G!SL G0)СEX GZ3іSL G9KEX GiMЕEX G“WъSL Gxgt EX GЂqЉ EX G‡3 EX GБ‹h EX GРЅ' EX GК‘ EX G>ФЦ EX GkEX G•9EX Gщ0ЃEX G"U—EX GнZьEX G1oVEX G[y‹EX GрEX Gj“JEX Gy­ EX GЃЗ>EX GˆЧШEX Gмл2EX GСыМEX G'EX GњБEX G$цEX GN$EX GЯ†ТEX GљїEX G2ЕыEX GkйпEX GzѓžEX GЄ§гEX G,§EX GТ1REX Gь;‡EX GFМEX G@PёEX GћUFEX G%`{EX GytхEX G4z:EX G^„oEX GˆŽЄEX G˜йEX G—ЈcEX GыМЭEX G$сС EX G ёK!EX G3ћ€!EX G]Ж!EX GB@"EX Glu"EX G–)Њ"EX GQ/џ"EX G{94#EX GЅCi#EX GЯMž#EX GД]($EX Gоg]$EX Gr’$EX GУwч$EX G!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Зš}`C& ьЯВ•x[>!чЪ­sV9џтХЈ‹nQ4њнРЃ†iL/ѕиЛždG* №гЖ™|_B%ыЮБ”wZ= цЩЌrU8ўсФЇŠmP3љмПЂ…hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}`‚ŒƒУ7Є˜ *"3RS˜SїEX DmZUїEX G^ъ^їEX GhoїEX GlЫЃїEX GСЇїEX G:ЗЉїEX GЧ3ЙїEX GэОїEX GCŽЬїEX GѕвїEX GѓђиїSL GОwјEX GŒ,јEX G†­јEX GјЙјSL GE+6јEX G…BLјEX GOцMјEX GЃіSјEX G2‡WјEX GŠ YјEX Gж1\јEX G„nјEX GЛ‡јEX GП$ŠјEX Gќ(ŠјEX G/Ѓ’јEX GЈfŸјEX GLCЉјEX GА­јEX DhrДјEX GoЎЕјEX GbФЖјSL Gє=КјEX GgРјEX Gб.ТјEX GŸгТјEX GVuЮјSL GRвјEX GYцсјSL Gи!єјEX GШЏјјEX Gг]ћјEX R,цљEX GЩђ љEX G7o/љEX G7ц6љEX Gјь>љEX GZФGљSL G%xOљEX GђPљEX R}ъQљEX G%…UљEX GЄz`љEX RЎ(fљEX GЎpљEX Gz ‡љEX G.љEX G”ŽљEX G^’љEX GqK–љEX GœљEX GўзЕљEX GщpМљEX G&ѓСљSL G“ХљSL GЈ…аљEX Gn˜аљEX G1ФбљEX GTЅељEX G‹NйљEX G*!нљEX GiЁнљEX GњgцљEX R—ЫцљEX GГPыљEX G0гџљEX GН0њEX GЮњEX G5њSL G–эњEX G›4/њEX G'&1њEX G1И:њEX G4дXњSL GIcњEX GНrњEX GFuњEX GЭŒњEX RшMбњEX GШяњEX Gл їњEX GlўњEX GГћEX Gџ­ћEX GНћEX G=+"ћSL G[B1ћEX G8Ђ2ћEX G7‘3ћEX GљT6ћEX Gœ›PћEX RkŽUћEX GJ'aћEX G bbћSL GŠƒgћEX GšGnћEX GБA‚ћEX GљЫ‚ћEX GЎмˆћEX GЯС•ћEX G_˜ћEX GЙvŸћSL R‚jЁћEX GЭ4АћEX GлљбћEX GJжћSL G]rућEX GНшчћEX GхлїћEX G…ЮњћEX GЦ”ќEX GфcќSL G ?ќEX G“ќEX GL6ќEX GЄxAќEX G”pQќEX GxхTќEX G*_ќEX RRsp_getschemalock0*Еj™8X €ŽЃ™U“ Zsp_releaseschemalock0*R0*Ф„X9P РЂšU“ Fsp_addrole0*B@"P р(LšU“ ^sp_table_privileges_exE0*{94#P рЋLšU“ `sp_column_privileges_ex0*Д]($P р.MšU“ Fsp_indexes%%0*э%P рБMšU“ Nsp_foreignkeys0*&І&P р4NšU“ Nsp_primarykeysЇ0*бэ(P рЇRšU“ Dsp_ddopen0*C[е*P рŽVšU“ Hsp_tableswc0*|Щ+U рNWšU“ Vspt_provider_types0*ЕЃН,P рЃZšU“ ^sp_add_server_sortinfo0*юЧБ-P рхZšU“ bsp_add_server_sortinfo75_0*`š/P р(\šU“ Vsp_catalogs_rowsetr0*вX‚1P р_^šU“ hsp_column_privileges_rowset0*}Х^4P р1ašU“ Tsp_columns_rowset0*я G6P рјbšU“ hsp_check_constraints_rowset0*aV/8P р‚dšU“ jsp_check_constbytable_rowsett0* "X €Ч;›U“ `xp_enum_oledb_providers0*Q/џ"P  <›U“ `sp_enum_oledb_providers0*ŠSѓ#X €Œ<›U“ ^xp_prop_oledb_provider0*Уwч$P  х<›U“ ^sp_prop_oledb_provider0*ќ›л%X €Q=›U“ ^xp_updateFTSSQLAccountр0*5РЯ&X €’=›U“ Psp_MSgetversion0*nфУ'X €ѕ=›U“ Pxp_unc_to_drive0*ЇИ(X €W>›U“ Lxp_MSplatform0*р,Ќ)X €Й>›U“ Lxp_MSFullText0*Q *X €?›U“ Jxp_IsNTAdminw0*Ru”+X €?›U“ Txp_SetSQLSecurity0*‹™ˆ,X €Р?›U“ Zxp_GetAdminGroupNamee0*ФН|-X €"@›U“ Hxp_MSnt20000*§сp.X €…@›U“ Nxp_MSADEnabled0*6e/X €ч@›U“ Jxp_MSADSIReg0*o*Y0X €)A›U“ Pxp_MSADSIObjReg0*ЈNM1X €kA›U“ Txp_MSADSIObjRegDB0*сrA2X €ЌA›U“ Rxp_MSLocalSystem*0*—53X €B›U“ Nxp_adsirequestЌ)0*SЛ)4P  vB›U“ bsp_ActiveDirectory_Start0*Œп5P  љB›U“ ^sp_ActiveDirectory_SCPx0*Х6P  ЬC›U“ ^sp_ActiveDirectory_ObjA0*ў'7P  rE›U“ dsp_MSget_current_activity0*7Lњ7P  дE›U“ dsp_MSset_current_activity0*ppю8P  7F›U“ Nsp_MSobjsearch)A›U“ Pxp_MSADSIObjReg0*ЈNM1X €kA›U“ Txp_MSADSIObjRegDB0*сrA2X €ЌA§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}`DгGЄ˜*" mЁ­Eэ%Й№EX Rе$ї№EX GKї№EX GЭEњ№EX Gдњ№EX G ў№EX GЌiёEX GIёEX G:WёEX G˜ёSL Rѓ\3ёEX GˆiJёEX GПˆTёEX G˜ОVёSL GlWёEX G_ІXёEX GЫ[ёEX GlъfёEX G7gёEX G5ќkёEX G ‚pёSL GњvёEX GчвёSL G;dƒёEX GZV…ёEX GSЬ‰ёEX G1yŠёSL GWёEX R>_œёEX GDЅёSL G’вЉёEX GApВёEX GeNЙёEX G мПёEX GТёSL GžРФёEX GцkЯёEX GnШЯёEX G–џеёSL GqJрёEX GИыёEX Gg№ёEX GkWђSL GT‘ђEX G;­ђEX G™ђEX G–iђSL G;*ђEX G ђEX Gюо ђEX GD 1ђSL G R1ђEX GM8ђEX G/)OђEX GЄUђEX G†?]ђEX Gw=dђEX GР:uђEX Gќ—ђEX G‡Y›ђEX GxНœђEX GЕОЁђEX GžуЋђEX G˜ЕђEX GП4ЗђEX GtФОђEX GДХђEX GЏжбђEX GџдђEX GѓjдђEX Gь‰кђEX G*,пђEX GЁецђEX GхїъђEX GЌШіђEX GјѓEX R§ЉѓEX G:ѓEX GѓEX RЭѓEX G-ѓEX G„Ч-ѓSL GV`1ѓSL GР_2ѓEX GКxJѓEX GрNNѓSL GТ.OѓEX G9OѓEX GЫRѓEX RГ!nѓEX G7ўrѓEX GЋуxѓEX GІXѓEX GX№’ѓEX G–“ѓEX GЈо›ѓEX GoDЇѓEX Gв“­ѓEX GвЏѓEX GjђГѓEX G9nКѓEX GиУѓEX GЋХѓEX GuЕЦѓEX GIВеѓEX GѓЧрѓEX GКBјѓEX Gј(ќѓEX GВєEX G $єSL G V>єEX G’ЃIєEX R*ЭRєEX Gѓ>pєEX G;sєEX G >uєEX R‰uєEX GmцzєEX GуG’єEX G\Т“єEX G˜›єEX GлЅЂєEX GhоВєEX G{iЕєSL G–CЦєEX G’ЪЦєEX GќЧєSL GѓЩєEX G‡ŸвєSL G•лєEX GT.оєEX GбоєEX Gy­фєEX Gа…щєEX GшяєSL GЎѕEX G$MѕEX GoКѕEX RИѕEX GнќѕEX Gдx"ѕEX G –)ѕEX GУ_^ѕEX G_вnѕEX G—˜rѕEX Gэџ{ѕEX Gu †ѕEX G]ѕEX GpJ”ѕEX G”'—ѕSL G1 ЛѕEX GЈ4ОѕEX GХѕEX G„ўШѕSL GъЇЫѕEX GGкЮѕEX G:|кѕEX G€SсѕSL GтѕEX R’\ъѕEX G№RэѕEX Gъƒ№ѕEX GЂћѕEX GRЬіEX G1іEX GwіEX G`#іEX GЃю#іEX GЗv%іEX G‰='іEX G„”.іEX GG2іEX G˜;іEX G&#IіEX Gћ6QіEX GQVVіEX GЈвWіEX Gn6YіEX GcZ^іEX GЯ^іEX Ga_іEX G:PjіEX G .nіEX GqMіEX GŽš‡іEX G­…іEX Gп㘳SL Gш/ іEX G“!ЃіEX GЛeЌіEX GЛcЙіEX GЅ%УіEX Gb;ХіEX Gы“аіEX Rу™ціEX GЧјіEX GVЃќіSL GюЩїEX GЁЮїEX G‹ŒїEX GZЏїEX Gаj+їEX GV№,їEX G$L4їEX GJc9їEX GГ+@їEX RѓOїEX GGіч№EX GЖХ№SL G1tФ№SL Gц‹П№EX GХ DЁj3 DЁj3 DЁj3Х DЁj3Е DЁj3u DЁj3Х DЁj38 DЁj3 DЁj3 DЁj3mm DЁj3 DЁj3 DЁj3Х DЁj3- DЁj3Х DЁj3|Щ+ DЁj3|Щ+ ЊЊ DЁj3|Щ+ DЁj3|Щ+Х DЁj3|Щ+ DЁj3|Щ+Х DЁj3|Щ+ю DЁj3|Щ+0 DЁj3 DЁj3ЛЛ DЁj3 DЁj3 DЁj3%Х DЁj3%г DЁj3-mm DЁj3- DЁj3- DЁj3- DЁj3 DЁj3 DЁj3Ц DЁj3 DЁj3 DЁj3 DЁj3 DЁj3Х DЁj39 DЁj3Х DЁj3 DЁj3 Х DЁj3 DЁj3 DЁj3 DЁj3 DЁj3Х DЁj3† DЁj3|Щ+ DЁj3|Щ+ ˜ DЁj3|Щ+ DЁj3|Щ+ DЁj3|Щ+ DЁj3|Щ+ЗЗ DЁj3|Щ+Х DЁj3|Щ+€ DЁj3 DЁj3Х DЁj3Х DЁj3џ DЁj3% DЁj3%џџ DЁj3- DЁj3-№ DЁj3-№ DЁj3-№ Q/џ" "№ Уwч$ŠSѓ#№ № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № № р а Р € АРар№`p€@P 0 0 А`Рpар№€@P`p@P`p€ А P0@ар№РарЖ™|_B%ыЮБ”wZ= цЩЌrU8ўсФЇŠmP3љмПЂ…hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}г№ *`“Dц‘ЄфЂУbH‰шEX GWѕ шEX R™+ŸшEX G#žшSL Gы‡шEX GHE•шEX GˆРlkйпkйпˆOjАOjАˆPАE&˜PАE&№ИJ №ИJ №ИJ–№ИJˆ№ИJ )?ЌKˆ)?ЌK )?ЌKˆ)?ЌK ˜G:YG:YffЙ‚юZЙ‚юZ 44Й‚юZђІт[dяЪ]dяЪ]-Wnˆƒ0Кs˜ƒ0Кs ƒ0КsЙЈy  Јy /у+ˆ' GG' ' ˆ' ˆ' ˜'  ' ёё' ' N$ N$ N$ N$  ЏN$  шN$ бN$ N$ N$ „„N$ N$ N$ љї (љї  Йљї  `љї  Уљї PАE& PАE& ––~вЯH Й‚юZ ƒ0Кs ƒ0Кs рОри! ЯОри! ˆОри! Ори!Ори! ˆоg]$!оg]$!ˆоg]$!˜оg]$!оg]$!оg]$!иоg]$!qоg]$!ˆоg]$! ŒQ%! ˆŒQ%! ŒQ%!ˆŒQ%! ˜ŒQ%!PАE&!„„PАE&! ‰д9'!РР‰д9'!‰д9'!‰д9'!‰д9'!ˆ‰д9'!ˆ‰д9'!˜‰д9'! ‰д9'! ЉТј-(! €Тј-(! ВТј-(!ˆТј-(! ччme +! me +! ˆme +!ˆme +! ˜І‰ў+! І‰ў+! вц-! вц-!юювц-! вц-!Qік.! ˆQік.!ВQік.! 0Qік.!  ŠЯ/! ŠЯ/! ŠЯ/!ŠЯ/! У>У0! ˆУ>У0! ˜У>У0!У>У0! eQ! ЬЬeQ! eQ! eQ!eQ!eQ! eQ!ˆeQ!˜eQ! --eQ! ˆЄb!Єb! ˆЄb! ˜Єb! ˆЄb! ˆЄb! ˆЄb! ˆц^уt!˜ц^уt!ˆц^уt!ˆц^уt!ˆц^уt!ˆц^уt!˜ц^уt!ц^уt!ц^уt! ˆƒзu!ˆƒзu!Фƒзu!p7ЪD0p7ЪD zьŽI!ьŽI!ьŽI!ьŽI!џџъ;P!ъ;P!ввъ;P!ъ;P!ъ;P!ъ;P!ъ;P!ъ;P!ъ;P! U0Q! ˆU0Q!˜U0Q!U0Q!U0Q!ˆU0Q! U0Q!ЧVS! aarУєU! ЙrУєU! PrУєU!rУєU!rУєU!ЌЋчшV! ˆЋчшV! ЋчшV! ееЋчшV! ЋчшV! ЋчшV!ЋчшV!ˆЋчшV!ЋчшV! XЋчшV!дЋчшV!ЋчшV! ф нW!  ф нW! ƒф нW! ˆф нW! ˆф нW! ˆф нW!ˆxЙZ ˆxЙZ йі~ˆГ“ь;‡ˆ˜юј' бэ( ˆ 7с)šC[е*'ьЅ.ˆ'ьЅ.†Ш`š/`š/ёŸл`]л`]xЛG=`ЭfДc HfДcыŸи dŒп5ООХ6ppю8ЌЉ”т9ˆЉ”т9˜ 46ˆьcХџџџџ`5ˆЬaЌь6ˆdddd xИ3ˆH/ˆф(gЂЋЋЋЋЋl/ˆ”0ˆ0 ˆўўўў0@Ј1ˆИ3ˆхX$­Ќ†ЫЫЫЫЫ/†Шщыy?:vуьМо?№?№?ˆУ@ (ёŸю@‚?љ,NF @Ё"Ш$б:@žžžžxР(1ˆр=ˆцАЈЌyъъъъъ0€Ф,7ˆПППП8€(1ˆр=ˆч `}Ј~hhhhhМ†Ќ‡Ќ|‡Ќ====0H(1ˆр=ˆш(@\­Кллллл0€ФД7ˆ 0€Ф0€ФŽŽŽŽ 8H<ˆ85ˆщЂЌ+–––––,aьaLaЌa,‰ЌУУУУ7ˆ8h€<ˆ( ˆъ€@\­гЅЅЅЅЅ0˜˜ œ8ˆьcХџџџџ80ЂЌмaT9ˆde№№№№ Р +ˆ( ˆы(gЂўўўўў№ФŒ5ˆ 0ЂЌЋЋЋЋ0ˆ +ˆ( ˆьX$­Ќ†—————6ШRФ>!?УСDђфy?@УСDђфy?@ˆУ@~j|4­ѓ?ТТТТxр=ˆ№?ˆэАЈЌyЩЩЩЩЩ0€Ф”9ˆœœœœ8Шр=ˆ№?ˆю`}Ј~ЈЈЈЈЈ,aDє@І§§§§0р=ˆ№?ˆя0Аh­џѕѕѕѕѕ0˜˜2@ 88 ,aF    PPР;ˆ`>ˆ№0Аh­џЧЧЧЧЧ0˜˜288 œa(gЂ’’’’Ј€ш:ˆx9ˆё0Аh­ˆ xxxxx0˜˜8@hд:ˆhh----P(Р;ˆЈ9ˆђ(gЂOOOOOЬ9ˆ$:ˆ0hX;ˆx9ˆѓ@\­dkkkkk0€ФD;ˆ>>>>8(Р;ˆЈ9ˆє`}Ј_ЛЛЛЛЛœaююююТ2 ˜ј;ˆx9ˆѕ@\­hппппп0€ФД;ˆŠŠŠŠ8X(1ˆ`>ˆі`}Ј_™™™™™,aЬЬЬЬќ:ˆ(((1ˆ`>ˆї@\­p—————ТТТТ0˜˜@HH<ˆx9ˆј(@\­К  0€Фd<ˆ0€Ф0€Ф^^^^h8€a˜7ˆљЂЌ+!!!!!tшЋќшЋ„щЋ ъЋмцЋttttЈ08h +ˆа7ˆњј@\­f555550˜˜Ф=ˆьcХ@X—šф;ˆЬ?ˆLќФˆ>ˆь˜ЌD™Ќ;ˆt;ˆ|:ˆ”ЭЇœ§ФМлЇ40€?€?€?ННННAA8ЩЧЕV?````Hh5ˆ +ˆћ(gЂє7ˆєщФR@OOOOТа8H/ˆh5ˆќX$­Ќ†ЌЌЌЌЌ)УdB1“?иpžшЋQ@иpžшЋQ@@ и—A1неїL rВ?шшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшШ А ˜ € h P 8 и№Р 8ИаЈH`0x ш(@Xpˆ  № и Р Ј  x ` H h€˜АШрјP8 №иРЈ0H`x0  ш а И   ˆ p X @ (  ј р Ш А ˜ € h P 8  № и Р Ј  x ` H 0  шаИ ˆpX@(јрША˜€hP8 №€иРЈx`ашИH0ˆ шаPhИ ˆpX@(јрШ`xH0pX@(јрША˜€hА˜P8 №}šЗдё`•”Јe’Єˆа*"vТhћ*]иEX GЂ$!иEX GЊ#иEX Gа4иEX R КAиSL G2[~иEX GŽе‡иEX R%HЕиEX G4ЛниEX RоъниEX GИ>фиEX R'ШциEX G…йEX GЌ5йEX GŠ6йEX GњуBйEX G2&VйEX GШ%{йEX R”oйEX RB™йEX GІЩйEX R<гйSL RFЈкEX GХ$;кEX GKŽdкEX GsУлEX GМ:лEX R>s1лEX RОa`лEX GЂЌƒлEX RKюлEX R5РqмEX G@{мSL G5ЬƒмEX RЋ…мEX G>ЇмEX GЊ•мEX RKfМмEX GЧЄѕмEX RR/8нEX RЄ=AнEX GБŠEнEX RЎxPнEX RЫнEX Gar‡нEX GˆЉнEX GšBДнEX GЪNанEX G†їхнSL GFэцнSL GаєнSL G_8 оEX R9оEX GњМоEX GщуЅоEX G'ЎоEX GэОМоEX RП?–пEX G oЊпEX RгСЛпEX G|џСпEX RiЮпSL RП2хпEX GшyjрEX Gэu—рEX GжvНрEX GЄHарEX G›ƒьрEX Gю–єрEX Gьб сEX DLПсEX GwCсEX GHсSL GЪSсEX G6•eсEX GџzЎсEX Gэь=тEX GЃРAтEX Gл36тEX Gчв3тEX G$л(тSL GždтEX GјРњсEX GfёсSL GoШсEX GХљЧсEX G[]ПсEX GРкБсEX G‹њАсSL Gт˜ЉсEX G6u“сEX GА†сSL Gœ}сSL G%ˆhсEX GxЉdсEX GЋZсEX GСmWсEX GЃ„AсEX Gkб9сEX GŸЎ"сEX GHј!сEX G,сEX G{5 сEX GCсEX G=8ђрEX GtярEX G4пСрEX G§КЈрEX Gщ•ЇрEX Gg*ЃрSL GIЩ рEX GP|рSL G vрSL GІгkрEX G%rXрEX G%)4рEX GхрEX G)XџпEX Gl`љпEX GъифпEX GJжпEX G­пЏпEX GллЉпEX GЃœЉпEX GЛЄпEX GbCпEX GНK…пSL GNJ…пEX GtкyпEX GЃxпEX GџЕmпEX G вLпEX G‚"пEX G(ёпEX G_пEX G€~хоEX GПyЭоEX G&эТоEX GDМВоEX Gtд‡оEX Gт?uоEX GсFhоEX G/[іx•ВЯьйМŸ ‚&eHC`+}šЗёЗ+š}H`”‘Уw“Єˆ3*" [0G<)ѕAтEX RьN‘тSL GIЇтEX G]ЈтEX GF@ЏтEX G1ЕтEX Gј1ЖтEX GОіРтEX GрdЬтEX GeѓвтEX Gе8жтEX GhэзтSL G+3єтEX GygѕтEX Gp'уSL GiS уSL G1уEX RыжуEX RsИуEX GуEX Gі‘ уEX Glo2уEX GсЮ:уEX GњЗEуSL GРбKуEX G‡QуEX GLSUуSL GекYуEX GТ_`уEX Gо)bуEX GЛёcуEX GEx‰уEX Gы‘уEX G­„ЄуEX G“ˆБуEX G8ёВуEX RTŸШуEX G†lЭуSL RпžЭуEX G$ZвуEX GгйнуEX Gѓ-туEX R,WтуEX GPnыуEX GЪyџуEX GcQфEX GЕ]фEX G йфSL GЃшфEX G[hфEX GNлфEX G–Ž.фEX GЄž2фEX GAфEX GFфEX G,ђMфEX Gr$SфEX GоVфSL Gƒщ_фEX G’pфSL G™9‚фEX G„К‚фSL GXgŠфEX G›€фEX G?Z“фEX Gт•фSL GшДВфEX GkПКфEX G ”УфEX G|љЦфEX G?чфEX GДDьфEX GY)ёфEX G_ѕфEX GЧлхEX Gй!хEX GЊ#хEX GщQ)хEX Gј,хEX GЦ4хEX GQ;хEX GѕщEхEX G=aFхEX GЅѓMхEX G•€PхEX GPуRхEX Gj8VхEX GLfZхEX G/m[хEX GЉŒ\хEX Gкв^хEX Gt†aхEX G[ФaхEX G’ЩaхEX GoхSL G‘хEX GAO“хEX GкЁ•хEX GœхEX G•^ЁхEX GиЃхEX GѓІхEX GW&ГхEX Gџ’ЖхEX GМхEX GoЌбхEX GЇ†гхEX GПƒжхSL Go›цEX GФецEX GJ8цSL GФkцEX GЙмцEX RДЃ цEX G+,цEX G2_цEX GДc$цEX G…W'цEX GЗL+цEX G 3цEX G_ƒ6цSL GМq9цSL RЇ:цEX RA—:цEX G=цEX GЂPDцEX G–cHцEX GLЎIцEX GUО\цEX G“н\цSL G­@bцEX GъIdцEX GтыfцSL GœюvцEX G РzцEX GЙЫ|цSL G[WцEX G0ћ цSL GюНВцEX GbИИцEX GIмзцSL G^ОёцEX GŸ›чEX GЫЎчEX GvqчEX Gё4 чEX G,чEX GЗ$чEX Gчџ+чEX GО•=чEX G'(KчEX G|йUчEX G~V`чSL GЕКaчEX G$ˆbчEX G’EiчEX GnХwчSL Gђќ…чEX GCqŠчEX G`dчEX G +чEX GBgЁчEX GgЂчEX GQнЃчEX G1ХЎчEX G_/ЧчEX GpŽШчEX GŸJЬчEX GŽTхчEX GЇьчEX G@mѓчEX GЅыќчEX Gѕq шEX GъшEX G'шEX GМvшEX GЕншEX GИ<шEX G`ЗшEX GнЅ'шEX Ghќ-шEX GЅ4шEX GС$fшEX G=yxшEX G!єŒтEX Gцм‚тSL GлтEX GS~тEX GФC}тSL Gќш|тSL GмmqтEX GeяpтEX GTkmтEX G8€lтEX G^тEX G!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ўсФЇŠmP3љмПЂ…hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}8UrЌЩц =Z`’“$д”Єˆ8*"Жх„, КAиSL G§ЈvиSL G2[~иEX GŽе‡иEX RФА‹иEX G‚!иEX GfЇ—иEX G%HЕиEX GуtРиEX GRудиEX G4ЛниEX RоъниEX GК\сиEX GИ>фиEX Rь\циSL G'ШциEX G…йEX GЌ5йEX GИА йEX Gц™$йEX GПL%йSL G К0йSL GЩХ1йEX GŠ6йEX GйЭ:йEX GњуBйEX Gж!CйEX G+HйEX G—PйEX G2&VйEX G*ЏWйEX G˜L_йEX G“Ч`йSL GШ%{йEX R”oйEX R йEX Gь$™йEX GB™йEX Gі˜йEX G”ЂйSL G–КйEX GйчПйSL GЮšЧйEX GІЩйEX RБ›ЭйEX G<гйSL RўлђйEX Gа_ѕйEX GЩЦкEX G5акSL Gv+кEX GFЈкEX G•˜кEX GЫ'кEX G_+кEX GХ$;кEX G @кEX GKŽdкEX G9ЂfкEX GљŠкEX GъэŒкEX GР—кEX GŒ›кEX G…PžкEX G№ГкEX GЂГЗкEX GLCМкEX GПкEX GmЧкEX G›nѓкEX GЙОлEX GsУлEX G†илEX GМ:лEX Ro‰лSL GeDлEX G!š(лEX GЕИ0лEX G>s1лEX RЋn?лEX GGџJлEX GОa`лEX GBeлSL GйpлEX GfˆvлEX GЂЌƒлEX Rq=‹лEX GМ”šлEX G:]ІлEX GјUЊлEX GвtКлEX GHiулEX GацлEX G ЪщлEX GKюлEX RŽ5мEX G]T+мEX Guќ?мEX G?dEмEX GGмSL GщЎHмEX G‰YмEX GЖkмSL G5РqмEX G@{мSL GŸ˜€мSL G5ЬƒмEX RЋ…мEX G2-‰мEX GЪ^ŒмEX G>ЇмEX GЊ•мEX RЃ–мSL G1ЋмSL GKfМмEX GдgНмEX Gш`ШмEX GЎсЬмEX GХZгмEX GuгемSL G VймEX GŸѓъмEX GЧЄѕмEX RLнEX G5№-нEX Gќ!5нEX GR/8нEX RЄ=AнEX GБŠEнEX RЎxPнEX RЉП`нEX Gп hнEX GxqнEX G&`vнEX GЫнEX GsЬ†нEX Gar‡нEX G л›нEX GVˆІнEX GDzЇнEX GˆЉнEX G‡ ЋнEX GџЋнEX G’ЊАнSL GšBДнEX GЧ‘ДнEX GšИнSL GРAРнEX GрвЮнEX GЪNанEX GЁHбнEX G—ЦлнEX GЭˆмнEX GСЊунEX G1ŠхнEX G†їхнSL GFэцнSL GФ<ѓнEX GаєнSL GЄѕнEX G…SјнSL G.qоEX G_8 оEX R9оEX GњМоEX G 6оEX Gьђ6оEX G;оEX G/!чЪ­sV9џтХЈ‹nQ4њнРЃ†iL/ѕиЛždG* №гЖ™|_B%ыЮБ”wZ= цЩЌrU8ўсФЇŠmP3љмПЂ…hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}}šЗ`–’Ћы П•Є*"Е•ZЋ&nбEX GgŠбEX GгбEX G”–бEX GАс—бEX Gќu˜бEX GYјšбEX R*0›бEX Gї‹бEX G?`ЋбEX GjЙбEX GПxКбSL Rs|КбEX G_ХбEX GРЈвбEX Gђ.гбEX G5ЗѓбSL Gбv вEX GЎZвSL Gы&вEX Rшњ:вEX GОТ>вEX GMOIвEX GОMTвEX GwXвEX G”WiвEX GљяuвEX Gрг™вEX GЙ0ІвEX GCЪЋвEX G]PИвSL G}ТвEX GXWХвEX G&IЧвEX GгЩцвEX GћфўвEX GгбгEX G3гEX G гEX G€ў&гEX GыЋ2гEX Go€EгSL GЂSгEX GкaгEX GхtгEX G*б‚гEX GК”ŽгEX G@њЂгEX GU)ЅгEX GI=ЖгEX GOГПгEX GˆРФгEX GшХгEX GШгEX Gы—ЪгEX G”MагSL GеŒтгEX GTягEX Gп<ўгEX Gu€дEX Gœ дEX GёpдEX GђдEX G†б"дSL GY/3дSL G$й9дEX GМ<дEX GўFдEX G iдEX GТwдEX GGyдEX Gl8}дEX Gуœ‚дSL G†T…дEX GšјдSL G'ЃдEX GЭˆПдEX GWфПдEX GwФдEX G•едEX GLждEX G…ЏлдSL GўцдEX G$ыдEX G…еEX GъcеEX Gы еEX GЕр*еEX GБo/еSL G#ї/еEX G91еEX GџХ;еEX GƒDеEX RДJ|еEX G5OƒеEX GЁšеEX G# ˜еEX G>'žеEX Gkа еEX GМнЂеEX GхщЉеSL R}МАеEX Gь ВеEX G†ЙеEX G>НеEX GtСОеEX GиШеEX G‹ФЬеEX GгьвеEX GјјгеEX G PїеSL GжEX G.кжEX Gмё&жEX G{ ,жEX G‰1жEX GD‡2жEX G"ЊAжEX GаIжEX GZiSжEX GјmiжEX G3€lжEX GŽ­†жEX G­/ˆжEX G ŒжEX GѓЉжSL GІІЉжEX GˆUДжEX G=bЙжEX GšLОжEX GxПжEX GˆёЯжEX GјХижEX GЌфйжEX G9WожEX GC“тжSL GКУфжEX GГŽщжEX Gк.ѓжEX G$„єжEX GхtзEX GqVзEX GЛѓ зSL GфузSL GзEX G3зEX G8ZзEX Gс‰`зEX GŒždзEX GчрiзEX GАљзEX G…—зEX GмL—зEX GE%ЈзEX GyЋзEX GфЏзEX GgњБзEX GŸНзEX G’]СзSL GwгзEX GЙЙгзEX GК(дзEX GрФезEX GнзEX GЋЫсзEX GОТьзEX GФюџзEX G5CиEX G_XиEX GJ‰бSL GŠ…wбEX G!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}…Ђ`‚—•ƒУ7–Є­*"мжГ‰ЗЋ&ЭEX GЋc+ЭSL GН 3ЭEX GMеIЭEX GСўMЭEX RsОdЭEX GЛZiЭEX G,.mЭEX GГу”ЭEX GiШ™ЭEX RЗЊ›ЭEX G’ЄЭEX GрІЭEX GqГЭEX GНПЭEX GцХЭEX RoгЭSL GAfиЭEX GCКпЭEX GsсЭEX GU}щЭSL GyўюЭEX Gѓ%ёЭEX R/№їЭEX G%јЭSL R'7џЭEX GzЌЮEX GшёЮSL GYN ЮEX GG=ЮEX GЁ>ЮEX GWQ)ЮSL Gz/ЮEX G(W3ЮEX Gр2@ЮEX GњHЮEX GlДeЮEX GчoЮEX GфЩzЮEX GœP‰ЮEX GЃ‹”ЮEX GVšЮSL G6жœЮEX G2oЄЮEX Gю7ЇЮEX Gќ˜БЮEX G;ЧЬЮEX GxQдЮSL GЙеЮSL RёжЮEX GБ„пЮEX GщњљЮEX GNЯEX Gсœ#ЯEX Ghˆ$ЯEX GЈ,+ЯEX G м6ЯEX G!Г9ЯEX GЪХEЯEX GЏndЯEX G8!qЯEX GќusЯEX GрАxЯSL GО­‰ЯSL GŽј™ЯEX Gr–žЯEX GœмžЯEX G%ˆЄЯEX Rѓ)ЪЯSL GŒ<иЯEX GЁоЯEX GзDхЯEX G/охЯEX GVJшЯEX G[FыЯEX GхkюЯSL GDЕюЯSL GIE№ЯEX GЁ№аEX GУпаEX GІ†аEX Gји аSL GL5(аEX Gу2аEX G#]3аEX G 6аEX GW 8аEX G’Ш:аEX GжќEаEX GGТJаEX G`HWаEX Gм‰qаEX Gf,wаEX GЩаEX GFw€аEX G/‚аEX GЈu‰аEX G9bаEX GкF’аEX GdЗ’аEX R§Ћ“аEX GёД™аSL GaœаEX RsрœаSL G$‰žаEX GlМžаEX G;$ЌаEX G$­аEX G„=ГаEX GдŠДаEX GшГДаEX GвРШаEX R sнаEX Gќ˜паEX Gф%юаEX Gcі бEX G7Ÿ бEX G+бEX GЃVбEX GЉ/бEX G*p0бEX Gw—1бEX G“7бSL G# 8бEX GЬї?бEX GfCбEX G–-IбSL GїєKбEX D‹ЉUбEX G­ёZбEX GСЗ\бEX G!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}`E–љy•—Д0*"мЎЅ•июУEX GјЃKФEX G:МKФEX G4FOФEX GЅOФEX GŸTgФEX G‚ojФSL G№ХrФEX R„)tФEX G}#|ФEX Gђ‡ФEX GєФEX G^j­ФEX RЫЂИФEX G‹ЙФEX G:“ТФEX GcfХФEX GЩpЧФEX GЏгШФEX GЁЫФEX G†лФEX GZэоФEX GЮnцФEX G|јќФSL Gy—ХEX GNщХEX GseХEX G”ƒ!ХSL G ж2ХSL G195ХEX G0+8ХSL GМі8ХEX GЎј;ХEX GГЫCХEX GVeDХEX GuЌUХEX GнYХEX GƒnhХEX GЅiХEX GЛ(nХEX G#hnХEX GУGuХEX GО_xХEX GцY‰ХEX G@ œХSL G6ГХEX GxcДХEX G§7ИХEX G’]КХEX Gb}УХEX GќтдХEX GцsшХEX G5–ЦEX GЦEX G7Ѕ ЦEX G,—ЦEX GI<$ЦSL Gp%ЦEX Gѓ%ЦEX G [0ЦEX GМб3ЦSL G4иBЦSL G ЯEЦSL G9mLЦEX GнэeЦEX GгgЦEX G‚{ЦEX G'z€ЦEX Gѕ‚ЦEX G>я…ЦEX GSЁˆЦEX G&”ЦSL GЎЦEX GšRВЦEX GР^ЧЦEX GЉнбЦEX GУaеЦEX GЗcрЦEX G~тЦSL Gш!шЦEX GОЃъЦEX GŒEюЦEX GЧ+№ЦEX GmљЦEX GС ќЦEX G< ЧEX GЗYЧEX GGўЧEX GТ€ЧEX G хHЧEX G@.OЧEX GМ1TЧEX G€‘VЧEX GЧNZЧEX G•yЧSL Gпч{ЧEX Gєф}ЧEX GFEˆЧSL Gуw›ЧEX GЖЧEX GѓOЧEX Gjm ЧEX GTQЈЧEX GБЛАЧEX GŒuВЧSL GЂ4КЧEX GEПЛЧEX RnлХЧEX R­GЬЧEX GgšЬЧEX GАЭЧEX GŽзЧEX G^иЧEX GˆЅћЧEX G] ШEX Go ШEX Gв‰(ШEX Gб".ШEX Gи3ШEX G$є=ШEX Gš‚CШEX GXтZШEX GБ^ШEX GN[cШEX GjŠeШEX G3ьfШEX GЙB„ШEX GГШEX GЄ œШEX G;ЃШEX GјqЄШEX G{ЏШEX G‰єЏШEX GЖПЙШEX GЖBТШEX GЁŸоШEX GŒ&тШEX GBeЩSL GЊкЩEX GZњЩEX GNКЩEX GЇQ.ЩEX GиTЩEX GUpTЩSL GФ*WЩSL GtqcЩEX GяeЩEX GU{gЩEX Gv iЩEX GюсqЩEX GыЇzЩEX GГо}ЩEX GM •ЩEX GїЋЩEX GcаЏЩEX G+§ВЩEX G–ЖЩEX GœМЩEX G‘ЮЩEX GЕЎтЩEX GnацЩEX GŸ6яЩEX GПѕЩEX GюРњЩEX GЬаЪEX GЇсЪSL G‡t ЪEX GuvЪSL GЃМЪEX G\НЪEX GРp"ЪEX GFm8ЪEX GЂŒFЪEX RВжWЪSL GеЪjЪEX G/ЃnЪSL Gv |ЪEX GEЪEX G`nЪSL GW%‡ЪEX Ga6šЪSL G\ЋЪEX G“ЬВЪEX G‹ѕЛЪEX GЧЪEX GЃUЬЪEX GРйЪEX GПќлЪEX GW‡фЪEX G@‹ёЪEX G5ЏљЪEX GjЃџЪEX GYЫEX GДcЫEX GRћЫEX GnR!ЫEX R P;ЫEX GЩ|QЫEX GЭp]ЫSL G7cЫEX GnyfЫEX GЂ zЫEX GRЯ†ЫEX GЋ–ЫEX GВšЫEX G(ЦœЫEX G™&ЃЫEX GЋЫEX GоšЋЫEX GА6ОЫEX GhЯЫEX G.лЫEX GѕЫEX GT6іЫEX GЎЬEX GгЊ2ЬEX GвœBЬEX G|ОFЬEX GљіIЬEX GШnSЬEX G“fЬEX RмwfЬEX GthЬEX GЏуkЬEX Ge8žЬEX GKpВЬEX GЧюИЬEX G9ЋМЬEX GРЂЮЬEX GCбЬEX GeˆдЬEX GOќкЬEX G ”щЬSL RВёЬEX GдСљЬEX G@ЮџЬSL GОkЭEX GПЭEX GKКЭEX GнЭEX Gт|ЭEX G;6=ФEX Gd+ФEX G2ПФEX GгЙФEX GЇн ФEX Gїх§УEX GщЬєУEX GДcЫEX G!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!sV9џтХЈ‹nQ4њнРЃ†iL/ѕиЛždG* №гЖ™|_B%ыЮБ”wZx= цЩЌrU8ўсФЇŠmP3љмПЂ…hK.єзК€cF) явЕ˜{^A$ъЭА“vY<хШЋŽqT7§рУІ‰lO2ј л О Ё „ g J -  ѓ ж Й œ  b E ( ю б Д — z ] @ #  щ Ь Џ ’ u X ;   ф Ч Њ  p S 6  ќпТЅˆkN1їкН ƒfI,ђеИ›~aD' эаГ–y\?"шЫЎ‘tW:уЦЉŒoR5ћоСЄ‡jM0ійМŸ‚eH+ёдЗš}­Ъч!>[`‚.<Д˜ЗT>%=­ХФ0eNAћQ РЊ ‚pНЭссў##MS_SQLResourceSigningCertificate##0K1I0GU@MS_SQLResourceSigningCertificateФ’lrД E›5‰СёѓФћAЋрГЗ†f(~гыЄЧх.HW0‚0‚‚ ћФѓёС‰5›E Дrl’Ф0  *†H†ї 0K1I0GU@MS_SQLResourceSigningCertificate0 100403000121Z 110403000121Z0K1I0GU@MS_SQLResourceSigningCertificate0Ÿ0  *†H†ї 0‰ ˆ7 %яBwМVЁЕЇtмE/ТœђэHP&к”ЧЊqЬvсДУфв|оњ)XХ$9-|Эв7X:™Єйе˜пЏsѓYЦе+˜Иѕў}19fЙ\†Ђ6-IHXЎИ+ЃžѕПAЙЄDлWЦМќ}№€БœL ћ0  *†H†ї bSu ћa‘F[‡avЃ-юЉВ)/П—UO2:њ]гЈs мvЂB!ђ/Гe;ŽйaѓѕРh Р8GаТёЬ0™+ztaŸ"ТпvнI ]h—ЮGЦLьа'(ё&ŽmЋN*ЁИа‘n.ЬœэЈЇ ЛаCъВƒV›RН]и'?0fNAћQ ш ‚vЩйээ##MS_SQLReplicationSigningCertificate##0Q1O0MUFMS_SQLReplicationSigningCertificate™гћкŒCД§EПAАХЌ]Іх5“?§9+jSnЦaЕіЃ•c0‚%0‚Ž ХАAПE§ДCŒкћг™0  *†H†ї 0Q1O0MUFMS_SQLReplicationSigningCertificate0 100403000121Z 110403000121Z0Q1O0MUFMS_SQLReplicationSigningCertificate0Ÿ0  *†H†ї 0‰ОРЋ€э@ГЏ§Fnb–Б0&@iBd№ЖЯo*~Мо04m)ЩŽJъ”ˆдaА‘Y]њŒ+<’\ъфЮ^QE% ž……7і‘зTЯŽGZ+ ёAіЁ ЌВˆэ=еј*kЕф‘лєБ*Ркѕ,‹Ѓ“‰/ыm’ьЄ{ў.Ь‚~—Rэ!У0  *†H†ї TŠЦz&DаWNh/ЬаcoдІЊЋ†–™‚ŠNгЇHvgoFUk5–?Иы(Vhиc5ЅЄ%/Jevу6шuРщU–™pї{*W}ІТ…іжŽЬо<оWQ•0=Ктo%$"yсЮї–•lsир3й™z#‡7RСЄ0Wп0gNAћQ 8 ‚lЕХййю##MS_SQLAuthenticatorCertificate##0G1E0CU<MS_SQLAuthenticatorCertificate佘в>\Fš­ёŸНјЩВЭtщKœgVъ‹Ј‚цKЈUMЇƒ0‚0‚z ЩјНŸё­šF\>в˜Ѕд0  *†H†ї 0G1E0CU<MS_SQLAuthenticatorCertificate0 100403000122Z 110403000122Z0G1E0CU<MS_SQLAuthenticatorCertificate0Ÿ0  *†H†ї 0‰Ё%Іp†ЛЮ‡JTbХНз"еЎЅЮеX‘ыЕЃ"Rf‹Š FћM@Оў3|VЮќƒІкvѕЎ!$јTЁћkТV.ђ&?FїЎTицЮОЦЂ_Ћв‘,kьРђ;Вќоbп пХdЄ:ЁПЕ'woя6Б‘‚ДъZ'cБз%0  *†H†ї “Ы*–^ЇяС„этѕW%ЫHАВА­ЦІЬрЮЂћТL К`Їљ/˜MдЕt“4X@Fh gь3†BйDIЈ7ŽŠѓВ€§dŠ`bЁŽŸšпєъ˘ДеОisџ``фНŽЮ—ьІ€еn‘щbаyMх о ‘[}0iNAћQ p ‚fЉЙЭЭж##MS_PolicySigningCertificate##0A1?0=U6MS_PolicySigningCertificateшћd/- ЏJКв-‘!цЫъ]Аa№ГП›H~ .єЛЭЮІ)šz0‚0‚n ъЫц!‘-вКJЏ -/dћш0  *†H†ї 0A1?0=U6MS_PolicySigningCertificate0 100403000122Z 110403000122Z0A1?0=U6MS_PolicySigningCertificate0Ÿ0  *†H†ї 0‰ѓ Н/{рGEQ>ЁЯ§Ю‹–= жt56l6Qe.k†tјЕX6Yя5%Е dЙ`ј+•e?хM)|єТЕSХyш4‚д;нw/Œž‡b!dрˆЇ?ЮЫr€FOД&^&(_П;Ў>Љ›ФV‰Г7єUі`nfЖЩš' yЩ0  *†H†ї k†ќ%рF<у ъ_c§#щ~МЋGwє&я™йfЭ0лvPРx›Р№}ЎЗVV7ŒšК”}0jNAћQ ј‡ ‚pНЭссў##MS_SmoExtendedSigningCertificate##0K1I0GU@MS_SmoExtendedSigningCertificateaœвН_ЇџDš А_ђхddќ=)ъДI;k—YAцT”0‚0‚‚ dхђ_А šDџЇ_Нвœa0  *†H†ї 0K1I0GU@MS_SmoExtendedSigningCertificate0 100403000122Z 110403000122Z0K1I0GU@MS_SmoExtendedSigningCertificate0Ÿ0  *†H†ї 0‰Тe'ІmзП%кєs…Cєч6~ œ+дb…цJЕЛ:ђкmPE'HЯ+|.hнјQеЎѓd Еь8Ю i=BДЌ_БйЇzŸ‰ЕvГV5|Оц˜MТ%–мN7%Ёl \ђ CH&‘ЈSKє=Ыƒ\>2|хŽ-™Eс<•0  *†H†ї WV&xuіЙŠ’“X….Lќ ььx^ёš“у~T›ю&—G•~а0Ѓ:ФеЫeШšжmi6.Ј…>’V}Т.ЏШD(€lй‘О-жC?^I‹ŠНJnPb7ŽЅнL4НбЦtS‰ОЉ@Ї.šн;~2лНKs}PxNNыPаџ0hNADТшlР dЅЕЩЩЮ##MS_AgentSigningCertificate##0?1=0;U4MS_AgentSigningCertificateжЈ•i/єAŸœzРMищ|F„uі…№/’њїрБГWЋї0‚0‚j |щиMРzœŸAє/i•Јж0  *†H†ї 0?1=0;U4MS_AgentSigningCertificate0 100403003821Z 110403003821Z0?1=0;U4MS_AgentSigningCertificate0Ÿ0  *†H†ї 0‰Жє‹кіЛos"цjhТдаЇ™­PjGч(\„…y .ДеГ]ЕЌ36<H2@|V&Š%п|$@њˆ&ЖM?иNMѓUіX<ШхƒЂ`Lд ’p=йЊІЄт5Ќ;CЂ/ЈxеtIіѓLъЩ9СыR5™V ЙѕUёz_#rт7ЃBbRзИ 5рФƒB{oёБš;ЦѓtЄ$ №)ыK(няMvзB whбTNO&ЄpпoЇ+в/ іЈ"qАвЯєVЫWB˜ЂщHo‚a›я тšљЭ]r^Чю‚ЂГ стТѓћ­druР%sЬ8‚ ы§SЭCŒ'2ЃџдЎ…‰Оq} сŠE’Й.є•(ˆ•@я+•З4‰8ѕтž‰:Хш"цхVІŒ#”јaX+,†Оpoєљ]‰лoљ­ (ГЬЏ[™YZ“1paџпЦЗЁ QИЦЖ†:-’C‹7этГювYЦ7Њa™№№ž6рЪЦђ6и‚у™l№L2ай6ГNшeЩˆДаюѓ@ ў^žlЈцUђ’§Qњт­*•рIё:ТПP0p“l)ЯSккс ’ƒѓL v…пœ˜QŒ&“(ЌЈмБхяиSх ƒЊ}“Г Ж€u=ХмцJ3бJљQ6сс† KК>ЙДDБN 0d?Ойž6ХХиH…з0щ”нž$CzDпЅЉ3vфЎaх]ЧX8;[!_ЋЯў№йЋbїeC‡Хж]sЧUžЭšž3kЮdКЬyћ"7Ай"ИПјьйћїr1мЫ`sђЬ'п,эИНќ,оЗ!ДМа)›щн[лф,iџ~ԘPМž{tА --MzФћхXЏOnŒХС.ДD:ў‰Љˆж№ъДЭO„Р1ЗМe<Щ”@bи&Е-Аž0 0‚­0‚ ШЂšH иZ&Е.0  *†H†ї 0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E0 100403004124Z 110403004124Z0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E0Ÿ0  *†H†ї 0‰ЧƒЮS=^Dё’ Ш1GёЂЅжу‚vщ3Br8œС„ї<Т~ќЏ3ЕdA“rXЭќРG,.лtИcЎТ‚А-™Ii!џs;Ќmќћ3vџ?дщŠ ~шт9@r‘ЗUЄ"SЖ%Є’‘DжыЏcу“Џм?ЎђТ7s-ињТЬI0  *†H†ї )ЛА№оJ%ƒЗC9М8'І?jЬ RjŽы4ЧђЋЌA„%jРŒCш-8эЩ§ў~ˆ›М}]=\{Н5КB–VŽхFhК^trЅP™p„Щіh›=Ђ>xIДG"<…Њзќ‘І–+"ѓM‰сТ&Эфx /К7! ;tA0NA ЖM]qq"##MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E##0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E.Е&Zи HšЂ>X<ШхƒЂ`Lд ’p=йЊІЄт5Ќ;0‚­0‚ ШЂšH иZ&Е.0  *†H†ї 0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E0 100403004124Z 110403004124Z0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E0Ÿ0  *†H†ї 0‰ЧƒЮS=^Dё’ Ш1GёЂЅжу‚vщ3Br8œС„ї<Т~ќЏ3ЕdA“rXЭќРG,.лtИcЎТ‚А-™Ii!џs;Ќmќћ3vџ?дщŠ ~шт9@r‘ЗUЄ"SЖ%Є’‘DжыЏcу“Џм?ЎђТ7s-ињТЬI0  *†H†ї )ЛА№оJ%ƒЗC9М8'І?jЬ RjŽы4ЧђЋЌA„%jРŒCш-8эЩ§ў~ˆ›М}]=\{Н5КB–VŽхFhК^trЅP™p„Щіh›=Ђ>xIДG"<…Њзќ‘І–+"ѓM‰сТ&Эфx /К7! ;tAchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E0 100403004124Z 110403004124Z0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E0Ÿ0  *†H†ї 0‰ЧƒЮS=^Dё’ Ш1GёЂЅжу‚vщ3Br8œС„ї<Т~ќЏ3ЕdA“rXЭќРG,.лtИcЎТ‚А-™Ii!џs;Ќmќћ3vџ?дщŠ ~шт9@r‘ЗUЄ"SЖ%Є’‘DжыЏcу“Џм?ЎђТ7s-ињТЬI0  *†H†ї )ЛА№оJ%ƒЗC9М8'І?jЬ RjŽы4ЧђЋЌA„%jРŒCш-8эЩ§ў~ˆ›М}]=\{Н5КB–VŽхFhК^trЅP™p„Щіh›=Ђ>xIДG"<…Њзќ‘І–+"ѓM‰сТ&Эфx /К7! ;tA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!’8 b 6t^` Z.і™ЉаЋЎО*^˜8!!!!О`.)`šЗ>%CѕuП&eQ##MS_SQLResourceSigningCertificate##&fW##MS_SQLReplicationSigningCertificate##&gM##MS_SQLAuthenticatorCertificate##&iG##MS_PolicySigningCertificate##&jQ##MS_SmoExtendedSigningCertificate##&hE##MS_AgentSigningCertificate##*—##MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E##&—##MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E##!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!`БœЩUэ Z.і›ЉаЋ.ЗЊ^š8!!!!О`‚.„ œЗ!>%`Ю(&eXh0K1I0GU@MS_SQLResourceSigningCertificateФ’lrД E›5‰СёѓФћ&f^n0Q1O0MUFMS_SQLReplicationSigningCertificate™гћкŒCД§EПAАХ&gTd0G1E0CU<MS_SQLAuthenticatorCertificate佘в>\Fš­ёŸНјЩ&iN^0A1?0=U6MS_PolicySigningCertificateшћd/- ЏJКв-‘!цЫъ&jXh0K1I0GU@MS_SmoExtendedSigningCertificateaœвН_ЇџDš А_ђхd&hL\0?1=0;U4MS_AgentSigningCertificateжЈ•i/єAŸœzРMищ|*ЂВ0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E.Е&Zи HšЂ>X<Ш&ЂВ0”1‘0ŽU†MS_SchemaSigningCertificate34284BF7CE6208DC9D835E9F45ADD94F0757439E.Е&Zи HšЂ>X<Ш!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!nШј`6š` Z.іЉа0ЈЎЃ*^œ8!!!!О`‚.ЧHžЗ#>%cПЅc&eAЋрГЗ†f(~гыЄЧх.HW&fЌ]Іх5“?§9+jSnЦaЕіЃ•c&gВЭtщKœgVъ‹Ј‚цKЈUMЇƒ&i]Аa№ГП›H~ .єЛЭЮІ)šz&jdќ=)ъДI;k—YAцT”&hF„uі…№/’њїрБГWЋї*хƒЂ`Lд ’p=йЊІЄт5Ќ;&хƒЂ`Lд ’p=йЊІЄт5Ќ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+š}дЗё` Z.іŸЉаAЊ.šЊ^ž8!!!!О`‚7<ЂX  ­hQ""щ­<<’Jyt$& “7šU“ >ЭЬЬ= €@ A@@*?Ti~“@j@l€?Ѕ€?Ї€?­€?Џ€?ч€?я<<’Jyt$T “7šU“ >>ЭЬЬ=d33‹A AffVA@@#Bgˆ­д§0€?#binary0€?char0@%decimal0€?!nchar0@%numeric0€?'nvarchar0€?)varbinary0€?%varchar<<Ыnmu$~$>9šU“$$ЋЊ*= з#=%I=>ј<9Žу<$Žу @B€?9Žу?€>@(<PdxŒ ДШм№,@Th|ЄИ€?"€?€?€?$@0@@4@8@:@;€?<@@@>€?b€?c€?h@j@l€?z@€?Ѕ€?Ї€?­€?Џ€?Н€?ч€?я!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!к†`œXЁyX–R0А Џ +xplog70.dll0†z + it was before adding the file -- BEGIN TRAN update master.dbo.sysdatabases set status = @currentStatus where name = @dbName IF @@error <> 0 begin ROLLBACK TRANSACTION RaisError(15055,-1,-1) Select @returnCode = 1 GOTO LABEL_FAILURE end COMMIT TRAN checkpoint -- Turn off suspect bit if it is on -- if ((@currentStatus & @suspectBit) <> 0) begin exec sp_resetstatus @dbName end -- Run recovery on the database -- select @addCmd = 'dbcc dbrecover (' + @dbName + ')' exec (@addCmd) GOTO LABEL_SUCCESS LABEL_FAILURE: --print 'Failed to add file to and recover the suspect database.' return @returnCode LABEL_SUCCESS: --print 'Successfully added file to the database' return @returnCode -- sp_add_file_recover_suspect_db d0П&nC-- -- Name: sp_add_data_file_recover_suspect_db .- Purpose: Adds a data file to a suspect database and runs -- recovery on the database. This SP should only be used -- on databases that have been marked suspect due to -- insufficient data (error 1105) or log (error 9002) space. -- create procedure sp_add_data_file_recover_suspect_db @dbName sysname -- database name ,@filegroup nvarchar(260) -- file group for new file ,@name nvarchar(260) -- logical file name ,@filename nvarchar(260) -- OS file name ,@size nvarchar(20) = NULL .- initial file size ,@maxsize nvarchar(20) = NULL -- maximum file size ,@filegrowth nvarchar(20) = NULL -- growth increment as execute sp_add_file_recover_suspect_db @dbName, 'DATA', @filegroup, @name, @filename, @size, @maxsize, @filegrowth a0•9Е /* Procedure for 8.0 and later servers */ CREATE PROCEDURE sp_special_columns ( @table_name sysname, @table_owner sysname = null, @table_qualifier sysname = null, @col_type char(1) = 'R', @scope char(1) = 'T', @nullable char(1) = 'U', @ODBCVer int = 2) AS DECLARE @indid int DECLARE @table_id int DECLARE @full_table_name nvarchar(257) DECLARE @scopeout smallint if @col_type not in ('R','V') or @col_type is null begin raiserror (15251,-1,-1,'col_type','''R'' or ''V''') return end if @scope = 'C' select @scopeout = 0 else if @scope = 'T' select @scopeout = 1 else begin raiserror (15251,-1,-1,'scope','''C'' or ''T''') return end if Bnullable not in ('U','O') or @nullable is null begin raiserror (15251,-1,-1,'nullable','''U'' or ''O''') return end if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = quotename(@table_name) end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @full_table_name = quotename(@table_owner) end else begin SELECT @full_table_name = quotename(@table_owner) + '.' + quotename(@table_name) end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) if @col_type = 'V' BEGIN /* if ROWVER, just run that query */ SELECT SCOPE = convert(smallint,NULL), COLUMN_NAME = convert(sysname,c.name), DATA_TYPE = convert(smallint, -2), TYPE_NAME = t.name. "PRECISION" = convert(int,8), LENGTH = convert(int,8), SCALE = convert(smallint, NULL), PSEUDO_COLUMN = convert(smallint,1) FROM systypes t, syscolumns c WHERE not (@table_id is null) AND c.id = @table_id AND t.name = 'timestamp' /* TIMESTAMP */ AND t.xtype = c.xtype AND t.xusertype = c.xusertype RETURN END /* ROWID, now find the id of the 'best' index for this table */ IF @nullable = 'O' /* Don't include any indexes that contain nulnable columns. */ SELECT @indid = MIN(indid) FROM sysindexes x, syscolumns c, syscolumns c2 WHERE not (@table_id is null) AND x.status&2 = 2 /* If Unique Index */ AND c.id = x.id AND c2.id = c.id AND c2.colid < x.keycnt + (x.status&18)/18 AND x.id = @table_id AND indid > 0 /* Eliminate Table Row */ AND c.name = index_col(@table_name,x.indid,c2.colid) GROUP BY indid HAVING SUM(c.status&8) = 0 ELSE /* Include indexes that are partially nullable. */ SELECT @indid = MIN(indid) FROM sysindexes x WHERE not (@table_id is null) AND status&2 = 2 /* If Unique Index */ AND id = @table_id AND indid > 0 /* Eliminate Table Row */ SELECT SCOPE = @scopeout, COLUMN_NAME = convert(sysname,INDEX_COL(@full_table_name,indid,c2.colid)), d.DATA_TYPE, convert(sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME collate database_default end) TYPE_NAME, convert(int,case when d.DATA_TYPE in (6.7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), PSEUDO_COLUMN = convert(smallint,1) FROM sysindexes x, syscolumns c, master.dbo.spt_datatype_info d, systypes t, syscolunns c2 /* Self-join to generate list of index columns and */ /* to extract datatype names */ WHERE not (@table_id is null) AND x.id = @table_id AND c.name = INDlat0•9vEX_COL(@full_table_name,@indid,c2.colid) AND c.id = x.id AND c2.id = x.id AND c2.colid < x.keycnt + (x.status&16)/16 AND x.indid = @indid AND t.xtype = d.ss_dtype AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentjty'),0) AND c.xusertype = t.xusertype m(0k)xpstar.dlles where (status & 64 <> 0) select @bytesperpage = low from master.dbo.spt_values where number = 1 and type = 'E' select @pagesperMB = 1048576 / @bytesperpage select database_name = db_name(), database_size = ltrim(str((@dbsize + @logsize) / @pagesperMB,15,2) + ' MB'), 'unallocated space' = ltrim(str((@dbsize - (select sum(convert(dec(15),reserved)) from sysindexes whfre indid in (0, 1, 255) )) / @pagesperMB,15,2)+ ' MB') print ' ' /* ** Now calculate the summary data. ** reserved: sum(reserved) where indid in (0, 1, 255) */ insert into #spt_space (reserved) select sum(convert(dec(15),reserved)) from sysindexes where indid ЫјкЫ/(x;Јп љљљљљЇЇа4ŒлЫЌЌЌЌ˜лЫ(лЫ0ФљІзОООООcolumnыыыы№лЫpлЫ18x;Јг l\ХU(ЇЇ а4 @procedure_qualifier begin if @procedure_qualifier = '' begin /* in this case, we need to return an empty result set */ /* because the user has requested a database with an empty name */ select @procedure_name = '' select @procedure_owner = '' end else begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end end if @procedure_name is null begin /* If procedure name not supplied, mbtch all */ select @procedure_name = '%' end /* first we need to extract the procedure group number, if one exists */ select @semi_position = charindex(';',@procedure_name) if (@semi_position > 0) begin /* If group number separator (;) found */ select @group_num_lower = convert(int,substring(@procedure_name, @semi_position + 1, 2)) select @group_num_upper = @group_num_lower select @procedure_name = substring(@procedure_name, 1, @semi_position -1) end else begin /* No grour separator, so default to all groups */ select @group_num_lower = 1 select @group_num_upper = 32767 end if @procedure_owner is null begin /* If unqualified procedure name */ SELECT @full_procedure_name = quotename(@procedure_name) end else begin /* Qualified procedure name */ if @procedure_owner = '' begin /* If empty owner name */ SELECT @full_procedure_name = quotename(@procedure_owner) end else begin SELECT @full_procedure_name = quotename(@procefure_owner) + '.' + quotename(@procedure_name) end end /* Get Object ID */ SELECT @procedure_id = object_id(@full_procedure_name) if ((isnull(charindex('%', @full_procedure_name),0) = 0) and (isnull(charindex('[', @procedure_name),0) = 0) and (isnull(charindex('[', @procedure_owner),0) = 0) and (isnull(charindex('_', @full_procedure_name),0) = 0) and not (@procedure_id is null)) begin /* this block is for the case where there is no pattern matching required for tje procedure name */ SELECT PROCEDURE_QUALIFIER = convert(sysname,DB_NAME()), PROCEDURE_OWNER = convert(sysname,USER_NAME(o.uid)), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(c.number,5))), COLUMN_NAME = convert(sysname,c.name), COLUMN_TYPE = convert(smallint, 1+c.isoutparam), d.DATA_TYPE, TYPE_NAME = t.name, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECJSION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, d.NULLABLE, REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = convert(nvarchar(4000),NULL), d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.lfngth)+d.charbin, ORDINAL_POSITION = convert(int, c.colid), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',d.NULLABLE*3+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, master.dbo.spt_datatype_info d, systypes t WHERE o.id = @procedure_id AND c. Ge0р)xpstar.dll select @olddefault = tdefault, @xusertype = xusertype from systypes where name = @UnqualObj and xusertype > 256 AND (is_member('db_owner')"= 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @olddefault is null begin raiserror(15036,-1,-1Ю€488 aaaa@НЮpМЮ?HXЁЂW~~~~~мЖЮЌОЮ—DI|IС++++аНЮиМЮ@px;ЈW|ПЮД ` `Л(ьНЮ@ СџџџџRRRRОЮ@НЮA `}Ј_ССССС””””иОЮаНЮB$x;Ј[’’’’’\НЮЖџџџџџџџџџџџџЧЧЧЧПЮОЮCАБЂкггггг@UnqualOldName††††`ПЮиОЮD(x;Ј3 ЩЩЩЩЩча4 œœœœ €ЮПЮE8x;Јг yyyyy4ПЮU(ча4фхК,,,,HшИи Œ<`ŒnˆЃyА!0ЭСs-sqlmap70.dlljjj0ЃЗ>г,@UnqualObj) return (1) end if @olddefault = 0 begin raiserror(15237,-1,-1,@UnqualObj) return (1) end update systypes set tdefault = 0 from systypes where xusertype = @xusertype raiserror(15520,-1,-1) /* ** Now see if there are any columns with the usertype that ** need the new binding. */ select @futureonly = lower(@futureonly) if isnull(@futureonly, ' ') <> @futurevalue begin declare ms_crs_unbindefault_1 cursor local static for select distinct c.id ,c.colid from syscolumns c JOIN sysobjects o ON c.id = o.id AND o.xtype = N'U ' where c.xusertype = @xusertype and c.cdefault = @olddefault order by c.id for read only open ms_crs_unbindefault_1 fetch next from mq_crs_unbindefault_1 into @tab_id ,@colid BEGIN TRANSACTION txn_unbindefault_2 while @@fetch_status = 0 begin select @vc1 = quotename(user_name(OBJECTPROPERTY(@tab_id,'OwnerId'))) + '.' + quotename(object_name(@tab_id)) dbcc LockObjectSchema(@vc1) --- Undocu. Locks out other schema changes until commit, and increments sysobjects.schema_ver. select @cur_tab_id = @tab_id while @cur_tab_id = @tab_id and @@fetch_status = 0 begin update syscolumns set cdefault = 0 from syscolumns where id = @tab_id and colid = @colid fetch next from ms_crs_unbindefault_1 into @tab_id ,@colid end end --loop 3 /* COMMIT TRANSACTION txn_unbindefault_2 deallocate ms_crs_unbindefault_1 raiserror(15521,-1,-1) end end return (0) -- sp_unbindefault T<Вб§Е /* Procedure for pre-7.0 server */ CREATE PROCEDURE sp_statistics ( @table_name varchar(32), @table_owner varchar(32)!= null, @table_qualifier varchar(32) = null, @index_name varchar(32) = '%', @is_unique char(1) = 'N', @accuracy char(1) = 'Q') AS set nocount on DECLARE @indid int DECLARE @lastindid int DECLARE @table_id int DECLARE @full_table_name varchar(65) /* 2*32+1 */ create table #TmpIndex( TABLE_QUALIFIER varchar(32) NULL, TABLE_OWNER varchar(32) NULL, TABLE_NAME varchar(32) NOT NULL, INDEX_QUALIFIER varchar(32) null, INDEX_NAME varchar(32) null, NON_UNIQUE smallint null, TYPE smallint NOT NULL, SEQ_IN_INDEX smallint null, COLUMN_NAME varchar(32) null, COLLATION char(1) null, index_id int null, CARDINALITY int null, PAGES int null, status smallint NOT NULL) if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror 20001 '~~Rush_5~~' return end end if @accuracy not in ('Q','E') begin raiserror!20002 '~~Rush_58~~' return end if (@@trancount <> 0 and charindex('6.50', @@version) = 0 and charindex('7.00', @@version) = 0 and charindex('8.00', @@version) = 0) begin /* If inside a transaction */ raiserror 20003 '~~Rush_59~~' return end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = @table_name end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @fulm_table_name = @table_owner end else begin SELECT @full_table_name = @table_owner + '.' + @table_name end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) /* Start at lowest index id */ SELECT @indid = min(indid) FROM sysindexes WHERE id = @table_id AND indid > 0 AND indid < 255 WHILE @indid is not NULL BEGIN INSERT #TmpIndex /* Add all columns that are in index */ SELECT DB_NAME(), /* TABLE_QUALIFIER */ USER_MAME(o.uid), /* TABLE_OWNER */ o.name, /* TABLE_NAME */ o.name, /* INDEX_QUALIFIER */ x.name, /* INDEX_NAME */ 0, /* NON_UNIQUE */ 1, /* SQL_INDEX_CLUSTERED */ colid, /* SEQ_IN_INDEX */ INDEX_COL(@full_table_name,indid,colid),/* COLUMN_NAME */ 'A', /* COLLATION */ @indid, /* index_id */ x.rows, /* CARDINALITY */ x.dpages, /* PAGES */ x.status /* status */ FROM sysindexes x, syscolumns c, sysobjects o WHERE x.id = @table_id AND x.id = o.id AND x.id = c.id AND c.colid < keycnt+(x.status&16)/16 /* all but Unique Clust indices have an extra key */ AND x.indid = @indid /* ** Now move @indid to the next index. */ SELECT @lastindid = @indid SELECT @indid = NULL SELECT @indid = min(indid) FROM sysindexes WHERE id = @table_id AND indid > @lastindid AND indid < 255 ! END UPDATE #TmpIndex SET NON_UNIQUE = 1 WHERE status&2 <> 2 /* If non-unique index */ UPDATE #TmpIndex SET TYPE = 3, /* SQL_INDEX_OTHER */ CARDINALITY = NULL, PAGES = NULL WHERE index_id > 1 /* If non-clustered index */ /* now add row for table statistics */ INSERT #TmpIndex SELECT DB_NAME(), /* TABLE_QUALIFIER */ USER_NAME(o.uid), /* TABLE_OWNER */ o.name, /* TABLE_NAME */ null, /* INDEX_QUALIFIER */ null, /* INDEX_MAME */ null, /* NON_UNIQUE */ 0, /* SQL_TABLE_STAT */ null, /* SEQ_IN_INDEX */ null, /* COLUMN_NAME */ null, /* COLLATION */ 0, /* index_id */ x.rows, /* CARDINALITY */ x.dpages, /* PAGES * <Вб§@/ 0 /* status */ FROM sysindexes x, sysobjects o WHERE o.id = @table_id AND x.id = o.id AND (x.indid = 0 or x.indid = 1) /* If there are no indexes */ /* then table suats are in */ /* a row with indid =0 */ if @is_unique <> 'Y' /* If all indexes desired */ SELECT TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, NON_UNIQUE, INDEX_QUALIFIER, INDEX_NAME, TYPE, SEQ_IN_INDEX, COLUMN_NAME, COLLATION, CARDINALITY, PAGES, FILTER_CONDITION = convert(varchar(128),null) FROM #TmpIndex WHERE INDEX_NAME like @index_name /* If matching name */ or INDEX_NAME is null /* If SQL_TABLE_STAT row */ ORDER BY!4, 7, 6, 8 else /* If only unique indexes desired */ SELECT TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, NON_UNIQUE, INDEX_QUALIFIER, INDEX_NAME, TYPE, SEQ_IN_INDEX, COLUMN_NAME, COLLATION, CARDINALITY, PAGES, FILTER_CONDITION = convert(varchar(128),null) FROM #TmpIndex WHERE (NON_UNIQUE = 0 /* If unique */ or NON_UNIQUE is NULL) /* If SQL_TABLE_STAT row */ and (INDEX_NAME like @index_name /* If matching name */ or INDEX_NAME is null) /* If SQL_TABLE_STAT row */ ORDER BY 4, 7, 6, 8 DROP TABLE #TmpIndex 0ˆЧШ)xpstar.dll!  0˜˜,.ФА(УT2УD=ФД9ФёФ„:Ф >ФYYYYАШ!Ф№?Ф>L>­ 6šЏЦZZZZ x@€ш2г0:Ф?X$­Ќ†ѓѓѓѓѓ/†Шщыy?•У›[Dњ?Рі?Рі?ˆУ@bЌцУ=…єйв?z?ІІІІx!Ф№?Ф@œЉЌh{{{{{D3УЄ3У....(а!Ф№?ФAАh­ƒЮЮЮЮЮ0˜˜C9Ф››››8!Ф№?ФI(gЂZZZZХХХХ(`ш2гш8ФD0Аh­џUUUUU0˜˜2 88 ф2УP( Фx#ФE0Аh­czzzzz0˜˜?\?Ф88  Œ?Ф////PА&Ф( ФF(gЂ}}}}}(((((€&Ф( ФGиЁЌMѕѕѕѕѕЬ™Ќ>Ф    (P&Ф( ФHАh­&&&&&0˜˜D|>ФT>Уssss№Рd\`Ѕ‚pЄyр†XA 0цg-sqlmap70.dll К0? \-sqlmap70.dll0'Чcreate procedure sp_who --- 1995/11/28 15:48 @loginame sysname = NULL --or 'active' as declare @spidlow int, @spidhigh int, @spid int, @sid varbinary(85) select @spidlow = 0 ,@spidhigh = 32767 if ( @loginame is not NULL AND upper(@loginame) = 'ACTIVE' ) begin select spid , ecid, status ,loginame=rtrim(loginame) ,hostname ,blk=convert(char(5),blocked) ,dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where spid >= @spidlow and spid <= @spidhigh AND upper(cmd) <> 'AWAITING COMMAND' return (0) end if (@loginame is not NULL AND upper(@loginame) <> 'ACTIVE' ) begin if (@loginame like '[0-9]%') -- is b spid. begin select @spid = convert(int, @loginame) select spid, ecid, status, loginame=rtrim(loginame), hostname,blk = convert(char(5),blocked), dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where spid = @spid end else begin select @sid = suser_sid(@loginame) if (@sid is null) begin raiserror(15007,-1,-1,@loginame) return (1) end select spid, ecid, svatus, loginame=rtrim(loginame), hostname ,blk=convert(char(5),blocked), dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where sid = @sid end return (0) end /* loginame arg is null */ select spid, ecid, status, loginame=rtrim(loginame), hostname, blk=convert(char(5),blocked), dbname = case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end ,cmd from master.dbo.sysprocesses where spid >= @spidlow and spid <= @spidhigh return (0) -- sp_who n0$цЕ /* Procedure for 8.0 server */ CREATE PROCEDURE sp_statistics ( @table_name sysname, @table_owner sysname = null, @table_qualifier sysname = null, @index_name sysname = '%', @is_unique char(1) = 'N', @accuracy char(1) = 'Q') AS set nocount on DECLARE @indid int DECLARE @lastindid int DECLARE @vable_id int DECLARE @full_table_name nvarchar(257) create table #TmpIndex( TABLE_QUALIFIER sysname collate database_default NULL, TABLE_OWNER sysname collate database_default NULL, TABLE_NAME sysname collate database_default NOT NULL, INDEX_QUALIFIER sysname collate database_default null, INDEX_NAME sysname collate database_default null, NON_UNIQUE smallint null, TYPE smallint NOT NULL, SEQ_IN_INDEX smallint null, COLUMN_NAME sysname collate database_default null, COLLATION char(1) collate database_default null, index_id int null, CARDINALITY int null, PAGES int null, status int NOT NULL) if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @accuracy not in ('Q','E') begin raiserror (15251,-1,-1,'accuracy','''Q'' or ''E''') return end if @table_owner is null begin /* If unqualjfied table name */ SELECT @full_table_name = quotename(@table_name) end else begin /* Qualified table name */ if @table_owner = '' begin /* If empty owner name */ SELECT @full_table_name = quotename(@table_owner) end else begin SELECT @full_table_name = quotename(@table_owner) + '.' + quotename(@table_name) end end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) /* Start at lowest index id */ SELECT @indid = min(indid) FRON sysindexes WHERE not (@table_id is null) AND id = @table_id AND indid > 0 AND indid < 255 /* Create a temp table to correct the ordinal position of the columns */ create table #TmpColumns (ordinal int identity(1,1), colid smallint not null) /* Load columns into the temp table */ insert into #TmpColumns (colid) select c.colid from syscolumns c where c.id = @table_id order by c.colid WHILE @indid is not NULL BEGIN INSERT #TmpIndex /* Add all columns that arf in index */ SELECT DB_NAME(), /* TABLE_QUALIFIER */ USER_NAME(o.uid), /* TABLE_OWNER */ o.name, /* TABLE_NAME */ o.name, /* INDEX_QUALIFIER */ x.name, /* INDEX_NAME */ case /* NON_UNIQUE */ WHEN x.status&2 <> 2 then 1 /* Nonunique index */ else 0 /* Unique index */ end, case /* TYPE */ when @indid > 1 then 3 /* Non-Clustered */ else 1 /* Clustered"index */ end, tc.ordinal, /* SEQ_IN_INDEX */ INDEX_COL(@full_table_name, indid, tc.ordinal),/* COLUMN_NAME */ 'A', /* COLLATION */ @indid, /* index_id */ case /* CARDINALITY */ when @indid > 1 then NULL /* Non-Clustered */ else x.rows /* Clustered index */ end, case /* PAGES */ when @indid > 1 then NULL /* Non-Clustered */ else x.dpages /* Clustered index */ enf, x.status /* status */ FROM sysindexes x, syscolumns c, sysobjects o, #TmpColumns tc WHERE not (@table_id is null) AND x.id = @table_id AND x.id = o.id AND x.id = c.id AND tc.colid = c.colid AND tc.ordinal < keycnt+(x.status&18)/18 /* all but Unique Clust indices have an extra key */ AND INDEX_COL(@full_table_name, indid, tc.ordinal) IS NOT NULL AND indid = @indid AND (x.status&2 = 2 OR @is_unique <> 'Y') AND (x.status&32) = 0 /* ** Now move @indid to the next index. */ SELEC 0$циT @lastindid = @indid SELECT @indid = NULL SELECT @indid = min(indid) FROM sysindexes WHERE not (@table_id is null) AND id = @table_id AND indid > @lastindid AND indid < 255 END /* now add row for table statistics */ INSERT #TmpIndex SELECT DB_NAME(), /* TABLE_QUALIFIER */ USER_NAME(o.uid), /* TABLE_OWNER */ o.name, /* TABLE_NAME */ null, /* INDEX_QUBLIFIER */ null, /* INDEX_NAME */ null, /* NON_UNIQUE */ 0, /* SQL_TABLE_STAT */ null, /* SEQ_IN_INDEX */ null, /* COLUMN_NAME */ null, /* COLLATION */ 0, /* index_id */ x.rows, /* CARDINALITY */ x.dpages, /* PAGES */ 0 /* status */ FROM sysindexes x, sysobjects o WHERE not (@table_id is null) AND o.id = @table_id AND x.id = o.id AND (x.indid = 0 or x.indid = 1) /* If there are no indexes */ /* then table stats are in */ /* a row with indid =0 */ SELECT TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, NON_UNIQUE, INDEX_QUALIFIER, INDEX_NAME, TYPE, SEQ_IN_INDEX, COLUMN_NAME, COLLATION, CARDINALITY, PAGES, FILTER_CONDITION = convert(varchar(128),null) FROM #TmpIndex WHERE INDEX_NAME like @index_name /* If matching name */ or INDEX_NAME is null /* If SQL_TABLE_STAT row */ ORDER BY 4, 7, 6, 8 DROP TABLE"#TmpIndex, #TmpColumns 0СыМ)xpstar.dllЈЈЈ0њБ)xpstar.dllidefauўўўўШ>КР=К­$x;Ј[еееееL=Ку Жџџџџџџџџџџџџ€€€€а40?К€>КЎHXЁЂWМАЙќ Й+sФjСЌDDDD  ЙШ>КЏpx;ЈWййййй<ЂЙLАЙ,Д `  Н(< Й@ Сџџџџ lŒŒŒŒŒ?К4<КaaaaŠŠŠŠ  Й ?К `}Јˆ < ЙМ?@ˆDР`ЄІ  Ѕ]ј#0N$ЕCREATE PROCEDURE sp_who2 --- 1995/11/03 10:16 @loginame sysname = NULL as set nocount on declare @retcode int declare @sidlow varbinary(85) ,@sidhigh varbinary(85) ,@sid1 varbinary(85) ,@spidlow int ,@spidhigh int declare @charMaxLenLoginName varchar(6) ,@charMaxLenDBName varchar(6) ,@charMaxLenCPUTime varchar(10) ,@charMaxLenDiskIO varchar(10) ,@charMaxLenHostName varchar(10) ,@charMaxLenProgramName varchar(10) ,@charMaxLenLastBatch varchar(10) ,@charMaxLenCommand varchar(10) declare @charsidlow varchar(85) ,@charsidhigh varchar(85) ,@charspidlow varchar(11) ,@charspidhigh varchar(11) -------- select @retcode = 0 -- 0=good ,1=bad. --------defaults select @sidlow = convert(varbinary(85), (replicate(char(0), 85))) select @sidhigh = convert(varbinary(85), (replicate(char(1), 85))) select @spidlow = 0 ,@spidhigh = 32767 -------------------------------------------------------------- IF (@loginame IS NULL) --Simple default to all LoginNames. GOTO LABEL_17PARM1EDITED -------- -- select @sid1 = suser_sid(@loginame) select @sid1 = null if exists(select * from master.dbo.syslogins where loginname = @loginame) select @sid1 = sid from master.dbo.syslogins where loginname = @loginame IF (@sid1 IS NOT NULL) --Parm is a recognized login name. begin select @sidlow = suser_sid(@loginame) ,@sidhigh = suser_sid(@loginame) GOTO LABEL_17PARM1EDITED end -------- IF (lower(@loginame) IN ('active')) --Special action, not sleeping. begin select @loginame = lower(@loginame) GOTO LABEL_17PARM1EDITED end -------- IF (patindex ('%[^0-9]%' , isnull(@loginame,'z')) = 0) --Is a number. begin select @spidlow = convert(int, @loginame) ,@spidhigh = convert(int, @loginame) GOTO LABEL_17PARM1EDITED end -------- RaisError(15007,-1,-1,@loginame) select @retcode = 1 GOTO LABEL_86RETURN LABEL_17PARM1EDITED: -------------------- Capture consistent sysprocesses. ------------------- SELECT spid ,status ,sid ,hostname ,program_name ,cmd ,cpu ,physical_io ,blocked ,dbid ,convert(sysname, rtrim(loginame)) as loginname ,spid as 'spid_sort' , substring( convert(varchar,last_batch,111) ,6 ,5 ) + ' ' + substring( convert(varchar,last_batch,113) ,13 ,8 ) as 'last_batch_char' INTO #tb1_sysprocesses from master.dbo.sysprocesses (nolock) --------Screen out any rows? IF (@loginame IN ('active')) DELETE #tb1_sysprocesses where lower(status) = 'sleeping' and upper(cmd) IN ( 'AWAITING COMMAND' ,'MIRROR HANDLER' ,'LAZY WRITER' ,'CHECKPOINT SLEEP' ,'RA MANAGER' ) and blocked = 0 --------Prepare to dynamically optimize column widths. Select @charsidlow = convert(varchar(85),@sidlow) ,@charsidhigh = convert(varchar(85),@sidhigh) ,@charspidlow = convert(varchar,@spidlow) ,@charspidhigh = convert(varchar,@spidhigh) SELECT @charMaxLenLoginName = convert( varchar ,isnull( max( datalength(loginname)) ,5) ) ,@charMaxLenDBName = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),db_name(dbid))))) ,6) ) ,@charMaxLenCPUTime = convert( varchar ,isnull( max( datalength€Ф0x.P-sqlmap70.dll(0N$У ( rtrim(convert(varchar(128),cpu)))) ,7) ) ,@charMaxLenDiskIO = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),physical_io)))) ,6) ) ,@charMaxLenCommand = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),cmd)))) ,7) ) ,@charMaxLenHostName = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),hostname)))) ,8) ) ,@charMaxLenProgramName = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),program_name)))) ,11) ) ,@charMaxLenLastBatch = convert( varchar ,isnull( max( datalength( rtrim(convert(varchar(128),last_batch_char)))) ,9) ) from #tb1_sysprocesses where -- sid >= @sidlow -- and sid <= @sidhigh -- and spid >= @spidlow and spid <= @spidhigh --------Output the report. EXECUTE( ' SET nocount off SELECT SPID = convert(char(5),spid) ,Status = CASE lower(status) When ''sleeping'' Then lower(status) Else upper(status) END ,Login = substring(loginname,1,' + @charMaxLenLoginName + ') ,HostName = CASE hostname When Null Then '' .'' When '' '' Then '' .'' Else substring(hostname,1,' + @charMaxLenHostName + ') END ,BlkBy = CASE isnull(convert(char(5),blocked),''0'') When ''0'' Then '' .'' Else isnull(convert(char(5),blocked),''0'') END ,DBName = substring(case when dbid = 0 then null when dbid <> 0 then db_name(dbid) end,1,' + @charMaxLenDBName + ') ,Command = substring(cmd,1,' + @charMaxLenCommand + ') ,CPUTime = substring(convert(varchar,cpu),1,' + @charMaxLenCPUTime + ') ,DiskIO = substring(convert(varchar,physical_io),1,' + @charMaxLenDiskIO + ') ,LastBatch = substring(last_batch_char,1,' + @charMaxLenLastBatch + ') ,ProgramName = substring(program_name,1,' + @charMaxLenProgramName + ') ,SPID = convert(char(5),spid) --Handy extra for right-scrolling users. from #tb1_sysprocesses --Usually DB qualification is needed in exec(). where spid >= ' + @charspidlow + ' and spid <= ' + @charspidhigh + ' -- (Seems always auto sorted.) order by spid_sort SET nocount on ' ) /*****AKUNDONE: removed from where-clause in above EXEC sqlstr sid >= ' + @charsidlow + ' and sid <= ' + @charsidhigh + ' and **************/ LABEL_86RETURN: if (object_id('tempdb..#tb1_sysprocesses') is not null) drop table #tb1_sysprocesses return @retcode -- sp_who2 бччFа4 зЇ”—ššіііі` №<б№?бn(gЂдддд(p№<б№?бoАh­ііііі0˜˜D0м>б\SЌ1 бЃЃЃЃ@(а?б№<бp(gЂZZZZ`h`?бH=бq@\­Ю ЦЦЦЦЦ0˜˜C/L?б““““8(а?б№<бr(gЂooooo”>б::::аЬH=бsP@\­о YYYYY0˜˜ xxxx`X б№?б p0'б№<бX?H`Ѕ ј Іyјb„0x.P-sqlmap70.dllрШ0‡H^ create procedure sp_check_removable @autofix varchar(4) as declare @dbosid varbinary (86) declare @dbname sysname declare @exec_stmt nvarchar(540) declare @fgname sysname select @dbname=db_name() /* Verify that SA owns the database. */ select @dbosid = sid from master..sysdatabases where name = @dbname if @dbosid <> 0x01 if @autofix='auto' begin -- changing DBO to SA update sysdatabases set sid = 0x01 where name = @dbname update sysusers set sid = 0x01 where uid = 1 end else begin raiserror(15258,-1,-1, @dbname) return(1) end -- USE CORRECT non-dbo/guest CHECKING declare @ret int exec @ret = sp_check_removable_sysusers @autofix if @ret <> 0 return 1 -- Run UPDATE STATISTICS on all user tables if there are -- no user defined filegroups if @autofix='auto' and (select counv(*) from sysfilegroups) = 1 begin select @exec_stmt = N'USE ' + quotename( @dbname , '[') + N' exec sp_updatestats ''RESAMPLE'' ' exec (@exec_stmt) end exec('dump tran '+@dbname+' with no_log') if (select count(*) from sysfilegroups) > 1 begin if @autofix='auto' begin -- Mark any non-primary filegroups as READONLY DECLARE ms_crs_fg CURSOR LOCAL STATIC FOR SELECT groupname FROM sysfilegroups fg WHERE fg.groupid > 1 -- not primary AND fg.status & 0x8 = 0 -- not already readonly AND (SELECT count (*) FROM sysfiles f WHERE f.groupid = fg.groupid) > 0 -- has some files OPEN ms_crs_fg FETCH NEXT FROM ms_crs_fg INTO @fgname WHILE (@@FETCH_STATUS <> -1) BEGIN SELECT @exec_stmt = 'ALTER DATABASE ' + quotename( @dbname , '[') + ' MODIFY FILEGROUP ' + quotename( @fgname , '[') + ' READONLY' EXEC (@exec_stmt) FETCH NEXT FROM ms_crs_fg INTO @fgname END CLOSE ms_crs_fg DEALLOCATE ms_crs_fg end flse begin if exists (SELECT groupname FROM sysfilegroups fg WHERE fg.groupid > 1 -- not primary AND fg.status & 0x8 = 0 -- not already readonly AND (SELECT count (*) FROM sysfiles f WHERE f.groupid = fg.groupid) > 0) -- has some files begin raiserror(15358,-1,-1) SELECT groupname FROM sysfilegroups fg WHERE fg.groupid > 1 -- not primary AND fg.status & 0x8 = 0 -- not already readonly return (-1) end end end return(0) c<]>кт /* pre 8.0 version */ create procedure sp_stored_procedures( @sp_name varchar(102) = null, @sp_owner varchar(96) = null, @sp_qualifier varchar(32) = null) as declare @proc_type smallint if @sp_qualifier is not null begin if db_name() <> @sp_qualifier begin if @sp_qualifier = '' begin /* in this case, we need to return an empty result set */ /* because the user has requested a database with an empty name */ select @sp_name = '' select @sp_owner = '' end else begin /* If qualifier doesn't match current database */ raiserror 20001 '~~Rush_51~~' return end end end if @sp_name is null begin /* If procedure name not supplied, match all */ select @sp_name = '%' end else begin if (@sp_owner is null) and (charindex('%', @sp_name) = 0) begin if exists (select * from sysobjects where uid = user_id() and name = @sp_name and type = 'P') /* Object type of Procedure"*/ begin select @sp_owner = user_name() end end end if @sp_owner is null /* If procedure owner not supplied, match all */ select @sp_owner = '%' select @proc_type=2 /* Return 2 for 4.2 and later servers. */ select PROCEDURE_QUALIFIER = convert(varchar(32),db_name()), PROCEDURE_OWNER = convert(varchar(32),user_name(o.uid)), PROCEDURE_NAME = convert(varchar(36),o.name +';'+ ltrim(str(c.number,5))), NUM_INPUT_PARAMS = -1, /* Constant since value unknown */ NUM_OUTPUT_PARAMS = -1, /* Constant since value unknown */ NUM_RESULT_SETS = -1, /* Constant since value unknown */ REMARKS = convert(varchar(254),null), /* Remarks are NULL */ PROCEDURE_TYPE = @proc_type from sysobjects o,syscomments c,sysusers u where o.name like @sp_name and c.colid = 1 and user_name(o.uid) like @sp_owner and o.type = 'P' /* Object type of Procedure */ and c.id = o.id and u.uid = user_id() /* constrain sysusers uid for use in subquery */ and (svser_id() = 1 /* User is the System Administrator */ or o.uid = user_id() /* User created the object */ /* here's the magic... select the highest precedence of permissions in the order (user,group,public) */ or ((select max(((sign(uid)*abs(uid-16383))*2)+(protecttype&1)) from sysprotects p /* outer join to correlate with all rows in sysobjects */ where p.id =* o.id /* get rows for public,current user,user's group */ and (p.uid = 0 or p.uid = user_id() or p.vid =* u.gid) /* check for SELECT,EXECUTE privilege */ and (action in (193,224)))&1 /* more magic...normalize GRANT */ ) = 1 /* final magic...compare Grants */ ) order by 1, 2, 3 ††034Ѕ)xpstar.dll0€џџTѕШ pѕШиєШnx;ЈЧ РРРРРloginname••••ŽŽ$НИѕШ8ѕШo$x;Ј `````єєШллллІ5555.іШpѕШp(XЁЂ ˜˜˜˜˜єєШFlеЇЭЭЭЮHіШИѕШq$x;Ј жжжжждѕШ. Іƒƒƒƒ  іШіШr8x;Јг њњњњњдѕШR(ЏЏЏЏ`їШHіШs XЁЂд _____dіШT#УкT  Н(|їШСџџџџT#Уd јШ іШt `}Ј_ЫЫЫЫЫ0їШ/(x;ЈЈ žžžžžn88 мїШ ЫЫЫЫшїШxїШ0ФљІзџџџџ]]]]”ќШ0јШРїШ1(XЁЂ‚ ;;;;;ŒНtžФРїШFччžžžžhјШ`їШu$x;Ј <<<<<МіШ |Іiiiiа4АјШ јШv(x;Јџ г \88 ЬјШ\\\\ијШhјШwФљІзccccc6666xјШ љШАјШx$x;Ј ppppp„јШ<јШІ%%%%hљШијШy(XЁЂ‚ wwwwwМіШ„јШpF,вЇ""""АљШ љШz(x;Јџ 88 ЬљШJJJJиљШhљШ{ФљІзFFFF  њШАљШ|$x;Ј НННННLѓШќіШІшшшшˆ€ hњШиљШ}$x;Ј }}}}}<љШєљШ І(((([КАњШ њШ~$x;Ј „љШ<њШШљШІYYYYкјњШhњШ(x;Ј ˆˆˆˆˆ„њШˆњШFШвЇннннPћШАњШ€8x;Јг рррррф'ЬЬњШањШU(ьІЛЕЕЕŘћШјњШ$АБЂкHHHHH@charMaxLenDBNameШћШPћШ‚АБЂкvarcharIIIIќШ˜ћШƒ(x;Ју ќШчча6,ќШWWWW@ќШШћШ„ФљІзvarchar@@@@ШЈќШќШ…Dx;Ј ЃЃЃЃЃфћШ€4іііі8ќШиќШ@ќШ†АБЂкФФФФФisnull‘‘‘‘§ШЈќШ‡АБЂкрррррmaxЕЕЕЕ8§ШиќШˆАБЂк,,,,,datalengthyyyyШh§Ш§Ш‰ АБЂкdddddrtrim1111Ь§Ш˜§Ш8§ШŠАБЂкэээээvarcharИИИИр§Шh§Ш‹(x;Ју ЦЦЦЦЦ$чча4ќ§Ш““““ўШ˜§ШŒФљІзыыыыыvarcharООООШxўШр§ШDx;Ј ”””””Д§Ш€4€СССС8ўШЈўШўШŽАБЂк$$$$$db_nameqqqqиўШxўШ АБЂкѕѕѕѕѕdbid     8џШЈўШ@x;Ј- єєєєє ўШ(0€џџTџШЁЁЁЁ`џШиўШ‘x;ЈЧ dbidOOOOЈџШ8џШ’$x;Ј ўўўўўєўШ.999ІЋЋЋЋ  Н Ь`џШ“(XЁЂ ,,,,,єўШF№ЯЇyyyywwwwst№ д`6 МЇzP3D0Ю +xplog70.dll0,§7(server internal)б0н!Ш&create procedure sp_cycle_errorlog --- 1997/06/24 as if (not (is_srvrolemember('sysadmin') = 1)) -- Make sure that it is the SA executing this. begin raiserror(15247,-1,-1) return(1) end dbcc errorlog return (0) 0ь;‡Е /* Procedure for 8.0 server */ create procedure sp_tables( @table_name nvarchar(384) = null, @table_owner nvarchar(384) = null, @table_qualifier sysname = null, @table_type varchar(100) = null) as declare @type1 varchar(3) declare @tableindex int /* Special feature #1: enumerate databases when owner and name are blank but qualifier is explicitly '%'. */ if @table_qualifier = '%' and @table_owner = '' and @table_name = '' begin /* If enumerating databases */ select TABLE_QUALIFIER = convert(sysname,d.name), TABLE_OWNER = convert(sysname,null), TABLE_NAME = convert(sysname,null), TABLE_TYPE = convert(varchar(32),null), REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from master.dbo.sysdatabases d where d.name <> 'model' /* eliminate MODEL database */ order by 1 end /* Special feature #2: enumerate owners when qualifier and name are blank but owner is explicitly '%'. */ else if @table_qualifier = '' and @table_owner = '%' and @table_name = '' begin /* If enumerating owners */ select distinct TABLE_QUALIFIER = convert(sysname,null), TABLE_OWNER = convert(sysname,user_name(uid)), TABLE_NAME = convert(sysname,null), TABLE_TYPE = convert(varchar(32),null), REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from sysobjects order by 2 end /* Special feature #3: enumerate table types when qualifier, owner and name are blank but table type is expliciuly '%'. */ else if @table_qualifier = '' and @table_owner = '' and @table_name = '' and @table_type = '%' begin /* If enumerating table types */ select TABLE_QUALIFIER = convert(sysname,null), TABLE_OWNER = convert(sysname,null), TABLE_NAME = convert(sysname,null), TABLE_TYPE = convert(varchar(32),rtrim(substring('SYSTEM TABLETABLE VIEW',(colid-1)*12+1,12))), REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from sysobjects o, syscolumns c where o.ie=c.id and o.name='sysusers' and colid<=3 end else begin /* end of special features - do normal processing */ if @table_qualifier is not null begin if db_name() <> @table_qualifier begin if @table_qualifier = '' begin /* If empty qualifier supplied */ /* Force an empty result set */ select @table_name = '' select @table_owner = '' end else begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end end if @table_type is null begin /* Select all ODBC supported table types */ select @type1 = 'SUV' end else begin /* TableType is case sensitive if CS server */ select @type1 = '' if (charindex('''SYSTEM TABLE''',@table_type) <> 0) select @type1 = @type1 + 'S' /* Add System Tables */ if (charindex('''TABLE''',@table_type) <> 0) select @type1 = @type1 + 'U' /* Add User Tables */ if (charindex('''VIEW''',@table_type) <> 0) select @type1 = @uype1 + 'V' /* Add Views */ end if @table_name is null begin /* If table name not supplied, match all */ select @table_name = '%' end else begin if (@table_owner is null) and (charindex('%', @table_name) = 0) begin /* If owner not specified and table is specified */ if exists (select * from sysobjects where uid = user_id() and name = @table_name and (type = 'U' or type = 'V' or type = 'S')) begin /* Override supplied owner w/owner of table */ select @table_owner = user_name() end end end if @table_owner is null /* If no owner supplied, force wildcard */ select @table_owner = '%' select TABLE_QUALIFIER = convert(sysname,db_name()), TABLE_OWNER = convert(sysname,user_name(o.uid)), TABLE_NAME = convert(sysname,o.name), /* make nullable */ TABLE_TYPE = convert(varchar(32),rtrim( substring('SYSTEM TABLE TA */0ь;‡РBLE VIEW ', (ascii(o.type)-83)*12+1,12))), /* 'S'=0,%U'=2,'V'=3 */ REMARKS = convert(varchar(254),null) /* Remarks are NULL */ from sysobjects o where o.name like @table_name and user_name(o.uid) like @table_owner and o.type in ('U','V','S') and charindex(substring(o.type,1,1),@type1) <> 0 /* Only desired types */ and permissions (o.id)&4096 <> 0 order by 4, 1, 2, 3 end 0‰ ^)xpstar.dllin 0Т1R)xpstar.dll /User is the System Administrator */ or o.uid = user_id() /*!User created the object */ /* here's the magic... select the highest precedence of permissions in the order (user,group,public) */ or ((select max(((sign(uid)*abs(uid-16383))*2)+(protecttype&1)) from sysprotects p /* outer join to correlate with all rows in sysobjects */ where p.id =* o.id /* get rows for public,current user,user's group */ and (p.uid = 0 or p.uid = user_id() or p.uid =* u.gid) /* check for SELECT,EXECUTE privilege */ and (action in )193,224)))&1 /* more magic...normalize GRANT */ ) = 1 /* final magic...compare Grants */ ) order by 4, 1, 2, 3 end le -- VALIDATE PARAMETERS and obtain bits affected -- SELECT @order = rtrim(@order), @stmttype = rtrim(@stmttype) SELECT @firstbit = case lower(@stmttype) when 'delete' then 16384 when 'update' then 65536 when 'insert' then 262144 else NULL end SELECT @lastbit = @firstbit * 2 -- NOTE DEPENDENCY ON BIT LAYOUT HERE! SELECT @setbit = case lower(Aorder) when 'none' then 0 when 'first' then @firstbit when 'last' then @lastbit else NULL end IF @setbit is NULL OR @firstbit IS NULL begin raiserror(15600,-1,-1, 'sp_settriggerorder') return (1) end -- BEGIN TRAN AND LOCK SCHEMA (also checks permissions) -- BEGIN TRAN DBCC LOCKOBJECTSCHEMA(@triggername) if @@error <> 0 goto abort_exit -- VERIFY PROPER OBJECT TYPE -- select @trigid = object_id(@triggername, 'local') select @tableid = parent_obj, @uid = uid from sysobjects where id = @trigid AND xtype='TR' and ObjectProperty(@trigid,'ExecIsInsteadofTrigger')=0 and ObjectProperty(@trigid,'ExecIs'+@stmttype+'Trigger')=1 if (@tableid is NULL) begin if ObjectProperty(@trigid,'ExecIs'+@stmttype+'Trigger')=0 raiserror(15125,-1,-1, @triggername, @stmttype) else if ObjectProperty(@trigid,'ExecIsInsteadofTrigger')=1 raiserror(15133, -1, -1, @triggername) else raiserror(15126,-1,-1,@triggername) goto abort_exit end -- LOCK THE UABLE SCHEMA TOO -- select @tabname = quotename(user_name(@uid))+'.'+quotename(object_name(@tableid)) DBCC LOCKOBJECTSCHEMA(@tabname) if @@error <> 0 goto abort_exit -- VERIFY FIRST/LAST OF GIVEN TYPE DOESN'T ALREADY EXIST -- IF EXISTS (select * from sysobjects where parent_obj = @tableid AND xtype='TR' AND id <> @trigid AND ObjectProperty(id, 'ExecIs'+@order+@stmttype+'Trigger') = 1) BEGIN raiserror(15130,-1,-1,@tabname, @order, @stmttype) goto abort_exit END -- SET THE OREER AS REQUESTED, COMMIT & RETURN SUCCESS -- update sysobjects set status = ((status&~(@firstbit|@lastbit))|@setbit) where id = @trigid commit transaction return(0) -- ROLLBACK TRAN & EXIT-FAIL -- abort_exit: rollback transaction return(1) ЙТТТТ0ПЙЈОЙЬx;ЈЧ JJJJJidкŒhПЙПЙЭАБЂкobject_idNNNNus ПЙ0ПЙЮАБЂк{{{{{@tblname....ШpПЙ ШhПЙЯ$x;Ј KKKKK,)Т88ІмЄl4ЄьŒФd`"‡ЉГ)qЈ­Имїф\PP ИxкPP ЙxкPP КxкPP ЛxкPP МxкPP Нx кPP Оx@кPP Пx€кPP РyкPP СyкPP ТyкPP УyкPP ФyкPP Хy кPP Цy@кPP Чy€кPP ШzкPP ЩzкPP ЪzкPP ЫzкPP ЬzкPP Эz кPP Юz@кPP Яz€кPP а{кPP б{кPP в{кPP г{кPP д{кPP е{ кPP ж{@кPP з{€кPP и|кPP й|кPP к|кPP л|кPP м|кPP н| кPP о|@кPP п|€кPP р}кPP с}кPP т}кPP у}кPP ф}кPP х} кPP ц}@кPP ч}€кPP ш~кPP щ~кPP ъ~кPP ы~кPP ь~кPP э~ кPP ю~@кPP я~€кPP №кPP ёкPP ђкPP ѓкPP єкPP ѕ кPP і@кPP ї€кPP ј€кPP љ€кPP њ€кPP ћ€кPP ќ€кPP §€ кPP ў€@кPP џ€€кPP лPP лPP лPP лPP лPP  лPP @лPP €лPP ‚лPP ‚лPP ‚лPP ‚лPP ‚лPP ‚ лPP ‚@лPP ‚€лPP ƒлPP ƒлPP ƒлPP ƒлPP ƒлPP ƒ лPP ƒ@лPP ƒ€лPP „лPP „лPP „лPP „лPP „лPP „ лPP „@лPP „€лPP …лPP !…лPP "…лPP #…лPP $…лPP %… лPP &…@лPP '…€лPP (†лPP )†лPP *†лPP +†лPP ,†лPP -† лPP .†@лPP /†€лPP 0‡лPP 1‡лPP 2‡лPP 3‡лPP 4‡лPP 5‡ лPP 6‡@лPP 7‡€лPP 8ˆлPP 9ˆлPP :ˆлPP ;ˆлPP <ˆлPP =ˆ лPP >ˆ@лPP ?ˆ€лPP @‰лPP A‰лPP B‰лPP C‰лPP D‰лPP E‰ лPP F‰@лPP G‰€лPP HŠлPP IŠлPP JŠлPP KŠлPP LŠлPP MŠ лPP NŠ@лPP OŠ€лPP P‹лPP Q‹лPP R‹лPP S‹лPP T‹лPP U‹ лPP V‹@лPP W‹€лPP XŒлPP YŒлPP ZŒлPP [ŒлPP \ŒлPP ]Œ лPP ^Œ@лPP _Œ€лPP `лPP aлPP bлPP cлPP dлPP e лPP f@лPP g€лPP hŽлPP iŽлPP jŽл!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"ЈЊГ)qЉЎP- РPP kŽлPP lŽлPP mŽ лPP nŽ@лPP oŽ€лPP pлPP qлPP rлPP sлPP tлPP u лPP v@лPP w€лPP xлPP yлPP zлPP {лPP |лPP } лPP ~@лPP €лPP €‘лPP ‘лPP ‚‘лPP ƒ‘лPP „‘лPP …‘ лPP †‘@лPP ‡‘€лPP ˆ’лPP ‰’лPP Š’лPP ‹’лPP Œ’лPP ’ лPP Ž’@лPP ’€лPP “лPP ‘“лPP ’“лPP ““лPP ”“лPP •“ лPP –“@лPP —“€лPP ˜”лPP ™”лPP š”лPP ›”лPP œ”лPP ” лPP ž”@лPP Ÿ”€лPP  •лPP Ё•лPP Ђ•лPP Ѓ•лPP Є•лPP Ѕ• лPP І•@лPP Ї•€лPP Ј–лPP Љ–лPP Њ–лPP Ћ–лPP Ќ–лPP ­– лPP Ў–@лPP Џ–€лPP А—лPP Б—лPP В—лPP Г—лPP Д—лPP Е— лPP Ж—@лPP З—€лPP И˜лPP Й˜лPP К˜лPP Л˜лPP М˜лPP Н˜ лPP О˜@лPP П˜€лPP Р™лPP С™лPP Т™лPP У™лPP Ф™лPP Х™ лPP Ц™@лPP Ч™€лPP ШšлPP ЩšлPP ЪšлPP ЫšлPP ЬšлPP Эš лPP Юš@лPP Яš€лPP а›лPP б›лPP в›лPP г›лPP д›лPP е› лPP ж›@лPP 盈лPP иœлPP йœлPP кœлPP лœлPP мœлPP нœ лPP оœ@лPP пœ€лPP рлPP слPP тлPP улPP флPP х лPP ц@лPP ч€лPP шžлPP щžлPP ъžлPP ыžлPP ьžлPP эž лPP юž@лPP яž€лPP №ŸлPP ёŸлPP ђŸлPP ѓŸлPP єŸлPP ѕŸ лPP іŸ@лPP їŸ€лPP ј лPP љ лPP њ лPP ћ лPP ќ лPP §  лPP ў @лPP џ €лPP ЁлPP ЁлPP ЁлPP ЁлPP ЁлPP Ё лPP Ё@лPP Ё€лPP ЂлPP ЂлPP ЂлPP ЂлPP ЂлPP Ђ лPP Ђ@лPP Ђ€лPP ЃлPP ЃлPP ЃлPP ЃлPP ЃлPP Ѓ лPP Ѓ@лPP Ѓ€лPP ЄлPP ЄлPP ЄлPP ЄлPP ЄлPP Є л~Є&Н'Нd'НFFFF0HРПF№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"ЉЋГ)qЊЎˆфkљPP Є@лPP Є€лPP ЅлPP !ЅлPP "ЅлPP #ЅлPP $ЅлPP %Ѕ лPP &Ѕ@лPP 'Ѕ€лPP (ІлPP )ІлPP *ІлPP +ІлPP ,ІлPP -І лPP .І@лPP /І€лPP 0ЇлPP 1ЇлPP 2ЇлPP 3ЇлPP 4ЇлPP 5Ї лPP 6Ї@лPP 7Ї€лPP 8ЈлPP 9ЈлPP :ЈлPP ;ЈлPP <ЈлPP =Ј лPP >Ј@лPP ?Ј€лPP @ЉлPP AЉлPP BЉлPP CЉлPP DЉлPP EЉ лPP FЉ@лPP GЉ€лPP HЊлPP IЊлPP JЊлPP KЊлPP LЊлPP MЊ лPP NЊ@лPP OЊ€лPP PЋлPP QЋлPP RЋлPP SЋлPP TЋлPP UЋ лPP VЋ@лPP WЋ€лPP XЌлPP YЌлPP ZЌлPP [ЌлPP \ЌлPP ]Ќ лPP ^Ќ@лPP _Ќ€лPP `­лPP a­лPP b­лPP c­лPP d­лPP e­ лPP f­@лPP g­€лPP hЎлPP iЎлPP jЎлPP kЎлPP lЎлPP mЎ лPP nЎ@лPP oЎ€лPP pЏлPP qЏлPP rЏлPP sЏлPP tЏлPP uЏ лPP vЏ@лPP wЏ€лPP xАлPP yАлPP zАлPP {АлPP |АлPP }А лPP ~А@лPP А€лPP €БлPP БлPP ‚БлPP ƒБлPP „БлPP …Б лPP †Б@лPP ‡Б€лPP ˆВлPP ‰ВлPP ŠВлPP ‹ВлPP ŒВлPP В лPP ŽВ@лPP В€лPP ГлPP ‘ГлPP ’ГлPP “ГлPP ”ГлPP •Г лPP –Г@лPP —Г€лPP ˜ДлPP ™ДлPP šДлPP ›ДлPP œДлPP Д лPP žД@лPP ŸД€лPP  ЕлPP ЁЕлPP ЂЕлPP ЃЕлPP ЄЕлPP ЅЕ лPP ІЕ@лPP ЇЕ€лPP ЈЖлPP ЉЖлPP ЊЖлPP ЋЖлPP ЌЖлPP ­Ж лPP ЎЖ@лPP ЏЖ€лPP АЗлPP БЗлPP ВЗлPP ГЗлPP ДЗлPP ЕЗ лPP ЖЗ@лPP ЗЗ€лPP ИИлPP ЙИлPP КИлPP ЛИлPP МИлPP НИ лPP ОИ@лPP ПИ€лPP РЙлPP СЙлPP ТЙлPP УЙлPP ФЙлPP ХЙ лPP ЦЙ@лPP ЧЙ€лPP ШКлPP ЩКлPP ЪКлPP ЫКлPP ЬКлPP ЭК лPP ЮК@лPP ЯК€лPP аЛл0єІЌskkkkkŒŒ˜рсссЌЌ#$žF№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"ЊЌГ)qЋЎЙ–7hФPP бЛлPP вЛлPP гЛлPP дЛлPP еЛ лPP жЛ@лPP зЛ€лPP иМлPP йМлPP кМлPP лМлPP мМлPP нМ лPP оМ@лPP пМ€лPP рНлPP сНлPP тНлPP уНлPP фНлPP хН лPP цН@лPP чН€лPP шОлPP щОлPP ъОлPP ыОлPP ьОлPP эО лPP юО@лPP яО€лPP №ПлPP ёПлPP ђПлPP ѓПлPP єПлPP ѕП лPP іП@лPP їП€лPP јРлPP љРлPP њРлPP ћРлPP ќРлPP §Р лPP ўР@лPP џР€лPP СлPP СлPP СлPP СлPP СлPP С лPP С@лPP С€лPP ТлPP ТлPP ТлPP ТлPP ТлPP Т лPP Т@лPP Т€лPP УлPP УлPP УлPP УлPP УлPP У лPP У@лPP У€лPP ФлPP ФлPP ФлPP ФлPP ФлPP Ф лPP Ф@лPP Ф€лPP ХлPP !ХлPP "ХлPP #ХлPP $ХлPP %Х лPP &Х@лPP 'Х€лPP (ЦлPP )ЦлPP *ЦлPP +ЦлPP ,ЦлPP -Ц лPP .Ц@лPP /Ц€лPP 0ЧлPP 1ЧлPP 2ЧлPP 3ЧлPP 4ЧлPP 5Ч лPP 6Ч@лPP 7Ч€лPP 8ШлPP 9ШлPP :ШлPP ;ШлPP <ШлPP =Ш лPP >Ш@лPP ?Ш€лPP @ЩлPP AЩлPP BЩлPP CЩлPP DЩлPP EЩ лPP FЩ@лPP GЩ€лPP HЪлPP IЪлPP JЪлPP KЪлPP LЪлPP MЪ лPP NЪ@лPP OЪ€лPP PЫлPP QЫлPP RЫлPP SЫлPP TЫлPP UЫ лPP VЫ@лPP WЫ€лPP XЬлPP YЬлPP ZЬлPP [ЬлPP \ЬлPP ]Ь лPP ^Ь@лPP _Ь€лPP `ЭлPP aЭлPP bЭлPP cЭлPP dЭлPP eЭ лPP fЭ@лPP gЭ€лPP hЮлPP iЮлPP jЮлPP kЮлPP lЮлPP mЮ лPP nЮ@лPP oЮ€лPP pЯлPP qЯлPP rЯлPP sЯлPP tЯлPP uЯ лPP vЯ@лPP wЯ€лPP xалPP yалPP zалPP {алPP |алPP }а лPP ~а@лPP а€лPP €блPP блPP ‚блPP ƒбл(Ќ J,lЈƒUUUUU%allow F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"Ћ­Г)qЌЎxpђ№Е/PP „блPP …б лPP †б@лPP ‡б€лPP ˆвлPP ‰влPP ŠвлPP ‹влPP ŒвлPP в лPP Žв@лPP в€лPP глPP ‘глPP ’глPP “глPP ”глPP •г лPP –г@лPP —г€лPP ˜длPP ™длPP šдлPP ›длPP œдлPP д лPP žд@лPP Ÿд€лPP  елPP ЁелPP ЂелPP ЃелPP ЄелPP Ѕе лPP Іе@лPP Їе€лPP ЈжлPP ЉжлPP ЊжлPP ЋжлPP ЌжлPP ­ж лPP Ўж@лPP Џж€лPP АзлPP БзлPP ВзлPP ГзлPP ДзлPP Ез лPP Жз@лPP Зз€лPP ИилPP ЙилPP КилPP ЛилPP МилPP Ни лPP Ои@лPP Пи€лPP РйлPP СйлPP ТйлPP УйлPP ФйлPP Хй лPP Цй@лPP Чй€лPP ШклPP ЩклPP ЪклPP ЫклPP ЬклPP Эк лPP Юк@лPP Як€лPP аллPP бллPP вллPP гллPP дллPP ел лPP жл@лPP зл€лPP имлPP ймлPP кмлPP лмлPP ммлPP нм лPP ом@лPP пм€лPP рнлPP снлPP тнлPP унлPP фнлPP хн лPP цн@лPP чн€лPP шолPP щолPP ъолPP ыолPP ьолPP эо лPP юо@лPP яо€лPP №плPP ёплPP ђплPP ѓплPP єплPP ѕп лPP іп@лPP їп€лPP јрлPP љрлPP њрлPP ћрлPP ќрлPP §р лPP ўр@лPP џр€лPP слPP слPP слPP слPP слPP с лPP с@лPP с€лPP тлPP тлPP тлPP тлPP тлPP т лPP т@лPP т€лPP улPP улPP улPP улPP улPP у лPP у@лPP у€лPP флPP флPP флPP флPP флPP ф лPP ф@лPP ф€лPP хлPP !хлPP "хлPP #хлPP $хлPP %х лPP &х@лPP 'х€лPP (цлPP )цлPP *цлPP +цлPP ,цлPP -ц лPP .ц@лPP /ц€лPP 0члPP 1члPP 2члPP 3члPP 4члPP 5ч лPP 6ч@л /* exclude revoke'd privileges */ F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"ЌЎГ)q­Ў№f™EџPP 7ч€лPP 8шлPP 9шлPP :шлPP ;шлPP <шлPP =ш лPP >ш@лPP ?ш€лPP @щлPP AщлPP BщлPP CщлPP DщлPP Eщ лPP Fщ@лPP Gщ€лPP HълPP IълPP JълPP KълPP LълPP Mъ лPP Nъ@лPP Oъ€лPP PылPP QылPP RылPP SылPP TылPP Uы лPP Vы@лPP Wы€лPP XьлPP YьлPP ZьлPP [ьлPP \ьлPP ]ь лPP ^ь@лPP _ь€лPP `элPP aэлPP bэлPP cэлPP dэлPP eэ лPP fэ@лPP gэ€лPP hюлPP iюлPP jюлPP kюлPP lюлPP mю лPP nю@лPP oю€лPP pялPP qялPP rялPP sялPP tялPP uя лPP vя@лPP wя€лPP x№лPP y№лPP z№лPP {№лPP |№лPP }№ лPP ~№@лPP №€лPP €ёлPP ёлPP ‚ёлPP ƒёлPP „ёлPP …ё лPP †ё@лPP ‡ё€лPP ˆђлPP ‰ђлPP ŠђлPP ‹ђлPP ŒђлPP ђ лPP Žђ@лPP ђ€лPP ѓлPP ‘ѓлPP ’ѓлPP “ѓлPP ”ѓлPP •ѓ лPP –ѓ@лPP —ѓ€лPP ˜єлPP ™єлPP šєлPP ›єлPP œєлPP є лPP žє@лPP Ÿє€лPP  ѕлPP ЁѕлPP ЂѕлPP ЃѕлPP ЄѕлPP Ѕѕ лPP Іѕ@лPP Їѕ€лPP ЈілPP ЉілPP ЊілPP ЋілPP ЌілPP ­і лPP Ўі@лPP Џі€лPP АїлPP БїлPP ВїлPP ГїлPP ДїлPP Еї лPP Жї@лPP Зї€лPP ИјлPP ЙјлPP КјлPP ЛјлPP МјлPP Нј лPP Ој@лPP Пј€лPP РљлPP СљлPP ТљлPP УљлPP ФљлPP Хљ лPP Цљ@лPP Чљ€лPP ШњлPP ЩњлPP ЪњлPP ЫњлPP ЬњлPP Эњ лPP Юњ@лPP Яњ€лPP аћлPP бћлPP вћлPP гћлPP дћлPP ећ лPP жћ@лPP зћ€лPP иќлPP йќлPP кќлPP лќлPP мќлPP нќ лPP оќ@лPP пќ€лPP р§лPP с§лPP т§лPP у§лPP ф§лPP х§ лPP ц§@лPP ч§€лPP шўлPP щўлws output drop table #spfkeys end F№ХšoDюУ˜mBьС–k@ъП”i>шН’g<цЛe:фЙŽc8 тЗŒa6 рЕŠ_4 оГˆ]2мБ†[0кЏ„Y.и­‚W,жЋ€U*џдЉ~S(§вЇ|Q&ћ а Ѕ z O $ љ Ю Ѓ x M " ї Ь Ё v K ѕ Ъ Ÿ t I  ѓ Ш  r G  ёЦ›pEяФ™nCэТ—lAыР•j?щО“h=чМ‘f;хКd9уИb7 сЖ‹`"­YсmЎАP*UGнPP ъўлPP ыўлPP ьўлPP эў лPP юў@лPP яў€лPP №џлPP ёџлPP ђџлPP ѓџлPP єџлPP ѕџ лPP іџ@лPP їџ€лPP јлPP љлPP њлPP ћлPP ќлPP § лPP ў@лPP џ€лpR 9REPORT TYPESмPR vнpR €џџV- (rpt)оpSFL;SF LOCK TYPESпpSFLvOExtent Lock - ExclusiveрpSFL vIExtent Lock - UpdateсpSFL v EExtent Lock - NextтpSFL v MExtent Lock - PreviousуpSOP3@@OPTIONSфpSOPvMdisable_def_cnst_checkхpSOPvKimplicit_transactionsцpSOPvMcursor_close_on_commitчpSOPv;ansi_warningsшpSOPv9ansi_paddingщpSOP v5ansi_nullsъpSOP@v 5arithabortыpSOP€v@7arithignoreьpSOPv€Cquoted_identifierэpSOPv/nocountюpSOPvCansi_null_dflt_onяpSOPvEansi_null_dflt_off№pSOPvOconcat_null_yields_nullёpSOP vEnumeric_roundabortђpSOP@v5xact_abortѓpT ESYSPROTECTS.ACTIONєpT v5ReferencesѕpT Вv?Create FunctionіpT СvВ-SelectїpT УvС-InsertјpT ФvУ-DeleteљpT ХvФ-UpdateњpT ЦvХ9Create TableћpT ЫvЦ?Create DatabaseќpT ЬvЫ3Grant_WGO§pT ЭvЬ+GrantўpT ЮvЭ)DenyџpT ЯvЮ7Create ViewpT оvЯACreate ProcedurepT рvо/ExecutepT фvр?Backup DatabasepT щvф=Create DefaultpT ыvщEBackup TransactionpT ьvы7Create RulepV CSYSDEVICES STATUSpV v9default diskpV v;physical disk pV v9logical disk pV v;backup device pV v;serial writes pV 3read only pV 1deferredpSRV1sysadminpSRV v;securityadminpSRV@v 7serveradminpSRV€v@5setupadminpSRVv€9processadminpSRVv3diskadminpSRVv3dbcreatorpSRVv3bulkadminpSRVџџџџKSystem AdministratorspSRV џџџџvOSecurity AdministratorspSRV@џџџџv KServer AdministratorspSRV€џџџџv@ISetup AdministratorspSRVџџџџv€MProcess AdministratorspSRVџџџџvGDisk AdministratorspSRVџџџџvCDatabase CreatorspSRVџџџџvUBulk Insert Administrators DEFAULT DATABASE -- update master.dbo.sysxlogins set dbid = db_id(@defdb), xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE IF (@@error <> 0) return (1) raiserror(15486,-1,-1) return (0) -- sp_defaultdb ЉЛ0C[е*9 /* Procedure for 8.0 server */ create procedure sp_tableswc( @table_name nvarchar(384) = null, @table_owner nvarchar(384) = null, @table_qualifier sysname = null, @table_type varchar(100) = null) as declare @databasename sysname declare @qualprocname nvarchar(141) /* 128 + '..sp_tables' */ create table #sptables ( TABLE_QUALIFIER sysname collate database_default null, TABLE_OWNER sysname collate database_default null, TABLE_NAME sysname collate database_default null, TABLE_TYPE varchar(32) collate database_default null, REMARKS varchar(254) collate database_default null) declare databases CURSOR FOR select name from master..sysdatabases where name like @table_qualifier and name <> 'model' and has_dbaccess(name)=1 for read only open databases fetch next from databases into @databasename while (@@FETCH_STATUS <> -1) begin if (charindex('%', @databasename) = 0) begin /* skip dbnames w/wildcard characters to prevent loop */ select @qualprocname = @databasename + '..sp_tables' insert into #sptables exec @qualprocname @table_name, @table_owner, @databasename, @table_type end fetch next from databases into @databasename end deallocate databases select * from #sptables order by 4, 1, 2, 3 0Q *)xpstar.dll0Ru”+)xpstar.dllгр=гћ$x;Ј[ІІІІІl=гЖџџџџџџџџџџџџѓѓѓѓP?г >гќHx;Ј$ %%%%%< Иќ УџџџџъшppJ Рw0ч O Зlт“Nо  P Ю “ X  а  : b !Йрd™ VВYШќЃ‰ї Є G є Ѓ f  аJК_ЋjМeПY„чМ‘f;хКd9уИb7 сЖ‹`"№ЙJB *ЏВP g/[pDC v5subscribedBpDC v;merge publishCpDC vIALL SETTABLE OPTIONSEpDC v7DistributedDpE GSQLSERVER HOST TYPEFpE  5WINDOWS/NTGpE €v9int high bitHpE v=int4 high byteIpEOBAF3AGGREGATEHpEOBARvAAAPPLICATION ROLEIpEOBASvA1ASSEMBLYJpEOBALvAIASYMMETRIC KEY LOGINKpEOBAKvA=ASYMMETRIC KEYMpEOBCLvACCERTIFICATE LOGINNpEOBCRvC7CERTIFICATEPpEOBC vCACHECK CONSTRAINTQpEOBCTvC1CONTRACTRpEOBCDvC5CREDENTIALSpEOBDBvC1DATABASETpEOBD vD/DEFAULTUpEOBEPvD1ENDPOINTVpEOBSDvEEEVENT NOTIFICATIONWpEOBDNvSEEVENT NOTIFICATIONXpEOBENvDEEVENT NOTIFICATIONYpEOBONvEEEVENT NOTIFICATIONZpEOBF vOMFOREIGN KEY CONSTRAINT[pEOBFCvFAFULLTEXT CATALOG\pEOBFLvFCFULLTEXT STOPLIST]pEOBIFvF1FUNCTION^pEOBTFvI1FUNCTION_pEOBFNvT1FUNCTION`pEOBFSvF1FUNCTIONapEOBISvF1FUNCTIONbpEOBFTvI1FUNCTIONcpEOBMKvL5MASTER KEYgpEOBDKvMODATABASE ENCRYPTION KEYhpEOBMTvD9MESSAGE TYPEipEOBOBvM-OBJECTjpEOBPFvOEPARTITION FUNCTIONkpEOBPRvP?BROKER PRIORITYlpEOBPSvPAPARTITION SCHEMEmpEOBPKvP7PRIMARY KEYnpEOBSQvP+QUEUEopEOBBNvSMREMOTE SERVICE BINDINGppEOBRLvB)ROLEqpEOBR vR)RULEspEOBSCvR-SCHEMAtpEOBSGvS7SERVER ROLEupEOBSRvS-SERVERvpEOBSLvS3SQL LOGINxpEOBUSvS1SQL USERypEOBPCvSASTORED PROCEDURE|pEOBRFvPASTORED PROCEDURE}pEOBP vRASTORED PROCEDURE~pEOBX vPASTORED PROCEDUREpEOBSKvX;SYMMETRIC KEY€pEOBSNvS/SYNONYMpEOBS vS+TABLE‚pEOBU vS+TABLEƒpEOBTAvU/TRIGGER„pEOBTRvT/TRIGGER…pEOBDTvT/TRIGGER†pEOBT vD/TRIGGER‡pEOBUQvTCUNIQUE CONSTRAINT‰pEOBV vU)VIEWŠpEOBWGvV;WINDOWS GROUP‹pEOBWLvW;WINDOWS LOGINŒpEOBSEvS;EVENT SESSIONpEOBRGvSCRESOURCE GOVERNORpEOBDAvRYDATABASE AUDIT SPECIFICATION‘pEOBSAvDUSERVER AUDIT SPECIFICATION’pEOBA vS9SERVER AUDIT“pEOBCPvAMCRYPTOGRAPHIC PROVIDER”pEOBCOvC;SERVER CONFIG•TIFICATIONZpEOBF vOMFOREIGN KEY CONSTRAINT[pEOBFCvFAFULLTEXT CATALOG\pEOBFLvFCFULLTEXT STOPLIST]pEOBIFvF1FUNCTION^pEOBTFvI1FUNCTION_pEOBFNvT1FUNCTION`pEOBFSvF1FUNCTIONapEOBISvF1FUNCTIONbpEOBFTvI1FUNCTIONcpEOBGUvF5GROUP USERdpEOBIXvG+INDEXepEOBLXvI+LOGINfpEOBMKvL5MASTER KEYgpEOBDKvMODATABASE ENCRYPTION KEYhpEOBMTvD9MESSAGE TYPEipEOBOBvM-OBJECTjpEOBPFvOEPARTITION FUNCTIONkpEOBPRvP?BROKER PRIORITYlpEOBPSvPAPARTITION SCHEMEmpEOBPKvP7PRIMARY KEYnpEOBSQvP+QUEUEopEOBBNvSMREMOTE SERVICE BINDINGppEOBRLvB)ROLEqpEOBRTvR+ROUTErpEOBR vR)RULEspEOBSCvR-SCHEMAtpEOBSGvS7SERVER ROLEupEOBSRvS-SERVERvpEOBSVvS/SERVICEwpEOBSLvS3SQL LOGINxpEOBUSvS1SQL USERypEOBSUvU1SQL USERzpEOBSTvS5STATISTICS{pEOBPCvSASTORED PROCEDURE|pEOBRFvPASTORED PROCEDURE}pEOBP vRASTORED PROCEDURE~pEOBX vPASTORED PROCEDUREpEOBSKvX;SYMMETІ Ч GZШ ˆ I B о { tѓС\ †с> ы˜• ’№ ;#е  I иI™ $Ыш( ŒВлEG^ ™ьэ ŠЭмu†”„[' 7‘ЩЙ?g нˆCьЃ`"Г ЗbЄ˜АВp0$ с=л-vA >lazy schema validationvD *dbo use only(vD2 6numeric roundabort1vI (primary key\vA Tremote proc transaction promotionvD (single user)vD2 &arithabort2vI &unique key]v D2 *ANSI padding3v@D2 4ANSI null default4vSOP6ansi_null_dflt_off№vSOP@concat_null_yields_nullёv SOP6numeric_roundabortђv@SOP&xact_abortѓvV $read only v V "deferredvSRV$bulkadminvSRVFBulk Insert Administratorsv@DBR$DB Ownersv@DBRBDB Access Administrators v@DBRFDB Security Administrators!v@DBR<DB DDL Administrators"v@DBR6DB Backup Operator#v@DBR.DB Data Reader$v@DBR.DB Data Writer%v@DBR8DB Deny Data Reader&v @DBR8DB Deny Data Writer'v LNG Spanish.vLNG$Norwegian=vLNG&Portuguese>vLNG6Simplified ChineseEvAFEOB$AGGREGATEHvC EOB2CHECK CONSTRAINTQvCDEOB&CREDENTIALSvDBEOB"DATABASETvD EOB DEFAULTUvSDEOB6EVENT NOTIFICATIONWvF EOB>FOREIGN KEY CONSTRAINT[vFCEOB2FULLTEXT CATALOG\vIFEOB"FUNCTION^vTFEOB"FUNCTION_vOBEOBOBJECTjvPFEOB6PARTITION FUNCTIONkvR EOBRULEsvSCEOBSCHEMAtvSGEOB(SERVER ROLEuvPCEOB2STORED PROCEDURE|vRFEOB2STORED PROCEDURE}vP EOB2STORED PROCEDURE~vX EOB2STORED PROCEDUREvS EOBTABLE‚vU EOBTABLEƒvTAEOB TRIGGER„vT EOB TRIGGER‡vV EOBVIEWŠvSEEOB,EVENT SESSIONvRGEOB4RESOURCE GOVERNORvDAEOBJDATABASE AUDIT SPECIFICATION‘vSAEOBFSERVER AUDIT SPECIFICATION’vA EOB*SERVER AUDIT“vA EOD*SERVER AUDIT–vC EOD2CHECK CONSTRAINT–vD EOD DEFAULT–vF EOD>FOREIGN KEY CONSTRAINT–vP EOD2STORED PROCEDURE–vR EODRULE–zS EODTABLE№ЉzT EOD TRIGGER№!ЌvU EODTABLE–vV EODVIEW–zX EOD2STORED PROCEDURE№ЈvDAEODJDATABASE AUDIT SPECIFICATION–vSAEODFSERVER AUDIT SPECIFICATION–zTAEOD TRIGGER№ЊvDBEOD"DATABASE–vOBEODOBJECT–vFCEOD2FULLTEXT CATALOG–zPCEOD2STORED PROCEDURE№ІvSCEODSCHEMA–vCDEOD&CREDENTIAL–zSDEOD6EVENT NOTIFICATION№vSEEOD,EVENT SESSION–vAFEOD$AGGREGATE–zIFEOD"FUNCTION№ ЁvPFEOD6PARTITION FUNCTION–zRFEOD2STORED PROCEDURE№ЇzTFEOD"FUNCTION№ ЂvRGEOD4RESOURCE GOVERNOR–vSGEOD(SERVER ROLE–vSDEODDEVENT NOTIFICATION SERVERvIFEODRFUNCTION TABLE-VALUED INLINE SQLЁvTFEODDFUNCTION TABLE-VALUED SQLЂvPCEODDSTORED PROCEDURE ASSEMBLYІvRFEODXSTORED PROCEDURE REPLICATION FILTERЇvX EODDSTORED PROCEDURE EXTENDEDЈvS EOD*TABLE SYSTEMЉvTAEOD2TRIGGER ASSEMBLYЊvT EOD.TRIGGER SERVERЌERzvSTEOB&STATISTICS{vPCEOB2STORED PROCEDURE|vRFEOB2STORED PROCEDURE}vP EOB2STORED PROCEDURE~vX EOB2STORED PROCEDUREvSKEOB,SYMMETRIC KEY€vSNEOB SYNONYMvS EOBTABLE‚vU EOBTABLEƒvTAEOB TRIGGER„vTREOB TRIGGER…vDTEOB TRIGGER†vT EOB TRIGGER‡vTYEOBTYPEˆvUQEOB4UNIQUE CONSTRAINT‰vV EOBVIEWŠvWGEOB,WINDOWS GROUP‹vWLEOB,WINDOWS LOGINŒvWUEOB*WINDOWS USERvSXEOB<XML SCHEMA COLLECTIONŽvSEEOB,EVENT SESSIONvRGEOB4RESOURCE GOVERNORvDAEOBJDATABASE AUDIT SPECIFICATION‘vSAEOBFSERVER AUDIT SPECIFICATION’vA EOB*SERVER AUDIT“vCPEOB>CRYPTOGRAPHIC PROVIDER”vCOEOB,SERVER CONFIG•vA EOD*SERVER AUDIT–vC EOD2CHECK CONSTRAINT–vD EOD DEFAULT–vF EOD>FOREIGN KEY CONSTRAINT–vP EOD2STORED PROCEDURE–vR EODRULE–vS EODTABLE  ^J ˆ. ,юx Њj (zо H  жЪ –|jж к*8 ъž О> ŽА`Œ ф ДŒ ьІj.ъ LќЎЪ–’tј Lш "b \єК фЪ8 ЂЎ bИ R шрЈ<p8j^тDv*іР^2’`Ци(фЌ`"Ж В ЬБЏР Р –ˆVP лVP лV P лV P лV P лV P лV P лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лV P лV!P лV"P лV#P лV$P лV%P лV&P лV'P лV(P лV)P лV*P лV+P лV,P лV-P лV.P лV/P лV0P лV1P лV2P лV3P лV4P лV5P лV6P лV7P лV8P лV9P лV:P лV;P лV<P лV=P лV>P лV?P лV@P лVAP лVBP лVCP лVDP лVEP лVFP лVGP лVHP лVIP лVJP лVKP лVLP лVMP лVNP лVOP лVPP лVQP лVRP лVSP лVTP лVUP лVVP лVWP лVXP лVYP лVZP лV[P лV\P лV]P лV^P лV_P лV`P лVaP лVbP лVcP лVdP лVeP лVfP лVgP лVhP лViP лVjP лVkP лVlP лVmP лVnP лVoP лVpP лVqP лVrP лVsP лVtP лVuP лVvP лVwP лVxP лVyP лVzP лV{P лV|P лV}P лV~P лVP лV€P лVP лV‚P лVƒP лV„P лV…P лV†P лV‡P лVˆP лV‰P лVŠP лV‹P лVŒP лVP лVŽP лVP лVP лV‘P лV’P лV“P лV”P лV•P лV–P лV—P лV˜P лV™P лVšP лV›P лVœP лVP лVžP лVŸP лV P лVЁP лVЂP лVЃP лVЄP лVЅP лVІP лVЇP лVЈP лVЉP лVЊP лVЋP лVЌP лV­P лVЎP лVЏP лVАP лVБP лVВP лVГP лVДP лVЕP лVЖP лVЗP лVИP лVЙP лVКP лVЛP лVМP лVНP лVОP лVПP лVРP лVСP лVТP лVУP лVФP лVХP лVЦP лVЧP лVШP лVЩP лVЪP лVЫP лVЬP лVЭP лVЮP лVЯP лVаP лVбP лVвP лVгP лVдP лVеP лVжP лVзP лVиP лVйP лVкP лVлP лVмP лVнP лVоP лVпP лVрP лVсP лVтP лVуP лVфP лVхP лVцP лVчP лVшP лVщP лVъP лVыP лVьP лVэP лVюP лVяP лV№P лVёP лVђP лVѓP лVєP лVѕP лVіP лVїP лVјP лVљP лVњP лVћP лVќP лV§P лVўP лVџP лVP лVP лVP лVP лVP лVP лVP лVP лVP лV P лV P лV P лV P лV P лVP лVP лVP лVP лVP лVP л!!!!!!!!!!!!!!!!!!!!!!!!А”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`"Б Г ЬВЎx=СНYбVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лV P лV!P лV"P лV#P лV$P лV%P лV&P лV'P лV(P лV)P лV*P лV+P лV,P лV-P лV.P лV/P лV0P лV1P лV2P лV3P лV4P лV5P лV6P лV7P лV8P лV9P лV:P лV;P лV<P лV=P лV>P лV?P лV@P лVAP лVBP лVCP лVDP лVEP лVFP лVGP лVHP лVIP лVJP лVKP лVLP лVMP лVNP лVOP лVPP лVQP лVRP лVSP лVTP лVUP лVVP лVWP лVXP лVYP лVZP лV[P лV\P лV]P лV^P лV_P лV`P лVaP лVbP лVcP лVdP лVeP лVfP лVgP лVhP лViP лVjP лVkP лVlP лVmP лVnP лVoP лVpP лVqP лVrP лVsP лVtP лVuP лVvP лVwP лVxP лVyP лVzP лV{P лV|P лV}P лV~P лVP лV€P лVP лV‚P лVƒP лV„P лV…P лV†P лV‡P лVˆP лV‰P лVŠP лV‹P лVŒP лVP лVŽP лVP лVP лV‘P лV’P лV“P лV”P лV•P лV–P лV—P лV˜P лV™P лVšP лV›P лVœP лVP лVžP лVŸP лV P лVЁP лVЂP лVЃP лVЄP лVЅP лVІP лVЇP лVЈP лVЉP лVЊP лVЋP лVЌP лV­P лVЎP лVЏP лVАP лVБP лVВP лVГP лVДP лVЕP лVЖP лVЗP лVИP лVЙP лVКP лVЛP лVМP лVНP лVОP лVПP лVРP лVСP лVТP лVУP лVФP лVХP лVЦP лVЧP лVШP лVЩP лVЪP лVЫP лVЬP лVЭP лVЮP лVЯP лVаP лVбP лVвP лVгP лVдP лVеP лVжP лVзP лVиP лVйP лVкP лVлP лVмP лVнP лVоP лVпP лVрP лVсP лVтP лVуP лVфP лVхP лVцP лVчP лVшP лVщP лVъP лVыP лVьP лVэP лVюP лVяP лV№P лVёP лVђP лVѓP лVєP лVѕP лVіP лVїP лVјP лVљP лVњP лVћP лVќP лV§P лVўP лVџP лVP лVP лVP лVP лVP лVP лVP лVP лVP лV P лV P лV P лV P лV P лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лVP лV P л!!!!!!!!!!!!!!!!!!!!!!!!А”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`ЂВ Ап~ФГЏ иsokV!P лV"P лV#P лV$P лV%P лV&P лV'P лV(P лV)P лV*P лV+P лV,P лV-P лV.P лV/P лV0P лV1P лV2P лV3P лV4P лV5P лV6P лV7P лV8P лV9P лV:P лV;P лV<P лV=P лV>P лV?P лV@P лVAP лVBP лVCP лVDP лVEP лVFP лVGP лVHP лVIP лVJP лVKP лVLP лVMP лVNP лVOP лVPP лVQP лVRP лVSP лVTP лVUP лVVP лVWP лVXP лVYP лVZP лV[P лV\P лV]P лV^P лV_P лV`P лVaP лVbP лVcP лVdP лVeP лVfP лVgP лVhP лViP лVjP лVkP лVlP лVmP лVnP лVoP лVpP лVqP лVrP лVsP лVtP лVuP лVvP лVwP лVxP лVyP лVzP лV{P лV|P лV}P лV~P лVP лV€P лVP лV‚P лVƒP лV„P лV…P лV†P лV‡P лVˆP лV‰P лVŠP лV‹P лVŒP лVP лVŽP лVP лVP лV‘P лV’P лV“P лV”P лV•P лV–P лV—P лV˜P лV™P лVšP лV›P лVœP лVP лVžP лVŸP лV P лVЁP лVЂP лVЃP лVЄP лVЅP лVІP лVЇP лVЈP лVЉP лVЊP лVЋP лVЌP лV­P лVЎP лVЏP лVАP лVБP лVВP лVГP лVДP лVЕP лVЖP лVЗP лVИP лVЙP лVКP лVЛP лVМP лVНP лVОP лVПP лVРP лVСP лVТP лVУP лVФP лVХP лVЦP лVЧP лVШP лVЩP лVЪP лVЫP лVЬP лVЭP лVЮP лVЯP лVаP лVбP лVвP лVгP лVдP лVеP лVжP лVзP лVиP лVйP лVкP лVлP лVмP лVнP лVоP лVпP лVрP лVсP лVтP лVуP лVфP лVхP лVцP лVчP лVшP лVщP лVъP лVыP лVьP лVэP лVюP лVяP лV№P лVёP лVђP лVѓP лVєP лVѕP лVіP лVїP лVјP лVљP лVњP лVћP лVќP лV§P лVўP лVџP л!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`"Є Ї”Ю ДА06к˜/VOP зVPP зVQP зVRP зVSP зVTP зVUP зVVP зVWP зVXP зVYP зVZP зV[P зV\P зV]P зV^P зV_P зV`P зVaP зVbP зVcP зVdP зVeP зVfP зVgP зVhP зViP зVjP зVkP зVlP зVmP зVnP зVoP зVpP зVqP зVrP зVsP зVtP зVuP зVvP зVwP зVxP зVyP зVzP зV{P зV|P зV}P зV~P зVP зv€A (data accessv€D &recovering$V€P иVP иV‚P иVƒP иV„P иV…P иV†P иV‡P иVˆP иV‰P иVŠP иV‹P иVŒP иVP иVŽP иVP иVP иV‘P иV’P иV“P иV”P иV•P иV–P иV—P иV˜P иV™P иVšP иV›P иVœP иVP иVžP иVŸP иV P иVЁP иVЂP иVЃP иVЄP иVЅP иVІP иVЇP иVЈP иVЉP иVЊP иVЋP иVЌP иV­P иVЎP иVЏP иVАP иVБP иVВP иVГP иVДP иVЕP иVЖP иVЗP иVИP иVЙP иVКP иVЛP иVМP иVНP иVОP иVПP иVРP иVСP иVТP иVУP иVФP иVХP иVЦP иVЧP иVШP иVЩP иVЪP иVЫP иVЬP иVЭP иVЮP иVЯP иVаP иVбP иVвP иv€SOP(arithignoreьvВT 0Create FunctionіvСT SelectїvУT InsertјvФT DeleteљvХT UpdateњvЦT *Create TableћvЫT 0Create DatabaseќvЬT $Grant_WGO§vЭT GrantўvЮT DenyџvЯT (Create Viewv€SRV&setupadminv€SRV:Setup Administrators!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!цXЪ0Ў’дv–Z>"ъ ^Ю 2В – кz ^ ЎB & ю в Ж š ~ b F *  ђ ж К pž ‚ f J .  і к О Ђ † j N 2  њ о Т І Š n R 6  ўтЦЊŽrV:цЪЎ’vZ>"ъЮВ–z^BŽТ:&ђМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`Ђ` ˆ‡Ю$ЕЏА~i?ЄVƒP кV„P кV…P кV†P кV‡P кVˆP кV‰P кVŠP кV‹P кVŒP кVP кVŽP кVP кVP кV‘P кV’P кV“P кV”P кV•P кV–P кV—P кV˜P кV™P кVšP кV›P кVœP кVP кVžP кVŸP кV P кVЁP кVЂP кVЃP кVЄP кVЅP кVІP кVЇP кVЈP кVЉP кVЊP кVЋP кVЌP кV­P кVЎP кVЏP кVАP кVБP кVВP кVГP кVДP кVЕP кVЖP кVЗP кVИP кVЙP кVКP кVЛP кVМP кVНP кVОP кVПP кVРP кVСP кVТP кVУP кVФP кVХP кVЦP кVЧP кVШP кVЩP кVЪP кVЫP кVЬP кVЭP кVЮP кVЯP кVаP кVбP кVвP кVгP кVдP кVеP кVжP кVзP кVиP кVйP кVкP кVлP кVмP кVнP кVоP кVпP кVрP кVсP кVтP кVуP кVфP кVхP кVцP кVчP кVшP кVщP кVъP кVыP кVьP кVэP кVюP кVяP кV№P кVёP кVђP кVѓP кVєP кVѕP кVіP кVїP кVјP кVљP кVњP кVћP кVќP кV§P кVўP кVџP кVP кVP кVP кVP кVP кVP кVP кVP кVP кV P к!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`Ђ† Б‡Ю$ЖЏР|i НV€P лVP лV‚P лVƒP лV„P лV…P лV†P лV‡P лVˆP лV‰P лVŠP лV‹P лVŒP лVP лVŽP лVP лVP лV‘P лV’P лV“P лV”P лV•P лV–P лV—P лV˜P лV™P лVšP лV›P лVœP лVP лVžP лVŸP лV P лVЁP лVЂP лVЃP лVЄP лVЅP лVІP лVЇP лVЈP лVЉP лVЊP лVЋP лVЌP лV­P лVЎP лVЏP лVАP лVБP лVВP лVГP лVДP лVЕP лVЖP лVЗP лVИP лVЙP лVКP лVЛP лVМP лVНP лVОP лVПP лVРP лVСP лVТP лVУP лVФP лVХP лVЦP лVЧP лVШP лVЩP лVЪP лVЫP лVЬP лVЭP лVЮP лVЯP лVаP лVбP лVвP лVгP лVдP лVеP лVжP лVзP лVиP лVйP лVкP лVлP лVмP лVнP лVоP лVпP лVрP лVсP лVтP лVуP лVфP лVхP лVцP лVчP лVшP лVщP лVъP лVыP лVьP лVэP лVюP лVяP лV№P лVёP лVђP лVѓP лVєP лVѕP лVіP лVїP лVјP лVљP лVњP лVћP лVќP лV§P лVўP лVџP лVP лVP лVP лVP лVP лVP лVP л!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ьаД˜|`D( № д И œ € d H ,  є и М   „ h L 0  ј м Р Є ˆ l P 4  ќ р Ф Ј Œ p T 8  ф Ш Ќ  t X <  шЬА”x\@$ьаД˜|`D( №дИœ€dH,єиМ „hL0јмРЄˆlP4ќрФЈŒpT8фШЌtX< шЬА”x\@$ьаĘ|`"А $кЗВh/$Р9fJvWGEOB,WINDOWS GROUP‹vAKEOB.ASYMMETRIC KEYMvDKEOB@DATABASE ENCRYPTION KEYhvMKEOB&MASTER KEYgvPKEOB(PRIMARY KEYnvSKEOB,SYMMETRIC KEY€vALEOB:ASYMMETRIC KEY LOGINKvCLEOB4CERTIFICATE LOGINNvFLEOB4FULLTEXT STOPLIST]vRLEOBROLEqvSLEOB$SQL LOGINxvWLEOB,WINDOWS LOGINŒvBNEOB>REMOTE SERVICE BINDINGpvDNEOB6EVENT NOTIFICATIONXvENEOB6EVENT NOTIFICATIONYvFNEOB"FUNCTION`vONEOB6EVENT NOTIFICATIONZvSNEOB SYNONYMvCOEOB,SERVER CONFIG•vCPEOB>CRYPTOGRAPHIC PROVIDER”vEPEOB"ENDPOINTVvSQEOBQUEUEovUQEOB4UNIQUE CONSTRAINT‰vAREOB2APPLICATION ROLEIvCREOB(CERTIFICATEPvPREOB0BROKER PRIORITYlvSREOBSERVERvvTREOB TRIGGER…vASEOB"ASSEMBLYJvFSEOB"FUNCTIONavISEOB"FUNCTIONbvPSEOB2PARTITION SCHEMEmvUSEOB"SQL USERyvCTEOB"CONTRACTRvDTEOB TRIGGER†vFTEOB"FUNCTIONcvMTEOB*MESSAGE TYPEivRTEOBROUTErvSTEOB&STATISTICS{vAUEOB8ASYMMETRIC KEY USERLvCUEOB2CERTIFICATE USEROvGUEOB&GROUP USERdvSUEOB"SQL USERzvWUEOB*WINDOWS USERvSVEOB SERVICEwvIXEOBINDEXevLXEOBLOGINfvSXEOB<XML SCHEMA COLLECTIONŽvTYEOBTYPEˆv€D .emergency mode*vD2 @concat null yields null5vD2 6recursive triggers6vD ,missing files,vD2 @default to local cursor7v@D &autoshrink+v@D :ALL SETTABLE OPTIONS.v€D2 4quoted identifier8v€I (auto createZvD2 >auto create statistics9vI 6stats no recompute[vD2 >cursor close on commit:vD2 &ANSI nulls;vD2 ,ANSI warnings<v D2 4full text enabled=v@D 2cleanly shutdown-v@D2 >auto update statistics>v|“WD2 :ALL SETTABLE OPTIONS?vWGEOD,WINDOWS GROUP–vAKEOD.ASYMMETRIC KEY–vDKEOD@DATABASE ENCRYPTION KEY–vMKEOD&MASTER KEY–vPKEOD(PRIMARY KEY–vSKEOD,SYMMETRIC KEY–vALEOD:ASYMMETRIC KEY LOGIN–vCLEOD4CERTIFICATE LOGIN–vFLEOD4FULLTEXT STOPLIST–vRLEODROLE–vSLEOD$SQL LOGIN–vWLEOD,WINDOWS LOGIN–vBNEOD>REMOTE SERVICE BINDING–zDNEOD6EVENT NOTIFICATION№žvENEOD6EVENT NOTIFICATION–zFNEOD"FUNCTION№  zONEOD6EVENT NOTIFICATION№ŸvSNEOD SYNONYM–vCOEOD,SERVER CONFIG–vCPEOD>CRYPTOGRAPHIC PROVIDER–vEPEOD"ENDPOINT–vSQEODQUEUE–vUQEOD4UNIQUE CONSTRAINT–vAREOD2APPLICATION ROLE–vCREOD(CERTIFICATE–vPREOD0BROKER PRIORITY–vSREODSERVER–vTREOD TRIGGER–vASEOD"ASSEMBLY–zFSEOD"FUNCTION№ЃzISEOD"FUNCTION№ЄvPSEOD2PARTITION SCHEME–zUSEOD"SQL USER№œvCTEOD"CONTRACT–zDTEOD TRIGGER№ЋzFTEOD"FUNCTION№ЅvMTEOD*MESSAGE TYPE–vRTEODROUTE–vSTEOD&STATISTICS–vAUEOD8ASYMMETRIC KEY USER–vCUEOD2CERTIFICATE USER–vGUEOD&GROUP USER–vSUEOD"SQL USER–vWUEOD*WINDOWS USER–vSVEOD SERVICE–vIXEODINDEX–vLXEODLOGIN–vSXEOD<XML SCHEMA COLLECTION–vTYEODTYPE–vXREOD$XREL TREE—vAQEOD(ADHOC QUERY˜vITEOD.INTERNAL TABLE™vPQEOD:PREPARED ADHOC QUERYšvAPEOD*Undocumented›vUSEODUSERœvDNEODHEVENT NOTIFICATION DATABASEžvONEODDEVENT NOTIFICATION OBJECTŸvFNEOD8FUNCTION SCALAR SQL vFSEODDFUNCTION SCALAR ASSEMBLY ЃvISEODHFUNCTION SCALAR INLINE SQL ЄvFTEODPFUNCTION TABLE-VALUED ASSEMBLY ЅvDTEOD2TRIGGER DATABASEЋ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!jоœb.т ž R  к ’ ^  ж ’ D  2р ш– Оl ”B f .м ўЌ Ъx Š8 DђОц”Ў\Т<~,šPў Ю~№žА^ц€.”Pў ЮZђ Цtˆ6RРа~ІTўŒv$*иF№žТpќ~,NNќ ИІЦtz(@юМц”ЄRbШрŽЊXv$(жьšВ`ЂѕЅKЭИАЈ 4…й'pO9TџџџџEIT: internal tableЛpO9Tџџџџ/L : logМpO9TџџџџIP : stored procedureНpO9Tџџџџ]PC : assembly stored procedureОpO9TџџџџGPK: primary key cnsПpO9Tџџџџ1R : ruleРpO9TџџџџWRF: replication filter procСpO9TџџџџAS : system tableТpO9Tџџџџ7SN: synonymУpO9Tџџџџ3SQ: queueФpO9TџџџџITA: assembly triggerХpO9TџџџџETF: table functionЦpO9Tџџџџ7TR: triggerЧpO9Tџџџџ=U : user tableШpO9TџџџџEUQ: unique key cnsЩpO9Tџџџџ1V : viewЪpO9TџџџџQX : extended stored procЫpO9TQsysobjects.type, reportsЏPP ЬPP ЭPP ЮPP ЯPP аPP  бPP @вPP €гPP дPP дPP дPP дPP дPP  дPP @дPP €дPP еPP еPP еPP еPP еPP  еPP @еPP €еPP еPP еPP еPP еPP еPP  еPP @еPP €еPP жPP !жPP "жPP #жPP $жPP % жPP &@жPP '€жPP (жPP )жPP *жPP +жPP ,жPP - жPP .@жPP /€жPP 0жPP 1жPP 2жPP 3жPP 4жPP 5 жPP 6@жPP 7€жPP 8ж!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!rGёЦ›pEя Ф ™ n C  э Т — l A  ы Р • j ?  щ О “ h =  ч М ‘ f ;  хКd9уИb7 сЖ‹`5 ЋL Кo*з€?њЋFВG№Г`"ЏЛ79YЙВp0$умё‡pEOBRTvR+ROUTErpEOBSTvS5STATISTICS{pEOBAUvAGASYMMETRIC KEY USERLpEOBCUvCACERTIFICATE USEROpEOBGUvF5GROUP USERdpEOBSUvU1SQL USERzpEOBSVvS/SERVICEwpEOBIXvG+INDEXepEOBLXvI+LOGINfpEOBTYvT)TYPEˆpEOBWUvW9WINDOWS USERpEOBSXvWKXML SCHEMA COLLECTIONŽpEODA MT9SERVER AUDIT–pEODC ER AACHECK CONSTRAINT–pEODD ER vC/DEFAULT–pEODF ER vDMFOREIGN KEY CONSTRAINT–pEODP ER vFASTORED PROCEDURE–pEODR ER vP)RULE–|EODS ER vR+TABLE№Љ|EODT ER vS/TRIGGER№ ЌpEODU ER vT+TABLE–pEODV ER vU)VIEW–|EODX ER vVASTORED PROCEDURE№ЈpEODDAER vXYDATABASE AUDIT SPECIFICATION–pEODSAER vDUSERVER AUDIT SPECIFICATION–|EODTAER vS/TRIGGER№ЊpEODDBER vT1DATABASE–pEODOBER vD-OBJECT–pEODFCER vOAFULLTEXT CATALOG–|EODPCER vFASTORED PROCEDURE№ІpEODSCER vP-SCHEMA–pEODCDER vS5CREDENTIAL–pEODSEER vS;EVENT SESSION–pEODAFER vS3AGGREGATE–|EODIFER vA1FUNCTION№ ЁpEODPFER vIEPARTITION FUNCTION–|EODRFER vPASTORED PROCEDURE№Ї|EODTFER vR1FUNCTION№ ЂpEODRGER vTCRESOURCE GOVERNOR–pEODSGER vR7SERVER ROLE–pEODWGER vS;WINDOWS GROUP–pEODAKER vW=ASYMMETRIC KEY–pEODDKER vAODATABASE ENCRYPTION KEY–pEODMKER vD5MASTER KEY–pEODPKER vM7PRIMARY KEY–pEODSKER vP;SYMMETRIC KEY–pEODSDER vCSEVENT NOTIFICATION SERVERpEODIFER vAaFUNCTION TABLE-VALUED INLINE SQLЁpEODTFER vRSFUNCTION TABLE-VALUED SQLЂpEODPCER vFSSTORED PROCEDURE ASSEMBLYІpEODRFER vPgSTORED PROCEDURE REPLICATION FILTERЇpEODX ER vVSSTORED PROCEDURE EXTENDEDЈpEODS ER vR9TABLE SYSTEMЉpEODTAER vSATRIGGER ASSEMBLYЊpEODT ER vS=TRIGGER SERVERЌpEODSNER vO/SYNONYM–pEODCOER vS;SERVER CONFIG–pEODCPER vCMCRYPTOGRAPHIC PROVIDER–pEODEPER vC1ENDPOINT–pEODSQER vE+QUEUE–pEODUQER vSCUNIQUE CONSTRAINT–pEODARER vUAAPPLICATION ROLE–pEODCRER vA7CERTIFICATE–pEODPRER vC?BROKER PRIORITY–pEODSRER vP-SERVER–pEODTRER vS/TRIGGER–pEODASER vT1ASSEMBLY–|EODFSER vA1FUNCTION№Ѓ|EODISER vF1FUNCTION№ЄpEODPSER vIAPARTITION SCHEME–pEODCTER vU1CONTRACT–pEODDTER vC/TRIGGER–|EODFTER vD1FUNCTION№ЅpEODMTER vF9MESSAGE TYPE–pEODRTER vM+ROUTE–pEODSTER vR5STATISTICS–pEODAUER vSGASYMMETRIC KEY USER–pEODCUER vAACERTIFICATE USER–pEODGUER vC5GROUP USER–pEODSUER vG1SQL USER–pEODWUER vS9WINDOWS USER–pEODSVER vW/SERVICE–pEODIXER vS+INDEX–pEODLXER vI+LOGIN–pEODSXER vLKXML SCHEMA COLLECTION–pEODTYER vS)TYPE–pEODXRi3XREL TREE—pEODAQvX7ADHOC QUERY˜pEODITvA=INTERNAL TABLE™pEODPQvIIPREPARED ADHOC QUERYšpEODAPvP9Undocumented›pEODUSER vP)USERœpEODSDER vCSEVENT NOTIFICATION SERVERpEODDNER vBWEVENT NOTIFICATION DATABASEžpEODONER vFSEVENT NOTIFICATION OBJECTŸpEODFNER vEGFUNCTION SCALAR SQL pEODIFER vAaFUNCTION TABLE-VALUED INLINE SQLЁpEODTFER vRSFUNCTION TABLE-VALUED SQLЂpEODFSER vASFUNCTION SCALAR ASSEMBLY ЃpEODISER vFWFUNCTION SCALAR INLINE SQL ЄpEODFTER vD_FUNCTION TABLE-VALUED ASSEMBLY ЅpEODPCER vFSSTORED PROCEDURE ASSEMBLYІpEODRFER vPgSTORED PROCEDURE REPLICATION FILTERЇpEODX ER vVSSTORED PROCEDURE EXTENDEDЈpEODS ER vR9TABLE SYSTEMЉpEODTAER vSATRIGGER ASSEMBLYЊЪ@ Ч ‚ ? т — N И р y Ђ* з q ˜ W   ЫAAђЗxП;иq"ыВux<Ж[ЯˆБ/x?шУ€1м™`ЂЛѕ4z КВP Љl pF џџџџKSYSREMOTELOGINS TYPESJPF vџKpF V/trustedLpF_Uџџџџ]SYSREMOTELOGINS TYPES (UPDATE)MPF_UvџNpF_UV/trustedOpG KGENERAL MISC. STRINGSPpG vSSQL Server Internal TableQpI 7INDEX TYPESRpI v9nonclusteredSpI vKignore duplicate keysTpI v-uniqueUpI vKignore duplicate rowsVpI v3clusteredWpI v9hypotheticalXpI @v 5statisticsYpI 7primary key\pI 5unique key]pI €v@7auto createZpI vEstats no recompute[pJ ACOMPATIBLE TYPES^pJ -v-binary_pJ %v3varbinary`pJ 2v'bitapJ /v)charbpJ 'v/varcharcpJ =v1datetimedpJ ov1datetimnepJ :v;smalldatetimefpJ >v+floatgpJ mv-floatnhpJ ;v)realipJ 8v'intjpJ &v)intnkpJ 4v1smallintlpJ 0v/tinyintmpJ <v+moneynpJ nv-moneynopJ zv5smallmoneyppK ;SYSKEYS TYPESqpK v/primaryrpK v/foreignspK v-commontpL 5LOCK TYPESupL v)NULLvpL v+Sch-SwpL v+Sch-MxpL v#SypL v#UzpL v#X{pL v%IS|pL v%IU}юџа4_CHARACTER_SET_SCHEMA0.Ъ(иlччјџэџа4[CHARACTER_SET_NAMEа0.Ъ(иlччїџьџа4YCOLLATION_CATALOGfi0.Ъ(иlччіџыџа4WCOLLATION_SCHEMAu0.Ъ(иlччѕџъџа4SCOLLATION_NAME0.Ъ(иlччєџщџа4SDOMAIN_CATALOGe0.Ъ(иlччѓџшџа4QDOMAIN_SCHEMACA0.Ъ(иlччђџчџа4MDOMAIN_NAMEE_0.Ъ(иlчч@ёџцџа4MDESCRIPTIONHA0.gњЎkчча4[CONSTRAINT_CATALOG0.gњЎkчча4YCONSTRAINT_SCHEMA0.gњЎkча4UCONSTRAINT_NAME40.gњЎkчча4SDOMAIN_CATALOG0.gњЎkчча4QDOMAIN_SCHEMA0.gњЎkча4MDOMAIN_NAME0.gњЎkЇЇа4QIS_DEFERRABLE0.gњЎkЇЇа4[INITIALLY_DEFERRED0. Ѓlчча4[CONSTRAINT_CATALOG0. Ѓlчча4YCONSTRAINT_SCHEMAAB0. Ѓlчча4UCONSTRAINT_NAMELE0. Ѓlчча4QTABLE_CATALOG_N0. Ѓlчча4OTABLE_SCHEMAT0. Ѓlчча4KTABLE_NAMEX0. Ѓlчча4MCOLUMN_NAMEEX0. Ѓl88  WORDINAL_POSITIONYEE0.MЬmhh CUNIQUE„0.MЬmhh   ICLUSTEREDi0.MЬm44  љџ ?TYPE0.MЬm88  јџ MFILL_FACTORЖЗ0.MЬm88 їџ OINITIAL_SIZE0.MЬm88  іџ ANULLSЈЗ0.MЬmhh SSORT_BOOKMARKSы0.MЬmhh MAUTO_UPDATE"""0.MЬm88 ѕџ SNULL_COLLATION0.MЬm88 єџ WORDINAL_POSITION0.MЬmччљџѓџа4MCOLUMN_NAME0.MЬm$$ђџ MCOLUMN_GUID0.MЬm88 +ёџ QCOLUMN_PROPID0.MЬm44/№џ ICOLLATION0.MЬm88 1яџ MCARDINALITY§§0.MЬm88 5юџ APAGES0.MЬmчч@јџэџа4WFILTER_CONDITION0.У00.бэ(чч а4=@p2me0.бэ(чч а4=@p3ro0.бэ(88  E@handleE@0.бэ(ча4I@procnameui0.бэ(88  K@scrollopte0.бэ(88  C@ccopte0.бэ(88  A@rows0.бэ(чч б4=@p1а0.бэ(чч а4=@p20.бэ(88  E@handle0.бэ(88  K@scrollopt0.бэ(88  C@ccopt70.бэ(88  A@rowsme0.бэ(88  =@p7me0.бэ(88  G@ODBCVer@0.бэ(88  E@handle0.бэ(88  K@scrollopt0.бэ(88  C@ccopt0.бэ(88  A@rowsа0.бэ(чч а4=@p10.бэ(чч а4=@p20.бэ(чч а4=@p3.0.бэ(88  E@handleѓ‡50.бэ(88  K@scrollopt0.бэ(88  C@ccoptd0.бэ(88  A@rowsle0.бэ(чч а4=@p10.бэ(чч а4=@p2а0.бэ(чч а4=@p30.бэ(88  E@handle0.бэ(88  K@scrollopt0.бэ(88  C@ccopt0.бэ(88  A@rows 0.бэ(чч а4=@p180.бэ(чч а4=@p2э(0.бэ(чч а4=@p3э(0.бэ(88  E@handle0.бэ(88  K@scrollopt0.бэ(88  C@ccopt0.бэ(88  A@rows 0.бэ(чч а4=@p1 0.бэ(чч а4=@p2 0.бэ(чч а4=@p30.бэ(88   E@handle0.бэ(88   K@scrollopt0.бэ(88   C@ccopt0.бэ(88   A@rows0.бэ(чч  а4=@p10.бэ(чч  а4=@p20.бэ(чч  а4=@p30.бэ(88   E@handle0.бэ(88   K@scrolloptа0.бэ(88   C@ccopt0.бэ(88   A@rows0.бэ(чч  а4=@p10.бэ(чч  а4=@p20.бэ(чч  а4=@p30.бэ(88   E@handle0.бэ(88   K@scrollopt0.бэ(88   C@ccoptа0.бэ(88   A@rows0.бэ(чч  а4=@p10.бэ(чч  а4=@p20.бэ(чч  а4=@p3 0.бэ(88   E@handle0.бэ(ч а4I@procname0.бэ(88   K@scrollopt0.бэ(88   C@ccopt0.бэ(88   A@rows0.бэ(чч  а4=@p10.бэ(чч  а4=@p2 0.бэ(88   E@handle0.бэ(ч а4I@procname0.бэ(88   K@scrollopt0.бэ(88   CAccopt0.бэ(88   A@rows0.бэ(чч  а4=@p10.бэ(чч  а4=@p2 @handlep60.бэ(88  K@scrollopt(0.бэ(88  C@ccopt0.бэ(88  A@rows0.бэ(чч а4=@p1ro0.бэ)чч а4=@p2 0.бэ(чч а4=@p30.бэ(88  E@handle0.бэ(88  K@scrollopt0.бэ(88  C@ccopt0.бэ(88  A@rowsэ(0.бэ(чч а4=@p10.бэ(чч а4=@p2oc0.бэ(чч а4=@p3 0.бэ(чч а4=@p40.бэ(чч   а4=@p50.бэ(чч   а4=@p60.бэ(88   G@ODBCVerа0.бэ(88  E@handle0.бэ(88  K@scrollopt40.бэ(88  C@ccopt0.бэ(88  A@rowsVe0.бэ(чч а4=@p1ha0.бэ(чч а4=@p2 0.бэ(чч а4=@p3Ј0.бэ(88 ЈРф,P t ˜ 0TPh€ЄШь 4 X Ди№ $@dˆЌа є  t”АаШрќ DhŒ А д0PlŒ|”Им$H l ь(@0HlДи ќ D Имєш$Hl Д и ќXp”Ќ`Н.П5.јОphнp0.бэ(чч а4=@p30.бэ(чч а4=@p40.бэ(чч а4=@p30.бэ(чч а4=@p40.бэ(чч а4=@p40.бэ(чч   а4=@p40.бэ(чч   а4=@p40.бэ(чч   а4=@p50.бэ(чч   а4=@p50.бэ(чч   а4=@p50.бэ(чч   а4=@p50.бэ(чч   а4=@p60.бэ(чч   а4=@p60.бэ(чч   а4=@p60.бэ(88   G@ODBCVer0.бэ(88   G@ODBCVer0.бэ(88   =@p70.бэ(88   G@ODBCVer0.4A*ча4I@loginameљІ0.4A*ЇЇа4K@logintype0.me +ча4I@loginame0.І‰ў+ча4I@loginameЅъ0.п­ђ,ча4I@loginame0.вц-ча4I@loginameа40.вц-ча4C@defdb0.Qік.ча4I@loginame0.Qік.ча4I@language0.ŠЯ/ча4I@loginame0.ŠЯ/ча4I@rolenameЈъ0.У>У0ча4I@loginameЈъ0.У>У0ча4I@rolenameжжж0.ќbЗ1ча4E@ntname0.5‡Ћ244 ?@uids0.nЋŸ3ча4I@loginame­ъ0.nЋŸ3ча4M@name_in_db џ0.ЇЯ“4ча4I@loginameшшш0.ЇЯ“4ча4M@name_in_db0.ЇЯ“4ча4G@grpname0.рѓ‡5ча4M@name_in_db0.|6ча4M@name_in_db0.Rча4I@rolenameu0.с9>ча4E@newpwd0.^?ча4I@rolename0.^?ча4I@passwordЏъ0.^?ЇЇ а4G@encrypt0.DhF?88  I@newvalueАъ0.бэ(чч а4=@p4;Ј0.бэ(88   G@ODBCVer0.бэ(чч  а4=@p40.бэ(чч  а4=@p50.бэ(чч  а4=@p60.бэ(чч  а4=@p30.бэ(чч  а4=@p4БЂ0.бэ(чч  а4=@p540.бэ(чч  а4=@p3Въ0.бэ(чч  а4=@p4Ф0.C[е*чча4M@table_name0.C[е*чча4O@table_owner0.C[е*ча4W@table_qualifier0.C[е*ЇЇdа4M@table_type0.|Щ+00 Gss_dtypea0.|Щ+88 џџ Cfixlena0.|Щ+чџџўџа4Itype_nameW@0.|Щ+44  Uoledb_data_typeM@0.|Щ+hh  Kbest_match0.|Щ+hh  Mis_nullableix0.|Щ+hh  Sbase_sensitive0.|Щ+hh  Wfixed_prec_scale0.|Щ+hh   Eis_longtc0.|Щ+00  Yauto_unique_valueЩ+0.|Щ+88 §џ Sdata_precision+0.|Щ+44  ќџ Qnumeric_scale.0.|Щ+88  ћџ Mcolunn_size00.|Щ+чч@ўџњџа4Sliteral_prefix0.|Щ+чч@§џљџа4Sliteral_suffix0.|Щ+88  Ksearchablee0.|Щ+00јџ [unsigned_attribute+0.|Щ+чќџїџа4Ulocal_type_nameч0.`š/ча4Q@catalog^name80.`š/88  C@dummy0.`š/ча4O@server_nameb0.`š/ча4Q@catalog_namee_0.вX‚1ча4M@table_namelo0.вX‚1ча4Q@table_schemay0.вX‚1ча4O@column_namee0.вX‚1ча4G@grantor0.вX‚1ча4G@granteen0.вX‚1ча4Q@table_schema80.вX‚1ча4O@column_name0.вX‚1ча4G@grantor0.вX‚1ча4G@grantee0.вX‚1ча4Q@table_server0.вX‚1ча4S@table_catalog0.вX‚1ча4M@table_name0.вX‚1ча4Q@table_schemaаG@grantee C@ccopрр˜LИl д ˆ < є Ј \  Р t $ д Œ < №   T  Ь0ЄdшT˜ЬDЌxє€4шœ P ИPРt(м`ИdРlМtШx,дˆDќЌTДDјАp(р є4` р tДєl` р 4tД,` р `О.`9ж ИПzP (ER0.І‰ў+ча4I@loginame;Ј0.п­ђ,ча4I@loginame Л0.вц-ча4I@loginame???0.вц-ча4C@defdb0.Qік.ча4I@loginameЁЂ0.Qік.ча4I@languageа40.`š/ча4Q@catalog_nameBќ0.`š/88  C@dummy0.`š/ча4O@server_name0.`š/ча4Q@catalog_name0.ŠЯ/ча4I@loginamed0.ŠЯ/ча4I@rolenameOOO0.У>У0ча4I@loginameCќ0.У>У0ча4I@rolenameCќ0.вX‚1ча4M@table_name’’’0.вX‚1ча4Q@table_schema0.вX‚1ча4Q@table_server;Ј0.вX‚1ча4Q@table_schemaEќ0.вX‚1чб4O@column_name0.вX‚1ча4S@table_catalog0.вX‚1ча4O@column_name0.вX‚1ча4G@grantorч0.вX‚1ча4M@table_nameБЂ0.вX‚1ча4G@grantorВ0.вX‚1ча4G@grantee0.вX‚1ча4Q@table_schema 0.вX‚1ча4G@grantee0.ќbЗ1ча4E@ntnameHќ0.5‡Ћ244 ?@uid0.nЋŸ3ча4I@loginameIќ0.nЋŸ3ча4M@name_in_db0.ЇЯ“4ча4I@loginameFќ0.ЇЯ“4ча4M@name_in_db0.ЇЯ“4ча4G@grpname0.рѓ‡5ча4M@name_in_dbn0.вX‚1ча4O@column_name0.вX‚1ча4G@grantore0.вX‚1ча4G@granteei0.}Х^4ча4MAtable_namena0.}Х^4ча4Q@table_schema0.}Х^4ча4O@column_name0.}Х^4ча4Q@table_schema0.}Х^4ча4O@column_name0.}Х^4ча4Q@table_server0.}Х^4ча4S@table_catalog0.}Х^4ча4M@table_nameа0.}Х^4ча4Q@table_schema0.}Х^4ча4O@column_name@0.я G6ча4W@constraint_nameo0.я G6ча4[@constraint_schema0.Œп5чч(а4E@ActionX‚10.Œп588  G@Startup0.Х6чча4E@Actionr0.Х6чча4G@ObjType0.Х6ча4G@ObjNamea0.Х6ча4Q@DatabaseNamehe0.Х6ча4I@GUIDNamemnname‡0.}Х^4ча4Q@table_schema0.}Х^4ча4O@column_name0.}Х^4ча4Q@table_server.0.}Х^4ча4S@table_catalog0.}Х^4ча4M@table_name.0.}Х^4ча4Q@table_schema.0.}Х^4ча4O@column_name0.я G6ча4W@constraint_name30.я G6ча4[@constraint_schema0.я G6ча4[@constraint_schema0.aV/8ча4M@table_name0.aV/8ча4Q@table_schema0.aV/8ча4W@constraint_name0.aV/8ча4[@constraint_schema0.aV/8ча4Q@table_schema0.aV/8ча4W@constraint_name0.aV/8ча4[@constraint_schemal0.гž:ча4S@pk_table_namel0.гž:ча4WApk_table_schema_0.гž:ча4S@fk_table_namel0.гž:ча4W@fk_table_schemam0.гž:ча4Y@fk_table_cataloga0.гž:ча4S@fk_table_namel0.гž:ча4W@fk_table_schema90.гž:ча4S@pk_table_name0.гž:ча4W@pk_table_schema0.гž:ча4Y@pk_table_catalogpk0.гž:ча4W@pk_table_schemat0.гž:ча4Y@pk_table_catalogab0.гž:ча4W@fk_table_schemat0.гž:ча4Y@fk_table_catalogle0.гž:ча4O@server_namet0.гž:ча4W@pk_catalog_namek0.гž:ча4W@fk_catalog_namet0.гž:ча4S@pk_table_namek0.гž:ча4W@pk_table_schemat0.гž:ча4S@fk_table_namek0.гž:ча4W@fk_table_schema@0. У ;ЇЇџа4M@table_name0. У ;ЇЇџа4M@index_namens0.Œп5чч(а4E@Action ИРTќlаˆ@˜ јАP Д ЌXl Д   ` М Ш d  и€ 8 ш HєЌdЬ|(и„0мŒ@єЈ\Иt дˆDјЌ`,С JЄРzЈЬ сe"0 И'-7(server internal)0вц-Mcreate procedure sp_defaultdb @loginame sysname, -- login name @defdb sysname -- default db as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) AND not @loginame = suser_sname() begin dbcc auditevent (106, 1, 0, @loginame, NULL, NULL, NULL) raiserror(15132,-1,-1) return (1) end ELSE begin dbcc auditevent (106, 1, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_defaultdb') return (1) end -- VALIDATE DATABASE NAME -- if db_id(@defdb) IS NULL begin raiserror(15010,-1,-1,@defdb) return (1) end -- ADD ROW FOR NT LOGIN IF NEEDED -- if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15007,-1,-1,@loginame) return (1) end end -- CHANGE DEFAULT DATABASE -- update master.dbo.sysxlogins set dbid = db_id(@defdb), xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMR FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE IF (@@error <> 0) return (1) raiserror(15486,-1,-1) return (0) -- sp_defaultdb 0Bм.7(server internal)0Qік.Ncreate procedure sp_defaultlanguage @loginame sysname, -- login name @language sysname = NULL -- default language as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on feclare @ret int -- return value of sp call -- CHECK PERMISSIONS -- IF (not is_srvrolemember('securityadmin') = 1) AND not @loginame = suser_sname() begin dbcc auditevent (106, 2, 0, @loginame, NULL, NULL, NULL) raiserror(15247,-1,-1) return (1) end ELSE begin dbcc auditevent (106, 2, 1, @loginame, NULL, NULL, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_defaultlbnguage') return (1) end -- VALIDATE LANGUAGE -- IF (@language is not Null) begin Execute @ret = sp_validlang @language IF (@ret <> 0) return (1) end else begin select @language = name from master.dbo.syslanguages where langid = @@default_langid --default language if @language is null select @language = N'us_english' end -- ADD ROW FOR NT LOGIN IF NEEDED -- if not exists(select * from master.dbo.syslogins where loginname = @loginame) begin " execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15007,-1,-1,@loginame) return (1) end end -- CHANGE DEFAULT LANGUAGE -- update master.dbo.sysxlogins set language = @language, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') -- FINALIZATION: RETURN SUCCESS/FAILURE if @@error <> 0 return (1) raiserror(15487,-1,-1,@loginame,@language) return (0) -- sp_defaultlanguage er0юЧБ-ы -- 8.0 version of sp_add_server_sortinfo -- create procedure sp_add_server_sortinfo75 as -- spt_server_info has unigue clustered index on attribute_id delete spt_server_info where attribute_id in (16, 18) declare @sortid int, @csid int, @sortname varchar(255), @attribute_value varchar(255) declare @case_sensitive bit declare @ncase_sensitive bit select @case^sensitive = case when 'a' <> 'A' then 1 else 0 end select @ncase_sensitive = case when N'a' <> N'A' then 1 else 0 end select @sortid = convert(int, ServerProperty('sqlsortorder')) select @csid = convert(int, ServerProperty('sqlcharset')) select @sortname = name from master.dbo.syscharsets where id = @sortid if @sortid = 0 -- Non-SQL Collations BEGIN select @attribute_value = 'charset=' + name + ' collation=' + isnull(convert(sysname, ServerProperty('collation')), ' ') fron syscharsets where id = @csid END else BEGIN select @attribute_value = 'charset='+ name +' sort_order=' + @sortname + ' charset_num=' + rtrim(convert(char(4),@csid))+ ' sort_order_num=' + rtrim(convert(char(4),@sortid)) from syscharsets where id = @csid END insert into spt_server_info values (18,'COLLATION_SEQ', isnull(@attribute_value, ' ')) if @case_sensitive = 1 /* If case sensitive server */ begin insert into spt_server_info values (16,'IDENTIFIER_CASE','SFNSITIVE') end else begin insert into spt_server_info values (16,'IDENTIFIER_CASE','MIXED') end update spt_datatype_info set CASE_SENSITIVE = @case_sensitive where DATA_TYPE in (-1, 1, 12) /* CHAR types */ update spt_datatype_info set CASE_SENSITIVE = @ncase_sensitive where DATA_TYPE in (-10, -9, -8) /* NCHAR types */ update spt_provider_types set case_sensitive = @case_sensitive where oledb_data_type = 129 /*DBTYPE_STR*/ update spt_provider_types set case_sensitive = @ncase_sensitive where oledb_data_type = 130 /*DBTYPE_WSTR*/ /* sp_add_server_info75 */ i<'ьЅ.ѓ create procedure sp_catalogs_rowset ( @catalog_name varchar(255) ) as select CATALOG_NAME = name, DESCRIPTION = convert(varchar(1),null) from master.dbo.sysdatabases where name = @catalog_name @<'ьЅ.љcreate procedure sp_catalogs_rowset;2 ( @dummy int /* remove when Hydra bug 17032 is fixed */ ) as select CATALOG_NAME = name, DESCRIPTION = convert(varchar(1),null) from master.dbo.sysdatabases order by 1 n (0ФН|-)xpstar.dllM0§сp.)xpstar.dllџџl9Ь<9ЬP9Ь`8Ьx;Јъ #db_listMMMMШ9Ь 9ЬXXЁЂЗ@9Ь^HOOOOј9ЬP9ЬАБЂкћћћћћdbnameЎЎЎЎX:ЬШ9Ь@x;Ј- )))))D:Ь(0€џџ t:Ь||||ˆ:Ьј9Ь x;ЈЧ ŒŒŒŒŒdbnameйййй№:ЬX:ЬHXЁЂWд!Ь\<Ьџџџ<c*л€4MMMM€;Ьˆ:Ьpx;ЈWёёёёё=ЬД ` €Ф(œ;Ь@ СџџџџЄЄЄЄ@<Ь№:Ь `}Ј_ЃЃЃЃЃW Ќ=ЬД ` €Ф(4<Ь@ СџџџџXXXXи<Ьˆ;ЬЩ `}Ј_TTTTTBњ ііііˆ<Ь€;Ь$x;Ј[‹‹‹‹‹ ;ЬЌЌЌЌЖџџџџџџџџџџџџооооа<Ь@<Ь(x;Јџ йййййш;Ь88 ь<ЬŒŒŒŒј<Ьˆ<ЬФљІз55555````Є;ЬP=Ьа<Ь8x;Јг сссссЄ<ЬU(88 ќ…ФДДДДИ=Ьј<ЬHXЁЂWЖЖЖЖЖФ‡А$?Ьl?Ь>gЈrР!!!!ууууH>ЬP=Ьpx;ЈWiiiii\‡А|†АД ` €Ф(d>Ь@ Рџџџџ <<<<?ЬИ=Ь  `}Ј_ююююј>Ь>Ьkpx;ЈWБББББЌ„ФЬƒФ`>ЬД `ўўўў№>Ьш=Ь№$x;Ј[(((((t=Ь@Жџџџџџџџџџџџџ}}}}(?ЬЈ>ЬёАБЂХХХХP?ЬH>Ь!$x;Ј[д=Ь№>ЬЖџџџџџџџџџџџџVVVV €А?Ь"Hx;Ј$ ллллл\юХŒАFџџџџzxєŽŽŽŽ TYPEuuuu$x;Ј[EEEEE„>Ь@sЖџџџџџџ P\xш˜pL`Р-œœСzИцE30{/7(server internal)0ŠЯ/ create procedure sp_addsrvrolemember @loginame sysname, -- login name @rolename sysname = NULL -- server role name as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @rolebit smallint, @ismem int, @sid varbinary(85) -- DISALLOW USER TRANSACTION -- set implicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addsrvrolemember') return (1) end -- VALIDATE SERVER ROLE NAME, CHECKING PERMISSIONS -- select @ismem = is_srvrolemember(@rolename) if @ismem is null begin dbcc auditevent (108, 1, 0, @loginame, NULL, @rolename, NULL) raiserror(15402, -1, -1, @rolename) return (1) end if @ismem = 0 begin dbcc buditevent (108, 1, 0, @loginame, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end -- AUDIT A SUCCESSFUL SECURITY CHECK -- dbcc auditevent (108, 1, 1, @loginame, NULL, @rolename, NULL) -- OBTAIN THE BIT FOR THIS ROLE -- select @rolebit = CASE @rolename WHEN 'sysadmin' THEN 16 WHEN 'securityadmin' THEN 32 WHEN 'serveradmin' THEN 64 WHEN 'setupadmin' THEN 128 WHEN 'processadmin' THEN 256 WHEN 'diskadmin' THEN 512 WHEN 'dbcreator' THEN 1024 WHEN 'bulkadmin' THEN 4096 ELSE NULL END select @sid = sid from master.dbo.syslogins where loginname = @loginame -- ADD ROW FOR NT LOGIN IF NEEDED -- if @sid is null begin execute @ret = sp_MSaddlogin_implicit_ntlogin @loginame if (@ret <> 0) begin raiserror(15007,-1,-1,@loginame) return (1) end end -- CANNOT CHANGE SA RNLES -- else if @sid = 0x1 -- 'sa' begin raiserror(15405, -1 ,-1, @loginame) return (1) end -- UPDATE ROLE MEMBERSHIP -- update master.dbo.sysxlogins set xstatus = xstatus | @rolebit, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') raiserror(15488,-1,-1,@loginame,@rolename) -- FINALIZATION: RETURN SUCCESS/FAILURE retvrn (@@error) -- sp_addsrvrolemember e0Д$07(server internal)0У>У0 create procedure sp_dropsrvrolemember @loginame sysname, -- login name @rolename sysname = NULL -- server role name as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @rolebit smallint, @ismem int, @sid varbinary(85) -- DISALLOW USER TRANSACTION -- set inplicit_transactions off IF (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_dropsrvrolemember') return (1) end -- VALIDATE SERVER ROLE NAME, CHECKING PERMISSIONS -- select @ismem = is_srvrolemember(@rolename) if @ismem is null begin dbcc auditevent (108, 2, 0, @loginame, NULL, @rolename, NULL) raiserror(15402, -1, -1, @rolename) return (1) end if @ismem = 0 begin dbcc auditevent (108, 2, 0, @loginame, NULL, @rolename, NULL) raiserror*15247,-1,-1) return (1) end -- AUDIT THE SUCCESSFUL SECURITY CHECK -- dbcc auditevent (108, 2, 1, @loginame, NULL, @rolename, NULL) -- OBTAIN THE BIT FOR THIS ROLE -- select @rolebit = CASE @rolename WHEN 'sysadmin' THEN 16 WHEN 'securityadmin' THEN 32 WHEN 'serveradmin' THEN 64 WHEN 'setupadmin' THEN 128 WHEN 'processadmin' THEN 256 WHEN 'diskadmin' THEN 512 WHFN 'dbcreator' THEN 1024 WHEN 'bulkadmin' THEN 4096 ELSE NULL END select @sid = sid from master.dbo.syslogins where loginname = @loginame -- ERROR IF USER DOESNT EXIST -- if @sid is null begin raiserror(15007,-1,-1,@loginame) return (1) end -- CANNOT CHANGE SA ROLES -- else if @sid = 0x1 -- 'sa' begin raiserror(15405, -1 ,-1, @loginame) return (1) end -- UPDATE ROLE MEMBERSHIP -- update master.dbo.sysxloginr set xstatus = xstatus & ~@rolebit, xdate2 = getdate() where name = @loginame and srvid IS NULL -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- exec('use master grant all to null') raiserror(15489,-1,-1,@loginame,@rolename) -- FINALIZATION: RETURN SUCCESS/FAILURE return (@@error) -- sp_dropsrvrolemember 0`š/ /* Procedure for 8.0 server */ create procedure sp_catalogs_rowset ( @catalog_name sysname ) as select CAVALOG_NAME = name, DESCRIPTION = convert(nvarchar(1),null) from master.dbo.sysdatabases where name = @catalog_name 0`š/њcreate procedure sp_catalogs_rowset;2 ( @dummy int /* remove when Hydra bug 17032 is fixed */ ) as select CATALOG_NAME = name, DESCRIPTION = convert(nvarchar(1),null) from master.dbo.sysdatabases order by 1 x0`š/їcreate procedure sp_catalogs_rowset;5 ( @server_name sysname, @catalog_name sysname = NULL ) as select BATALOG_NAME, DESCRIPTION from master.dbo.SYSREMOTE_CATALOGS < @server_name, @catalog_name > order by 1 06e/)xpstar.dll–А~~и–А@–Аcx;ЈЧ  job_countuuuu( —А –Аd(x;Јџ @@@@@џџ00<—АH—Аи–АeФљІз  ____—А —Аf$x;Ј @@@@@\–Ає–А„@ŒАШ—АH—АgXЁЂn–––––d—Аˆ УУУУ˜А—Аh(x;Јџ ќќќќќ[Ÿ00,˜АЉЉЉЉ8˜АШ—АiФљІзџџџџџЊЊЊЊџ €˜А˜Аj(x;Ј3 †††††„˜Агггг@™А8˜Аk XЁЂЏ ‘‘‘‘‘\™АфšАг e  €Ф($šАСџџџџŒАФФФԘ™А€˜Аl8XЁЂА _____Д™АWœS( р™А@™Аm(XЁЂБ Ъ88 ќ™АRRRRšА˜™АnФљІзЈЈЈЈЈ§§§§ШšАр™Аo `}Ј_˜˜˜˜˜''''0шШŸА€šАx™А…$x;Ј[<<<<<™А nЖџџџџџџџџџџџџiiiiч{ИšА8šА†АБЂкaaaaaЬЬЬЬшšАр™АŸ$x;Ј[oooool™АЭЭЭЭ›АšАpXЁЂЦ ›А šАˆ GGGG$ H›АШšАq$XЁЂЦ jjjjjT˜Аœ‘Ац$†????›А›Аr$x;Ј gggggœ˜Аф—А2222Ш›АH›АsXЁЂnЉЉЉЉЉd›Аˆ ќќќќџџœА›Аt(x;Јџ ККККК 88 ,œАяяяя8œАШ›АuФљІзRRRR œАœАvDx;Ј +++++ф›А€4~~~~иœА8œАwАБЂкЬЬЬЬЬ@job_count™™™™А œАxАБЂкpppppint%%%%HАиœАy(x;Ју YYYYYчча4dА pААzФљІз  intXXXXиАHА{Dx;Ј ћћћћћА€488 ЄžАєАЎЎЎЎžАpА|x;ЈЕ њњњњњ@job_countЏЏЏЏPžАиА} XЁЂБ33333ЄžАlпРlžАffffˆžАžА~x;ЈsБББББ@job_countффффаžАPžА(XЁЂГѓѓѓѓѓ88 ІІІІјžАˆžА€XљІЭдддддŒА`ŸАаžАHXЁЂWCCCCCDсХќрХAmЖ№ш рХјžА‚px;ЈWжжжжжŒАД ` €Ф(<рХшџџџџƒƒƒƒ` ˜x|lp`‘тТzЈ Ž00|FЅ77(server internal)07Lњ7Е-- ============================================= -- sp_MSset_current_activity -- ============================================= create procedure dbo.sp_MSset_current_activity @id int OUTPUT as set transaction isolation level read uncommitted set quoted_identifier on set nocount on set lock_timeout 5000 declare @stmt as nvarchar(4000) -- ============================================= -- make tables SPID depended -- ============================================= declare @locktab as sysname declare @proctab as sysname declare @locktb2 as sysname declare @proctb2 as sysname set @id = @@spid set @locktab = N'##lockinfo' + rtrim(convert(nvarchar(5), @id)) set @proctab = N'##procinfo' + rtrim(convert(nvarchar(5), @id)) set @locktb2 = N'tempdb..##lockinfo' + rtrim(convert(nvarchar(5), @id)) set @proctb2 = N'tempdb..##procinfo' + rtrim(convert(nvarchar(5), @id)) -- ============================================= -- delete temp tables -- ============================================= if (object_id(@locktb2) is not null) exec(N'drop table ' + @locktab) if (object_id(@proctb2) is not null) exec(N'drop table ' + @proctab) -- ============================================= -- lockinfo table -- ============================================= set @stmt = N'select [Process ID] = l.req_spid, [DBID] " = l.rsc_dbid, [Database] = db_name(l.rsc_dbid), [ObjID] = l.rsc_objid, [Object] = convert(nvarchar(386), ''''), [Table] = convert(sysname, ''''), [ObjOwner] = convert(sysname, ''''), [IdxID] = l.rsc_indid, [Index] = convert(sysname, ''''), [Lock Type] = (select substring (v.name, 1, 4) from master.dbo.spt_values v where l.rsc_type = v.number and v.type = ''LR''), " [Mode] = (select substring (u.name, 1, 8) from master.dbo.spt_values u where l.req_mode + 1 = u.number and u.type = ''L''), [Status] = (select substring (x.name, 1, 5) from master.dbo.spt_values x where l.req_status = x.number and x.type = ''LS''), [Owner] = (select substring (o.name, 1, 8) from master.dbo.spt_values o where l.req_ownertype = o.number and o.type = ''LO''), [Resource] = substring (rsc_text, 1, 16) into ' + @locktab + ' from master.dbo.syslockinfo l with (NOLOCK) order by l.req_spid' exec (@stmt) -- ============================================= -- processinfo table -- ============================================= set @stmt = N'select [Process ID] = p.spid, [User] = case when p.spid > 6 then convert(sysname, ISNULL(suser_sname(p.sid), rtrim(p.nt_domain) + ''\'' + rtrim(p.nt_username))) else ''system'' end, ZDatabase] = case when p.dbid = 0 then ''no database context'' else db_name(p.dbid) end, [Status] = p.status, [Open Transactions] = p.open_tran, [Command] = p.cmd, [Application] = p.program_name, [Wait Time] = p.waittime, [Wait Type] = case when p.waittype = 0 then ''not waiting'' " else p.lastwaittype end, [Wait Resource] = case when p.waittype = 0 then '''' else p.waitresource end, [CPU] = p.cpu, [Physical IO] = p.physical_io, [Memory Usage] = p.memusage, [Login Time] = p.login_time, [Last Batch] = p.last_batch, [Host] = p.hostname, [Net Library] = p.net_library, [Net Address] = p.net_address, [Blocked Byo.s07Lњ7Х ] = p.blocked, [Blocking] = 0, [Execution Context ID] = p.ecid into ' + @proctab + ' from master.dbo.sysprocesses p with (NOLOCK) order by p.spid' exec (@stmt) -- ============================================= -- create temporary indexes -- ============================================= set @stmt = N'create index ' + @locktab + '_spid on ' + @locktab + '([Process ID])' exec (@stmt* set @stmt = N'create index ' + @locktab + '_object on ' + @locktab + '([Object])' exec (@stmt) set @stmt = N'create index ' + @proctab + '_spid on ' + @proctab + '([Process ID])' exec (@stmt) set @stmt = N'create index ' + @proctab + '_blockedby on ' + @proctab + '([Blocked By])' exec (@stmt) set transaction isolation level read committed -- ============================================= -- replace placeholders get object names -- ============================================= declare @nckdb sysname declare @lckobjid integer declare @lckobj sysname declare @lckindid smallint declare @lckind sysname set @stmt = 'declare c1 cursor for select distinct [Database], [ObjID], [IdxID] from ' + @locktab + ' where [DBID] > 0 FOR READ ONLY' exec (@stmt) open c1 fetch c1 into @lckdb, @lckobjid, @lckindid while @@fetch_status >= 0 begin if (@lckobjid > 0) begin select @stmt ='update ' + @locktab + ' set [Table] = name, [ObjOwner] = user_name(uid) from ' + quotename(@lckdb,"'[') + '.[dbo].[sysobjects] where id = ' + convert(nvarchar(10), @lckobjid) + ' and [Database] = ''' + @lckdb + ''' and [ObjID] = ' + convert(nvarchar(10), @lckobjid) exec (@stmt) select @stmt ='update ' + @locktab + ' set [Index] = name from ' + quotename(@lckdb, '[') + '.[dbo].[sysindexes] where id = ' + convert(nvarchar(10), @lckobjid) + ' and indid = ' + convert(nvarchar(10), @lckindid) + ' and [Database] = ''' + @lckdb + ''' and [IdxID] = ' + convert(nvarchar(10), @lckindid) exec *@stmt) end fetch c1 into @lckdb, @lckobjid, @lckindid end deallocate c1 set @stmt = 'update ' + @locktab + ' set [Object] = [Database] where [ObjID] = 0' exec (@stmt) set @stmt = 'update ' + @locktab + ' set [Object] = rtrim([Database]) + ''.'' + rtrim([ObjOwner]) + ''.'' + rtrim([Table]) where [ObjID] > 0' exec (@stmt) -- ============================================= -- blocking -- ============================================= set @stmt = 'update ' + @proctab + ' set [Blocking] ="1 where [Process ID] in (select [Blocked By] from ' + @proctab + ' where [Blocked By] > 0)' exec (@stmt) select [spid] = @id return(0) -- ============================================= -- end sp_MSset_current_activity -- ============================================= return (0) -- sp_droprole Р0oё4<Тcreate procedure sp_dropgroup @rolename sysname -- name of role to drop as declare @ret int execute @ret = sp_droprole @rolename return @ret qq0aV/8ь /* Procedure for 8.0 server */ create procedure sp_check_constbytable_rowset ( @table_name sysname, @table_schema sysname = null, @constraint_name sysname = null, @constraint_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(t_obj.uid), TABLE_NAME = t_obj.name, CONSTRAINT_CATALOG = db_name(), CONSTRAINT_SCHEMA = user_name(c_obj.uid), CONSTRAINT_NAME = c_obj.name, CHECK_CLAUSE = m.text, DESCRIPTION = bonvert(nvarchar(1), null) from sysobjects c_obj, sysobjects t_obj, syscomments m where t_obj.name = @table_name and t_obj.type in ('U ','S ') and (@table_schema is null or @table_schema = user_name(t_obj.uid)) and c_obj.parent_obj = t_obj.id and c_obj.type = 'C ' and (@constraint_name is null or c_obj.name = @constraint_name) and (@constraint_schema is null or @constraint_schema = user_name(c_obj.uid)) and m.id = c_obj.id order by 1,2,3,4,5,6 x8xМа „P˜`>A „Уzј хeп!0˜Ед37(server internal)0nЋŸ3ЫRMATION_SCHEMA') begin -- SYSUSERS NAME ALREADY EXISTS -- if @status = 4 raiserror(15024,-1,-1,@name_in_db) else raiserror(15023,-1,-1,@name_in_db) return (1) end -- OBTAIN NEW UID (RESERVE 1-4) -- if user_name(5) IS NULL select @uid = 5 else select @uid = min(uid)+1 from sysusers where uid >= 5 and uid < (16384 - 1) -- stay in users range and user_name(uid+1) is null -- uid not in use if @uid is null begin raiserror(15065,-1,-1) return (1) end -- INSERT SYSUSERS ROW -- insert into sysusers select @uid, @status | 2, @name_in_db, @sid, 0x00, getdate(), getdate(), 0, NULL -- INVALIDATE CACHED PERMISSIONS -- grant all to null -- PRINT SUCCESS -- raiserror(15341,-1,-1, @loginame) -- RETURN SUCCESS STATUS -- return @@error -- sp_grantdbaccess -0}Х^4Е /* Procedure for 8.00 server */ create procedure sp_columns_rowset ( @table_name sysname, @table_schema sysname = NULL, @column_name sysname = NULL ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), COLUMN_HASDEFAULT = convert(bit, case when m.text is null then 0 else 1 end), /* Get rid of ( if it is first char otherwise display the whole thing */ COLUMN_DEFAULT = convert(nvarchar(2000), case when substring(m.text,1,1) = '(' then substrine(m.text,2,datalength(m.text)/2-2) else substring(m.text,1,datalength(m.text)/2-2) end ), COLUMN_FLAGS = convert(int, case when d.is_long = 1 then 0x82 /*DBCOLUMNFLAGS_ISLONG|DBCOLUMNFLAGS_MAYDEFER*/ else 0 end | case when d.fixlen is not null then 0x10 /*DBCOLUMNFLAGS_ISFIXEDLENGTH*/ else 0 end | case when ColumnProperty(c.id,c.name,'AllowsNull') = 1 then 0x60 /*DBCOLUMNFLAGS_ISNULLABLE|DBCOLUMNFLAGS_MAYBENULL*/ else 0 end | case when d.type_name = 'timestamp' then 0x200 /*DBCOLUMNFLAGS_ISROWVER*/ when (c.status&128) != 128 and permissions(o.id,c.name)&2 = 2 then 0x4 /*DBCOLUMNFLAGS_WRITE*/ else 0 end), IS_NULLABLE = convert(bit,ColumnProperty(c.id,c.name,'AllowsNull')), DATA_TYPE = d.oledb_data_type, TYPE_GUID = convert(uniqueidentifier,null), CHARACTER_MAXIMUM_LENGTH= convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DBTYPE_WSTR*/ then coalesce(d.column_size,c.length/2) else null end), CHARACTER_OCTET_LENGTH = convert(int, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ or d.oledb_data_type = 128 /*DBTYPE_BYTES*/ then coalesce(d.column_size,c.length) when d.oledb_data_type = 130 /*DATYPE_WSTR*/ then coalesce(d.column_size*2,c.length) else null end), NUMERIC_PRECISION = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.xprec when (d.fixed_prec_scale =1 or d.oledb_data_type =5 or d.oledb_data_type =4) then d.data_precision else null end), NUMERIC_SCALE = convert(smallint, case when d.oledb_data_type = 131 /*DBTYPE_NUMERIC*/ then c.scale else null end), DATETIME_PRECISION = convert(int, case when d.oledb_data_type <> 135 /*DBTYPE_DBTIMESTAMP*/ then null when data_precision = 23 then 3 else 0 end), CHARACTER_SET_CATALOG = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'master' else null end), CHARACTER_SET_SCHEMA = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'dbo' else null end), CHARACTER_SET_NAME = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE]STR*/ then a_cha.name else null end), COLLATION_CATALOG = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'master' else null end), COLLATION_SCHEMA = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then N'dbo' else null end), COLLATION_NAME = convert(sysname, case when d.oledb_data_type = 129 /*DBTYPE_STR*/ then c.collation else null end), DMMAIN_CATALOG = case whenysu0}Х^4Њ t.usertype < 256 then null else db_name() end, DOMAIN_SCHEMA = case when t.usertype < 256 then null else user_name(o.uid) end, DOMAIN_NAME = case when t.usertype < 256 then null else t.name end, DESCRIPTION = convert(nvarchar(1),null), COLUMN_LCID = convert(int, CollationPropertyFromID(c.collationid, 'lcid')), COLUMN_COMPFLAGS = convert(int, CollationPropertyFromID(c.collationid, 'oledbcompstyle')), COLUMN_SORTID = case /* hack to keep the old behavior: will be removed */ when ABS(c.collationid) > 0x1000000 then convert(int, DATABASEPROPERTYEX(db_name(),'sqlsortorder')) else null end, COLUMN_TDSCOLLATION = convert (binary(5),CollationPropertyFromID(c.collationid, 'TDSCollation')), IS_COMPUTED = convert(bit, c.iscomputed) from syscolumns c left join syscomments m on c.cdefault = m.id and m.colid = 1, sysobjects o, master.dbo.spt_provider_types d, systypes t, master.dbo.syscharqets a_cha /* charset/1001, not sortorder. */ where permissions(o.id, c.name) <> 0 and o.name = @table_name and (o.type in ('U','V','S') OR (o.type in ('TF', 'IF') and c.number = 0)) and (@table_schema is null or @table_schema = user_name(o.uid)) and (@column_name is null or @column_name = c.name) and o.id = c.id and t.xtype = d.ss_dtype and c.length = case when d.fixlen > 0 then d.fixlen else c.length end and c.xusertype = t.xusertype and a_cha.id = isnull(convert(tinyint, CollationPropertyFromID(c.collationid, 'sqlcharset')), convert(tinyint, ServerProperty('sqlcharset'))) -- make sure there's one and only one row selected for each column order by 2, 3, c.colorder ZA0SЛ)4Йcreate proc sp_ActiveDirectory_Start as begin /* check permissions */ IF (not is_srvrolemember(N'sysadmin') = 1) begin raiserror(15003,-1,-1, N'sysadmin') return 1 end /* Are we running on Windows 2000 or NT4 SP5 with AD enabled? Continue only if TRUE!*/ DECLARE @retval INT EXECUTE @retval = master.dbo.xp_MSADEnabled if (@retval = 0) begin /* Is the server a Standard or Enterpriser server? Continue only if TRUE */ IF ((PLATFORM() & 0x100) <> 0x100) -- Not on Desktop or MSDE begin exec(N'master..sp_ActiveDirectory_SCP N''create_with_db'', 1') end end end 0ЂЌАXXXXX4 KєцУExpr1017 @0`žЌxЌЎ 0ЂЌŒТТТТТ Ќ————0`€ЌЌЏ@єІЌТіііііŒŒ˜Ќ­мЌ,ЌЄ<ˆ88 џ˜ЃЃЃЃ`0@фЋРЌА 0ЂЌŒяяяяяРАЗККККНННН0X˜†ЌؘЌБ@єІЌТ>>>>>ŒŒ˜|žЌžЌЄ<ˆ88 џkkkk`№€ЌؘЌВЄйЌ`88888ьчЋtшЋќшЋ„щЋ ъЋmmmm/8А€Ќ№ŸЌГЄйЌcЕЕЕЕЕLрЋсЋьсЋМтЋŒуЋ”фЋдхЋрррр@hИaŸЌДЄйЌe  ДрЋ„сЋTтЋ$уЋєуЋ4хЋtцЋYYYYLСЉ@ €Ќ8ŸЌ`}ЈАа, dШ`˜Ž~|Фzp R0 ўМ57(server internal)0Х6Еcreate proc sp_ActiveDirectory_Obj @Action nvarchar(10) = N'create', -- create, update, delete @ObjType nvarchar(15) = N'database', -- database, publication @ObjName sysname = null, -- object name @DatabaseName sysname = null, -- database name for publication object @GUIDName sysname = null -- GUID for publication update and delete as begin /* cerate : create the object under the current SCP object. */ /* update : update the object under the SCP object. */ /* delete : delete the object under the SCP object. */ SET NOCOUNT ON DECLARE @isdbowner int DECLARE @cmd nvarchar(255) DECLARE @commonname nvarchar(300) DECLARE @retcode int DECLARE @nAction nvarchar(3) DECLARE @Tmp nvarahar(10) DECLARE @dbname sysname DECLARE @retval int DECLARE @SQLADSI_COM_ERROR int DECLARE @SQLADSI_UNEXP_ERROR int DECLARE @SQLADSI_SCP_NOT_FOUND int DECLARE @SQLADSI_SVC_ACCT_ERROR int DECLARE @SQLADSI_CANNOT_START_HLP int DECLARE @SQLADSI_TIMEOUT_WAIT_HLP int DECLARE @SQLADSI_AD_NOT_INSTALLED int DECLARE @SQLADSI_PROXY_ACCT_ERROR int SELECT @SQLADSI_COM_ERROR = 536870913 SELECT @SQLADSI_UNEXP_ERROR = 536870914 SELECT @SQLADSI_SCP_NOT_FOUND = 536870915 SELECT @SQLADSI_SVC_ACCT_ERROR = 536870916 SELECT @SQLADSI_CANNOT_START_HLP = 536870917 SELECT @SQLADSI_TIMEOUT_WAIT_HLP = 536870918 SELECT @SQLADSI_AD_NOT_INSTALLED = 536870919 SELECT @SQLADSI_PROXY_ACCT_ERROR = 536870920 /* check permissions IF (not is_srvrolemember(N'sysadmin') = 1) begin raiserror(15003,-1,-1, N'sysadmin') return 1 end */ /* If publication object, we need both object name and database name */ if ((UPPER(@ObjType) in (M'PUBLICATION')) and ((@ObjName is null) or (@DatabaseName is null))) begin raiserror(14200, -1, -1, N'@ObjName or @DatabaseName') return 1 end /* check parameters */ if (@Action is null OR UPPER(@Action) not in (N'CREATE', N'UPDATE', N'DELETE')) begin raiserror(14266, -1, -1, N'@Action', N'CREATE, UPDATE, DELETE') return 1 end if (@ObjType is null OR UPPER(@ObjType) not in (N'DATABASE', N'REPOSITORY', N'PUBLICATION')) begin raiserror(14166, -1, -1, N'@ObjType', N'DATABASE, REPOSITORY, PUBLICATION') return 1 end if (@ObjName is null) begin raiserror(14200, -1, -1, N'@ObjName') return 1 end /* If publication object update or delete, we need GUID also */ if ((UPPER(@ObjType) in (N'PUBLICATION')) and UPPER(@Action) in (N'UPDATE', N'DELETE') and (@GUIDName is null)) begin raiserror(14200, -1, -1, N'@GUIDNName') return 1 end if (UPPER(@ObjType) in (N'PUBLICATION')) ! select @dbname = @DatabaseName else select @dbname = @ObjName -- Make sure the database exists -- if not exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15010,-1,-1,@dbname) return (1) end /* Check permissions. */ SELECT @cmd = 'USE ' + quotename(@dbname) + ' SELECT @isdbowner = is_member(''db_owner'')' EXEC @retcode = sp_executesql @cmd, N'@isdbowner int output', @isdbowner output IF @@error <> 0 or @retcode!<> 0 return 1 IF (is_srvrolemember('sysadmin') <> 1 and isnull(@isdbowner, 0) <> 1) BEGIN raiserror(21050, 14, -1) return 1 END /* common name length check */ if (UPPER(@ObjType) in (N'PUBLICATION')) SELECT @commonname = @ObjName + N':' + @DatabaseName else SELECT @commonname = @ObjName IF (LEN(@commonname) > 64) RAISERROR(14357, -1, -1, @commonname) select @Tmp = UPPER(@Action) if (UPPER(@Tmp) like N'CRE%') ! select @nAction = N'1' else if (UPPER(@Tmp) like N'UPD%') selbjT0Х6,ect @nAction = N'2' else if (UPPER(@Tmp) like N'DEL%') select @nAction = N'3' declare @nObjType nvarchar(3) select @Tmp = UPPER(@ObjType) if (UPPER(@Tmp) like N'DATAB%') select @nObjType = N'2' else if (UPPER(@Tmp) like N'REPOS%') select @nObjType = N'3' else if (UPPER(@Tmp) like N'PUBL%') select @nObjType = N'4' /* are we running on Windows 2000 oq NT4 SP5 with AD enabled? continue only if TRUE */ EXECUTE @retval = master.dbo.xp_MSADEnabled if (@retval = 0) begin /* prepare parameters */ declare @InstanceName sysname declare @ServerName sysname select @InstanceName = convert(sysname, serverproperty(N'InstanceName')) select @ServerName = convert(sysname, serverproperty(N'ServerName')) if (@InstanceName is NULL) select @InstanceName = N'MSSQLSERVER' /* Need to create registry vamues only if create or update. */ if (@nAction <> N'3') begin EXECUTE @retval = master.dbo.xp_MSADSIObjReg @InstanceName, @nAction, @nObjType, @ObjName, @DatabaseName, @ServerName end if (@retval = 0) begin /* call xp with the valid parameters, xp_cmdshell expects double quote begin and end */ DECLARE @args NVARCHAR(512) if ((@nObjType like N'4') and (@nAction like N'1')) begin /* PUBLICATION creation */ SELECT @args = @InstanceName + N' ' + @nAction + N' ' + @nObjType + N' ' + quotename(@ObjName, N'"') + N' ' + quotename(@DatabaseName, N'"') end else if ((@nObjType like N'4') and (@nAction not like N'1')) begin /* PUBLICATION update or delete */ SELECT @args = @InstanceName + N' ' + @nAction + N' ' + @nObjType + N' ' + quotename(@ObjName, N'"') + N' ' + quotename(@DatabaseName, N'"') + N' ' + @GUIDName end else begin /* Non PUBLICATION objects */ SELECT @args = @InstanceName + N' ' + @nAction + N' ' + @nObjType + N' ' + quotename(@ObjName, N'"') end EXECUTE @retval = master.dbo.xp_adsirequest @args if (@retval = 0) begin if (@nAction = N'3') begin EXECUTE @retval = master.dbo.xp_MSADSIObjReg @InstanceName, @nAction, @nObjType, @ObjName, @DatabaseName, @ServerName if (@retval <> 0) begin raiserror(14303, -1, -1, N'sp_ActiveDirectory_Obj') return 1 end end end else begin if @retval = @SQLADSI_COM_ERROR RAISERROR(14350, -1, -1) else if @retval = @SQLADSI_UNEXP_ERROR RAISERROR(14351, -1, -1) else if @retval = @SQLADSI_SCP_NOT_FOUND RAISERROR(14352, -1, -1) else if @retval = @SQLADSI_SVC_ACCT_ERROR RAISERROR(14353, -1, -1) else if @retval = @SQLADSI_CANNOT_START_HLP ! RAISERROR(14354, -1, -1) else if @retval = @SQLADSI_TIMEOUT_WAIT_HLP RAISERROR(14355, -1, -1) else if @retval = @SQLADSI_AD_NOT_INSTALLED RAISERROR(14356, -1, -1) else if @retval = @SQLADSI_PROXY_ACCT_ERROR RAISERROR(14358, -1, -1) /* Failed */ return 1 end end else begin raiserror(14303, -1, -1, N'sp_ActiveDirectory_Obj') return 1 end end else begin raiserror(14304, -1, -1, N'sp_ActiveDirectory_Obj') return 1 end end     PНН, `}Ј_ОООООмН----шНxНФљІыыыы Нєєєє(Н Ну$x;Ј[ЌНЖџџџџџџџџџџџџSSSS`НpНрНф(x;Јџ ZZZZZ88 ŒН˜Н(НхФљІз:::::Џ:ooood ОpНцDx;Ј ™™™™™TОDНsp€4(((№P˜`Q[ЦˆХsXL0`зu;7(server internal)0oё4<Тcreate procedure sp_dropgroup @rolename sysname -- name of role to drop as declare @ret int execute @ret = sp_droprole @rolename return @ret Ђ0™ћi<7(server internal)0в^=7(server internal)0Ј)=ѕcreate procedure sp_addapprole @rolename sysname, -- name of new app role @password sysname -- password for app role as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, -- return value of sp call @uid smallint -- CHECK FOR NULL PASSWORD if (@password is null) begin raiserror(15034,-1,-1) return (1) end -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) begin raiserror(15247,-1,-1) return (1) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_addapprole') return (1) end -- VALIDATE APPROLE NAME -- execute @ret = sp_validname @rolename if @ret <> 0 return (1) if (charindex('\', @rolename) > 0) begin raiserror(15006,-1,-1,@rolename) return (1) end if @rolename = 'sys' raiserror(15355,-1,-1) -- ERROR IF!SYSUSERS NAME ALREADY EXISTS -- if user_id(@rolename) is not null OR @rolename IN ('system_function_schema','INFORMATION_SCHEMA') begin raiserror(15363,-1,-1,@rolename) return (1) end -- OBTAIN NEW APPROLE UID (RESERVE 1-4) -- if user_name(5) IS NULL select @uid = 5 else select @uid = min(uid)+1 from sysusers where uid >= 5 and uid < (16384 - 1) -- stay in users range and user_name(uid+1) is null -- uid!not in use if @uid is null begin raiserror(15065,-1,-1) return (1) end -- INSERT THE ROW INTO SYSUSERS -- insert into sysusers values (@uid, 32, @rolename, NULL, 0x00, getdate(), getdate(), 1, convert(varbinary(256), pwdencrypt(@password))) -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 return (1) raiserror(15425,-1,-1) return (0) -- sp_addapprole 0с9>'CREATE PROCEDURE sp_approlepassword Arolename sysname, -- name of app role @newpwd sysname -- new password AS declare @roluid smallint -- CHECK FOR NULL PASSWORD if (@newpwd is null) begin raiserror(15034,-1,-1) return (1) end -- CHECK PERMISSIONS -- if (not is_member('db_securityadmin') = 1) and (not is_member('db_owner') = 1) begin dbcc auditevent (112, 1, 0, NULL, NULL, @rolename, NULL) raiserror(15247,-1,-1) return (1) end else begin dbcc auditevent (112, 1, 1, NULL, NUML, @rolename, NULL) end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002, -1, -1, 'sp_approlepassword') return (1) end -- ROLE UID (OBTAIN OWNER FOR PERMISSIONS) -- -- @pwd will be encrypted. select @roluid = uid from sysusers where name = @rolename and isapprole = 1 -- ERROR IF APP ROLE NOT FOUND -- if @roluid is null begin raiserror(15014, -1, -1, @rolename) return (1) end -- CHANGE PASSWORD -- update sysusers set password = convert(varbinary(256), pwdencrypt(@newpwd)), updatedate = getdate() where uid = @roluid raiserror(15423,-1,-1,@rolename) return (0) -- sp_approlepassword 0~ є<q /* 8.0 version */ create procedure sp_indexes_rowset ( @table_name sysname, @index_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, INDEX_CATALOG = db_name(), INDEX_SCHEMA = user_name(o.uid), INDEX_NAME = x.name, PRIMARY_KEY = convert(bit,(x.status & 0x800)/0x800), "UNIQUE" = convert(bit,(x.status & 2)/2), "CLUSTERED" = convert(bit,(x.status & 16)/16), "TYPE" = convert(smallint, 1 /*DBPROPVAL_IT_BTREE*/), FILL_FACTOR = convert(int, x.OrigFillFactor), INITIAL_SIZE = convert(int,null), NULLS = convert(int,null), SORT_BOOKMARKS = convert(bit,0), AUTO_UPDATE = convert(bit,1), NULL_COLLAUION = convert(int,4 /*DBPROPVAL_NC_LOW*/), ORDINAL_POSITION = convert(int, xk.keyno), COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), COLLATION = convert(smallint, case when indexkey_property(o.id, x.indid, xk.keyno, 'IsDescending') =1 then 2 /* DB_COLLATION_DESC */ else 1 /* DB_COLLATION_ASC */ end), CARDINALITY = case when (x.status & 2) = 2 then x.rows else null end, PAGES = convert(int, x-dpages), FILTER_CONDITION = convert(nvarchar(1),null), INTEGRATED = convert(bit,(x.status & 16)/16) from sysobjects o, sysindexes x, syscolumns c, sysindexkeys xk where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and (@index_name is null or @index_name = x.name) and x.id = o.id and o.id = c.id and o.id = xk.id and x.indid = xk.indid and c.colid = xk.colid and xk.keyno <= x.keycnt and permissions(o.id, c.name)!<> 0 and (x.status&32) = 0 -- No hypothetical indexes order by 8 desc, 4, 5, 6, 17 TA0~ є<&create procedure sp_indexes_rowset;2 ( @index_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, INDEX_CATALOG = db_name(), INDEX_SCHEMA = user_name(o.uid), INDEX_NAME = x.name, PRIMARY_KEY = convert(bit,(x.status & 0x800)/0x800), "UNIQUE" = convert(bit,(x.suatus & 2)/2), "CLUSTERED" = convert(bit,(x.status & 16)/16), "TYPE" = convert(smallint, 1 /*DBPROPVAL_IT_BTREE*/), FILL_FACTOR = convert(int, x.OrigFillFactor), INITIAL_SIZE = convert(int,null), NULLS = convert(int,null), SORT_BOOKMARKS = convert(bit,0), AUTO_UPDATE = convert(bit,1), NULL_COLLATION = convert(int,4 /*DBPROPVAL_NC_LOW*/), ORDINAL_POSITION = convert(int, xk.keyno), COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPIE = convert(int,null), COLLATION = convert(smallint, case when indexkey_property(o.id, x.indid, xk.keyno, 'IsDescending') =1 then 2 /* DB_COLLATION_DESC */ else 1 /* DB_COLLATION_ASC */ end), CARDINALITY = case when (x.status & 2) = 2 then x.rows else null end, PAGES = convert(int, x.dpages), FILTER_CONDITION = convert(nvarchar(1),null), INTEGRATED = convert(bit,(x.status & 16)/16) from sysobjects o, sysindexes x, syscolumns c, sysindexkeys xk wheqe o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and (@index_name is null or @index_name = x.name) and x.id = o.id and o.id = c.id and o.id = xk.id and x.indid = xk.indid and c.colid = xk.colid and xk.keyno <= x.keycnt and permissions(o.id, c.name) <> 0 and (x.status&32) = 0 -- No hypothetical indexes order by 8 desc, 4, 5, 6, 17 NDEX_CATALOG, INDEX_SCHEMA, INDEX_NAME, PRIMARY_KEY, "UNIQUE", "CLUSTERED", "TYPE", FILM_FACTOR, INITIAL_SIZE, NULLS, SORT_BOOKMARKS, AUTO_UPDATE, NULL_COLLATION, ORDINAL_POSITION, COLUMN_NAME, COLUMN_GUID, COLUMN_PROPID, COLLATION, CARDINALITY, PAGES, FILTER_CONDITION -- INTEGRATED from master.dbo.SYSREMOTE_INDEXES < @table_server, @table_catalog, @table_schema, @index_name, NULL, /* TYPE (index type) */ @table_name > order by 8 desc, 4, 5, 6, 17 ЗФљІз‡‡‡‡‡вв 4Ф Ф ”Ь`ь\˜`[\ˆ lЦsј ‘cм0 DR>7(server internal)N0^?кcreate procedure sp_setapprole @rolename sysname, -- name app role @password sysname, -- password for app role @encrypt varchar(10) = 'none' -- Encryption style ('none' | 'odbc') as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on -- DISALLOW USER TRANSACTION -- set implicit_transactions off if (@@trancount > 0) begin raiserror(15002,-1,-1,'sp_setapprole') return (1) end -- CHECK PARAMETER if (@rolename IS NULL) begin raiserror(15431,-1,-1) return (1) end -- VALIDATE ENCRYPTION declare @encrStyle int select @encrStyle = case lower(@encrypt) when 'none' then 0 when 'odbc' then 1 else null end if @encrStyle is null begin raiserror(15600,-1,-1,'sp_setapprole') return (1) end -- SP MUST BE CALLED AT ADHOC!LEVEL -- if (@@nestlevel > 1) begin raiserror(15422,-1,-1) return (1) end -- ACTIVATE APPROLE (THIS IS ONLY VALID FROM THIS SP!) -- setuser @rolename, @password, @encrStyle -- RETURN SUCCESS/FAILURE -- if (@@error <> 0) return (1) raiserror(15494,-1,-1,@rolename) return (0) -- sp_setapprole 0№Sм>‰ /* Procedure for 8.0 servers */ create procedure sp_primary_keys_rowset ( @table_name sysname, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id amd o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 order by 2, 3 5010№Sм>1create procedure sp_primary_keys_rowset;2 ( @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = cmnvert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt!*/ and permissions(o.id) <> 0 order by 2, 3 re 0№Sм>Qcreate procedure sp_primary_keys_rowset;3 ( @table_name sysname = null, @table_schema sysname = null ) as IF @table_name is not NULL BEGIN select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name erom sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 END ELSE BEGIN select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.ineid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 END mpl0№Sм>сcreate procedure sp_primary_keys_rowset;5 ( @table_server sysname, @table_catalog sysname = null, @table_name sysname = null, @table_schema sysname = null ) as select TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_GUID, COLUMN_PROPID, ORDINAL --PK_NAME from master.dbo.SYSREMOTE_PRIMARY]KEYS < @table_server, @table_catalog, @table_schema, @table_name > order by 1,2,3 tur(1) end -- CHECK FOR CIRCULAR MEMBERSHIPS -- if is_userinrole(@rolename, @membername) = 1 begin raiserror(15413, -1, -1) return (1) end -- SET ROLE BIT FOR THIS USER select @ruidbyte = ((@roluid - 16384) / 8) + 1 , @ruidbit = power(2, @roluid & 7) update sysusers set roles = convert(varbinary(2048), substring(convert(binary(2048), roles), 1, @ruidbyte-1) + convert(binary(1), (@ruidbit) | substring(convert(binary(2048), roles), @ruidbyte, 1)) + substring(convert(binary(2048), roles), @ruidbyte+1, 2048-@ruidbyte) ), updatedate = getdate() where uid = @memuid -- END ROLE BIT MANIPULATION -- INVALIDATE CACHED PERMISSIONS (MEMBERSHIP CHANGES PERMISSIONS) -- select @ret = @@error -- save success state grant all to null -- FINALIZATION: PRINT/RETURN SUCCESS -- if @@error <> 0 mr @ret <> 0 return (1) raiserror(15488,-1,-1,@membername,@rolename) return (0) -- sp_addrolemember 0№Sм>‰ /* Procedure for 8.0 servers */ create procedure sp_primary_keys_rowset ( @table_name sysname, @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), OREINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and o.name = @table_name and (@table_schema is null or @table_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 order by 2, 3 0№Sм>1create procedure sp_primary_keys_rowset;2 ( @table_schema sysname = null ) as select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, COLUMN_NAME = c.name, COLUMN_GUID = convert(uniqueidentifier,null), COLUMN_PROPID = convert(int,null), ORDINAL = convert(int,c1.colid), PK_NAME = i.name from sysindexes i, syscolumns c, sysobjects o, syscolumns c1 where o.type in ('U') and (@table_schema is null or Atable_schema = user_name(o.uid)) and o.id = c.id and o.id = i.id and (i.status & 0x800) = 0x800 and c.name = index_col (user_name(o.uid)+'.'+o.name, i.indid, c1.colid) and c1.id = c.id and c1.colid <= i.keycnt /* create rows from 1 to keycnt */ and permissions(o.id) <> 0 order by 2, 3 О@x;Ј- ЎЎЎЎЎ(044ЌОћћћћИО0ОBx;ЈЧ щщщщщuidММММЬ рХОC(x;Јџ 5555588 t м ˜ˆ4 t`lmЌЧtш/Ё˜T€0a D˜create proc sp_user_counter6 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 6', @newvalue) 0šAџD˜create proc sp_user_counter7 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 7', @newvalue) 0гeѓE˜create proc sp_user_counter8 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 8', @newvalue) 07жCЕCREATE PROCEDURE sp_change_users_login @Action varchar(10) -- REPORT / UPDATE_ONE / AUTO_FIX ,@UserNamePattern sysname = Null ,@LoginName sysname = Null ,@Password sysname = Null AS -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @exec_stmt nvarchar(430) declare @ret int, @FixMode char(5), @cfixesupdate inu, -- count of fixes by update @cfixesaddlogin int, -- count of fixes by sp_addlogin @dbname sysname, @loginsid varbinary(85), @110name sysname -- SET INITIAL VALUES -- select @dbname = db_name(), @cfixesupdate = 0, @cfixesaddlogin = 0 -- ERROR IF IN USER TRANSACTION -- if @@trancount > 0 begin raiserror(15289,-1,-1) return (1) end -- INVALIDATE USE OF SPECIAL LOGIN/USER NAMES -- if suser_sid(@LoginName) = 0x1 -- 'sa' begin raiserror(15287,-1,-1,@LoginName) return (1) end if user_id(@UserNamePattern) in (1,0,3,4) --dbo, public, INFORMATION_SCHEMA, system_function_schema begin raiserror(15287,-1,-1,@UserNamePattern) return (1) end -- HANDLE REPORT -- if upper(@Action) = 'REPORT' begin -- VALIDATE PARAMS -- if @UserNamePattern IS MOT Null or @LoginName IS NOT Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- GENERATE REPORT -- select UserName = name, UserSID = sid from sysusers where issqluser = 1 and (sid is not null and sid <> 0x0) and suser_sname(sid) is null order by name return (0) end -- HANDLE UPDATE_ONE -- if upper(@Action) = 'UPDATE_ONE' begin ! -- CHECK PERMISSIONS -- if not is_member('db_owner') = 1 begin raiserror(15247,-1,-1) return (1) end -- ERROR IF PARAMS NULL -- if @UserNamePattern IS Null or @LoginName IS Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- VALIDATE PARAMS -- -- Can ONLY remap SQL Users to SQL Logins! Should be no need -- for re-mappimg NT logins, and if you try, you'll mess up -- the user status bits! if not exists (select name from sysusers where name = @UserNamePattern -- match user name and issqluser = 1) -- must be sql user begin raiserror(15291,-1,-1,'User',@UserNamePattern) return (1) end select @loginsid = sid from master.dbo.syslogins where loginname = @LoginName -- match login name and isntname = 0 -- cannot use nt logins if @loginsid is null begin raiserror(15291,-1,-1,'Login',@LoginName) return (1) end -- ERROR IF SID ALREADY IN USE IN DATABASE -- if exists (select sid from sysusers where sid = @loginsid and name <> @UserNamePattern) begin raiserror(15063,-1,-1) return (1) end -- CHANGE THE USEQS LOGIN (SID) -- update sysusers set sid = @loginsid, updatedate = getdate() where name = @UserNamePattern and issqluser = 1 and sid <> @loginsid -- FINALIZATION: REPORT (ONLY IF NOT SUCCESSFUL) AND EXIT -- if @@error <> 0 or @@rowcount <> 1 raiserror(15295,-1,-1, 0) return (0) end -- ERROR IF NOT AUTO_FIX -- if upper(@Action) <> 'AUTO_FIX' begin raiserror(15 07жCЫ 286,-1,-1,AAction) return (1) end -- HANDLE AUTO_FIX -- -- CHECK PERMISSIONS -- if not is_srvrolemember('sysadmin') = 1 begin raiserror(15247,-1,-1) return (1) end -- VALIDATE PARAMS -- if @UserNamePattern IS Null or @LoginName IS NOT Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- LOOP THRU ORPHANED USERS -- select @exec_stmt = 'DECLARE ms_crs_110_Users cursor global for select name from sysusers where name = N' + quotename( @UserNamePattern , '''')+ ' and issqluser = 1 and suser_sname(sid) is null' EXECUTE (@exec_stmt) OPEN ms_crs_110_Users WHILE (110=110) begin FETCH next from ms_crs_110_Users into @110name if (@@fetch_status <> 0) begin DEALLOCATE ms_crs_110_Users BREAK end -- IS NAME ALREADY IN USE? -- -- if suser_sid(@110name) is null if not exists(select * from master.dbo.syslogins where loginname = @110name) begin -- VALIDATE PARAMS -- if @Password IS Null begin raiserror(15290,-1,-1,@Action,@UserNamePattern,@LoginName) return (1) end -- ADD LOGIN -- execute @ret = sp_addlogin @110name, @Password, @dbname if @ret <> 0 or suser_sid(@110name) is null begin raiserror(15497,16,1,@110name) deallocate ms_crs_110_Users return (1) end select @FixMode = '1AddL' raiserror(15293,-1,-1,@110name) end ELSE begin Select @FixMode = '2UpdU' Raiserror(15292,-1,-1,@110name) end -- REPORT ERROR & CONTINUE IF DUPLICATE SID IN DB -- select @loginsid = suser_sid(@110name) if user_sid(@loginsid) is not null begin raiserror(15331,-1,-1,@110name) ! CONTINUE end -- UPDATE SYSUSERS ROW -- update sysusers set sid = @loginsid, updatedate = getdate(), status = (status & ~1) | 2 where name = @110name if @@error <> 0 begin raiserror(15498,17,127) deallocate ms_crs_110_Users return (1) end if @FixMode = '1AddL' Select @cfixesaddlogin = @cfixesaddlogin + 1 else Select @cfixesupdate = @cfixesupdate + 1 end -- loop!110 -- REPORT AND RETURN SUCCESS -- raiserror(15295,-1,-1,@cfixesupdate) raiserror(15294,-1,-1,@cfixesaddlogin) return (0) -- sp_change_users_login @ѕBшџџџрST08]ГЈZГ\ЂќZZZZZ8P]ГЈZГ ,\ЂиВВВВВŒŒ˜@]Г 88 чччч!!Pш]ГЈZГ ,\ЂиeeeeeŒŒ˜88 0000шP@^ГЈZГ ,\ЂиŒŒ˜@88 AAAA@P˜^ГЈZГ ,\ЂиŒŒ˜j(PШ^Г@^Г88 BBBBШŒ˜ P№^ГXГ,єІЌ99999ŒŒ˜4XГГќсБ€ЋЌќуБllllL`Гh `X_ГPUГ@$kЈ}}}}}L`ЌфbЌt_Г@ TГ((((``0`Ќ№^Г<\Ђ…‹‹‹‹‹МHГcЌМHГtcЌМHГЬcЌ$dЌ|dЌдdЌМHГ,eЌ„eЌмeЌ4fЌД^Гоооо№_Г`0@Г(TГLЙЌЛззззз0€ФœП‚‚‚‚ј\Рј`р(ЪoФАШuа,Ѕ‚)0 ŠчF˜create proc sp_user_counter9 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 9', @newvalue) 0EЎлGšcreate proc sp_user_counter10 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 10', @newvalue) 0~вЯHšcreate procedure sp_blockcnt --- 1996/04/08 00:00 as select blockedusers=count(*) from master.dbo.sysprocesses where blocked <> 0 T0ЗіУIйcreate proc sp_tempdbspace --- 1996/04/08 00:00 as declare @dbsize dec(15,0) declare @freespace dec(15,0) declare @spaceused dec(15,0) select @dbsize = sum(convert(dec(15),size)) from tempdb.dbo.sysfiles select database_name = 'tempdb', database_size = (@dbsize / 128), spaceused=(select (sum(convert(dec(15),reserved))/128) from tempdb..sysindexes where indid in (0, 1, 255)) dЌ0ЄІGљCREATE PROCEDURE sp_helpsrvrole @srvrolename sysname = NULL AS if @srvrolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from master.dbo.spt_values where name = @srvrolename and low = 0 and type = 'SRV') begin raiserror(15412, -1, -1, @srvrolename) return (1) end -- RESULT SET FOR SINGLE SERVER-ROLE select 'ServerRole' = v1.name, 'Description' = v2.name from master.dbo.spt_values v1, master.dbo.spt_values v1 where v1.name = @srvrolename and v1.low = 0 and v1.type = 'SRV' and v2.low = -1 and v2.type = 'SRV' and v1.number = v2.number end else begin -- RESULT SET FOR ALL SERVER-ROLES select 'ServerRole' = v1.name, 'Description' = v2.name from master.dbo.spt_values v1, master.dbo.spt_values v2 where v1.low = 0 and v1.type = 'SRV' and v2.low = -1 and v2.type = 'SRV' and v1.number = v2.number end return (0) -- sp_helpsrvqole 0TШšHxCREATE PROCEDURE sp_srvrolepermission @srvrolename sysname = NULL AS if @srvrolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from master.dbo.spt_values where name = @srvrolename and low = 0 and type = 'SRV') begin raiserror(15412, -1, -1, @srvrolename) return (1) end -- RESULT SET FOR SINGLE SERVER-ROLE select distinct 'ServerRole' = v1.name, 'Permission' = v2.name from master.dbo.spt_values v1, master.dao.spt_values v2 where v1.name = @srvrolename and v1.low = 0 and v1.type = 'SRV' and ((v2.type = 'SRV' and ((v1.number = 16 and v1.number <= v2.number) or (v1.number <> 16 and v1.number = v2.number))) or (v2.type = 'DBR' and v1.number = 16 and not (v2.name like N'No %'))) and v2.low > 0 order by v1.name, v2.name end else begin -- RESULT SET FOR ALL SERVER-ROLES select distinct 'ServerRole' = v1.name, 'Permission' = v2.name from master.dbo.spt_values!v1, master.dbo.spt_values v2 where v1.low = 0 and v1.type = 'SRV' and ((v2.type = 'SRV' and ((v1.number = 16 and v1.number <= v2.number) or (v1.number <> 16 and v1.number = v2.number))) or (v2.type = 'DBR' and v1.number = 16 and not (v2.name like N'No %'))) and v2.low > 0 order by v1.name, v2.name end return (0) -- sp_srvrolepermission 0ьŽI9CREATE PROCEDURE sp_helpsrvrolemember @srvrolename sysname = NULL AS if @srvrolename is not nulm begin -- VALIDATE GIVEN NAME if not exists (select * from master.dbo.spt_values where name = @srvrolename and low = 0 and type = 'SRV') begin raiserror(15412, -1, -1, @srvrolename) return (1) end -- RESULT SET FOR SINGLE SERVER-ROLE select 'ServerRole' = spv.name, 'MemberName' = lgn.name, 'MemberSID' = lgn.sid from master.dbo.spt_values spv, master.dbo.sysxlogins lgn where spv.name = @srvrolename and spv.low = 0 and spv.type = 'SRV' and lgn.sqvid IS NULL and spv.number & lgn.xstatus = spv.number end else begin -- RESULT SET FOR ALL SERVER-ROLES select 'ServerRole' = spv.name, 'MemberName' = lgn.name, 'MemberSID' = lgn.sid from master.dbo.spt_values spv, master.dbo.sysxlogins lgn where spv.low = 0 and spv.type = 'SRV' and lgn.srvid IS NULL and spv.number & lgn.xstatus = spv.number end return (0) -- sp_helpsrvrolemember 0ЦƒJыCREATE PROCEDURE sp_helpdbfixedrole @rolename sysname = NULL AS if @rolename is not null begin -- VALIDATE GIVEN NAME if not exists (select * from sysusers where name = @rolename and uid >= 16384 and uid <= 16393) begin raiserror(15412, -1, -1, @rolename) return (1) end -- RESULT SET FOR SINGLE FIXED-ROLE select 'DbFixedRole' = usr.name, 'Description' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.name = @rolename and usr.uid >= 16384 and usr.uid <= 16393 and usr-uid = spv.number and spv.type = 'DBR' and spv.low = -1 end else begin -- RESULT SET FOR ALL FIXED-ROLES select 'DbFixedRole' = usr.name, 'Description' = spv.name from sysusers usr, master.dbo.spt_values spv where usr.uid >= 16384 and usr.uid <= 16393 and usr.uid = spv.number and spv.type = 'DBR' and spv.low = -1 end return (0) -- sp_helpdbfixedrole <ё™qGо /* 6.0 and 6.5 and 7.0 version */ create procedure sp_schemata_qowset ( @schema_name varchar(90) = null, @schema_owner varchar(90) = null ) as select distinct CATALOG_NAME = db_name(), SCHEMA_NAME = user_name(o.uid), SCHEMA_OWNER = user_name(o.uid), DEFAULT_CHARACTER_SET_CATALOG = convert(sysname,'master'), DEFAULT_CHARACTER_SET_SCHEMA = convert(sysname,'dbo'), DEFAULT_CHARACTER_SET_NAME = convert(sysname,a_cha.name) from sysobjects o, master.dbo.sysconfigures cfg, master.dbo.syscharsets a_cha, /* charset/1001, nou sortorder */ master.dbo.syscharsets b_cha /* sortorder/2001, not charset */ where (@schema_name is null or @schema_name = user_name(o.uid)) and (@schema_owner is null or @schema_owner = user_name(o.uid)) and a_cha.type = 1001 /* type is charset */ and b_cha.type = 2001 /* type is sortorder */ and a_cha.id = b_cha.csid and b_cha.id = cfg.value order by 2 Ќ0*ОeHg /* 8.0 version */ create procedure sp_schemata_rowset ( @schema_name sysname = null, @sciema_owner sysname = null ) as select distinct CATALOG_NAME = db_name(), SCHEMA_NAME = user_name(o.uid), SCHEMA_OWNER = user_name(o.uid), DEFAULT_CHARACTER_SET_CATALOG = convert(sysname,N'master'), DEFAULT_CHARACTER_SET_SCHEMA = convert(sysname,N'dbo'), DEFAULT_CHARACTER_SET_NAME = convert(sysname,a_cha.name) from sysobjects o, master.dbo.syscharsets a_cha /* charset/1001, not sortorder */ where (@schema_name is null or @schema_name = user_name(o.uid)) and (@schema_owner is null or @schema_owner = user_name(o.uid)) and a_cha.type = 1001 /* type is charset */ and a_cha.id = convert(tinyint, DatabasePropertyEx(db_name(), 'sqlcharset')) /* what is charset of a table? */ order by 2 0*ОeHП /* The following stored procedure is used for Sphinx and Hydra */ create procedure sp_schemata_rowset;3 as select CATALOG_NAME = convert(sysname,' '), SCHEMA_NAME = convert(sysname,' '), SCHEMA_OWNER = convert(sysname,' '), EEFAULT_CHARACTER_SET_CATALOG = convert(sysname,' '), DEFAULT_CHARACTER_SET_SCHEMA = convert(sysname,' '), DEFAULT_CHARACTER_SET_NAME = convert(sysname,' ') where 1=0 ЌgЌ`}Ј_уууууЖЖЖЖРА˜ЌшzЌ€@\­ц!rrrrr0˜˜dlЌрцццllќ ПФџБ4{ЌЬ{ЌУŒ~ЌњњњњфЌœyЌ''''x(€ПшzЌмp­˜ UUUUU((`Ќ@uЌ„œЉЌhжжжжжƒƒƒƒММ0€ ”№ˆј `mn"ЈЩuhˆ"ˆa0šAџD˜create proc sp_user_counter7 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 7', @newvalue) 0гeѓE˜create proc sp_user_counter8 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 8', @newvalue) 0p7ЪDS create procedure sp_changedbowner @loginame sysname, -- login to become dbo @map varchar(5) = NULL -- True to map aliases, else drop as -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES -- set nocount on declare @ret int, @newsid varbinary(85), @status smallint -- CHECK PERMISSIONS (Note: All sysadmins are dbo) -- -- See Bug Shiloh 362190 --- if not (is_srvrolemember('sysadmin') = 1) begin raiserror(15247,-1,-1) return(1) end -- CANT CHANGE OWNER OF MASTER/MODEL/TEMPDB -- " if db_name() in ('master', 'model', 'tempdb') begin raiserror(15109,-1,-1) return(1) end -- CHECK LOGIN NAME IS VALID (NT/SQL USER ONLY!) -- select @newsid = sid, @status = 2 from master.dbo.syslogins where loginname = @loginame and isntname = 0 if @newsid is null select @status = 14, @newsid = get_sid('\U'+@loginame, NULL) if @newsid is null begin raiserror(15007,-1,-1,@loginame) return (1) end -- CHECK IF LOGIN ALREADY ALIASED IN DB -- if exists (select sid from sysusers where isaliased = 1 and sid = @newsid) begin raiserror(15111,-1,-1) return (1) end -- CHECK IF LOGIN ALREADY KNOWN TO DATABASE -- if exists (select sid from sysusers where sid = @newsid and uid <> 1) begin raiserror(15110,-1,-1) return (1) end -- MAKE THE FOLLOWING REMOVE/REMAP/DELETES ATOMIC -- begin transaction -- REMAP DBO TO NEW"SID -- update sysusers set sid = @newsid, status = @status, updatedate = getdate() where name = 'dbo' -- REMOVE OTHER DBO-ALIASES IF REMAPPING NOT REQUESTED -- if lower(@map) <> 'true' begin delete from sysusers where isaliased = 1 and altuid = user_id('dbo') raiserror(15500,-1,-1) end else raiserror(15499,-1,-1) -- nothing to do to -- REFLECT NEW OWNER IN SYSDATABASES -- update master.dbo.sysdatabases set sid ="@newsid where dbid = db_id() commit transaction -- CHECKPOINT DATABASE TO FORCE CHANGES TO IN-MEMORY STRUCTURE -- checkpoint raiserror(15501,-1,-1) grant all to null return (0) -- sp_changedbowner У0Љ[ОE7----------------------------------------------------- -- NOTE: FOR INTERNAL USE ONLY (sp_certify_removable) -- DO NOT DOCUMENT OR USE! ----------------------------------------------------- create procedure sp_check_removable_sysusers @autofix varchar(4) -- true or other as -- CHECK FOR DATABASE OWNED BY SQL USER -- if exists (select name from sysusers where name = 'dbo' and issqluser = 1 and sid <> suser_sid('sa')) begin if @autofix <> 'auto' begin raiserror(15258,-1,-1) return(1) end -- MAKE SA THE DBO -- raiserror(15502,-1,-1) update sysusers set sid = suser_sid('sa'), status = 2, updatedate = getdate() where name = 'dbo' end -- CHECK FOR RERMISSIONS GRANTED TO or BY SQL USERS -- if exists (select grantee from syspermissions where grantee in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) OR exists (select grantor from syspermissions where grantor in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) begin if @autofix = 'auto' PRINT 'CANNOT AUTO-AUTOFIX GRANT-WITH-GRANT CHAINS' raiserror(15053,-1,-1) return(1) end -- CHECK FOR OBJECTS OWNED BY SQL USERS -- if exists (select uid from sysobjects where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) begin if @autofix <> 'auto' begin raiserror(15053,-1,-1) return(1) end -- ASSIGN DBO AS OWNER OF OTHER OBJECTS (MAY FAIL WITH DUPL!) -- raiserror(15503,-1,-1) update sysobjects set uid = 1 where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4) if @@error <> 0 return (1) end -- CHECK FOR TYPES OWNED BY SQL USERS -- if exists (select uid from systypes where uid in (select uid from sysusers u where issqluser = 1 and u.uid > 4)) begin if @autofix <> 'auto' begin raiserror(15053,-1,-1) return(1) end -- ASSIGN DBO AS OWNER OF TYPES -- raiserror(15503,-1,-1) update systypes set uid = 1 where uid in (select uif from sysusers u where issqluser = 1 and u.uid > 4) end -- CHECK FOR ROLES OWNED BY SQL USERS -- if exists (select altuid from sysusers where (issqlrole = 1 or isapprole = 1) and altuid in (select uid from sysusers u where u.issqluser = 1 and u.uid > 4)) begin if @autofix <> 'auto' begin raiserror(15053,-1,-1) return(1) end -- ASSIGN DBO AS OWNER OF TYPES -- raiserror(15503,-1,-1) update sysusers set altuid = 1, vpdatedate = getdate() where (issqlrole = 1 or isapprole = 1) and altuid in (select uid from sysusers u where u.issqluser = 1 and u.uid > 4) end -- CHECK FOR SQL LOGINS AS USERS -- if exists (select uid from sysusers where issqluser = 1 and uid > 4) begin if @autofix <> 'auto' begin raiserror(15254,-1,-1) return(1) end -- DELETE SQL USERS AND DEPENDENT ALIASES -- raiserror(15504,-1,-1) delete from"sysusers where issqluser = 1 and uid > 4 delete from sysusers where isaliased = 1 and user_name(altuid) is null end -- CHECK FOR SQL LOGINS ALIASED -- if exists (select uid from sysusers where isaliased = 1 and isntname = 0) begin if @autofix <> 'auto' begin raiserror(15254,-1,-1) return(1) end -- DELETE ALIASED SQL USERS -- raiserror(15504,-1,-1) delete from sysusers where isaliased = 1 and isntname = 0 end -- Success return 0 <Q‰E‰ /* 7.0 version */ create procedure sp_procedures_rowset ( @procedure_name sysname, @group_number int = 1, @procedure_schema sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(p.number,5))), PROCEDURE_TYPE = convert(smallint, 3 /*DB_PT_FUNCTION*/), PROCEDURE_DEFINITION = convert(nvarchar(1),null), DESCRIPTION ="convert(nvarchar(1),null), DATE_CREATED = o.crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects o, syscomments p where permissions(o.id) <> 0 and o.name = @procedure_name and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.type = 'P' /* Object type of Procedure */ and p.colid = 1 and p.id = o.id and p.number = @group_number order by 2, 3 юююд}Цр}Цp}ЦФљІзVVVV@n(~ЦИ}Ц$x;Ј ЎЎЎЎЎ„6УŒ}Ц3 vŠ88 ћћћћp~Цр}Ц$x;Ј “““““ќ}Ц }ЦЛЛЛ˘~Ц}Ц“$x;Ј[}Ц(~ЦЖџџџџџџџџџџџџWWWWnБа~ЦP~Ц”АБЂкЯЯЯЯЯ@loginsidššššзDЦ˜~Ц•(x;Ј3 ўўўўўкsЅЅU ЋЋЋЋ`Ца~Ц–$x;Ј nnnnn, Йь~Ц g‡hh;;;;˜ЦЦ—XЁЂnттттт4Цˆ ЗЗЗЗ У`Ц˜(x;Јџ ллллл… Ž88 < УŽŽŽŽŒаЇллллbbbbф `nШ hЪu€@ ‹€0гeѓE˜create proc sp_user_counter8 @newvalue int as dbcc setinstance ('SQLServer:User Settable', 'Query', 'User counter 8', @newvalue) 0тВFО create procedure sp_changeobjectowner @objname nvarchar(517), -- may be "[owner].[object]" @newowner sysname -- must be entry from sysusers as Set nocount on Set ansi_padding on declare @objid int, @newuid smallint -- CHECK PERMISSIONS: Because changing owner changes both schema and -- permissions, the caller must be one of: -- (1) db_owner -- (2) db_ddladmin AND db_securityadmin if (is_member('db_owner') = 0) and (is_member('db_securityadmin') = 0 OR is_member('db_ddladmin') = 0) begin raiserror(15247,-1,-1) return (1) end -- RESOLVE OBJECT NAME (CANNOT BE A CHILD OBJECT: TRIGGER/CONSTRAINT) -- select @objid = object_id(@objname, 'local') if (@objid is null) OR (select paremt_obj from sysobjects where id = @objid) <> 0 OR ObjectProperty(@objid, 'IsMSShipped') = 1 OR ObjectProperty(@objid, 'IsSystemTable') = 1 OR ObjectProperty(@objid, 'ownerid') in (0,3,4) OR --public, INFORMATION_SCHEMA, system_function_schema -- Check for Dependencies: No RENAME or CHANGEOWNER of OBJECT when exists: EXISTS (SELECT * FROM sysdepends d WHERE d.depid = @objid -- A dependency on this object AND d.deptype > 0 -- that is enforced AND @objid <> d.id -- that isn't a semf-reference (self-references don't use object name) AND @objid <> -- And isn't a reference from a child object (also don't use object name) (SELECT o.parent_obj FROM sysobjects o WHERE o.id = d.id) ) begin -- OBJECT NOT FOUND raiserror(15001,-1,-1,@objname) return 1 end -- RESOLVE NEW OWNER NAME (ATTEMPT ADDING IMPLICIT ROW FOR NT NAME) -- -- Disallow aliases, and public cannot own objects -- select @newuid = uid from sysusers where name = @newowner ! and isaliased = 0 and uid not in (0,3,4) --public, INFORMATION_SCHEMA, system_function_schema if @newuid is null begin execute sp_MSadduser_implicit_ntlogin @newowner select @newuid = uid from sysusers where name = @newowner and isaliased = 0 and name <> 'public' end if @newuid is null begin raiserror(15410, -1, -1, @newowner) return (1) end -- CHECK IF CHANGING OWNER OF OBJECT OR ITS CHILDREN WOULD PRMDUCE A DUPLICATE if exists (select * from sysobjects where uid = @newuid and name in (select name from sysobjects where id = @objid OR parent_obj = @objid)) begin raiserror(15505,-1,-1,@objname,@newowner) return (1) end -- DO THE OWNER TRANSFER (WITH A WARNING) -- raiserror(15477,-1,-1) begin transaction -- Locks Object and increments schema_ver. DBCC LockObjectSchema(@objname) -- drop permissions (they'll be incorrect with new owner) -- delete syspermissions where id = @obiid update sysobjects set uid = @newuid where id = @objid update sysobjects set uid = @newuid where parent_obj = @objid commit transaction return 0 -- sp_changeobjectowner 0Иu}F /* 8.0 version */ create procedure sp_procedures_rowset ( @procedure_name sysname, @group_number int = 1, @procedure_schema sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ lurim(str(p.number,5))), PROCEDURE_TYPE = convert(smallint, 3 /*DB_PT_FUNCTION*/), PROCEDURE_DEFINITION = convert(nvarchar(1),null), DESCRIPTION = convert(nvarchar(1),null), DATE_CREATED = o.crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects o, syscomments p where permissions(o.id) <> 0 and o.name = @procedure_name and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.type in ('P', 'FN', 'TF', 'IF') /* Object type of Procedure */ and p.colid = 1 and p.id = o.id and p.number = @group_number order by 2, 3 0Иu}Fcreate procedure sp_procedures_rowset;2 ( @procedure_schema sysname = null ) as select PROCEDURE_CATALOG = db_name(), PROCEDURE_SCHEMA = user_name(o.uid), PROCEDURE_NAME = convert(nvarchar(134),o.name +';'+ ltrim(str(p.number,5))), PROCEDURE_TYPE = convert(smallint, 3 /*DB_PT_FUNCTION*/), PROCEDURE_DEFINITION = convert(nvarchar(1),null), DESCRIPTION = convert(nvarciar(1),null), DATE_CREATED = o.crdate, DATE_MODIFIED = convert(datetime,null) from sysobjects o, syscomments p where permissions(o.id) <> 0 and (@procedure_schema is null or @procedure_schema = user_name(o.uid)) and o.type in ('P', 'FN', 'TF', 'IF') /* Object type of Procedure */ and p.colid = 1 and p.id = o.id order by 2, 3 @Рџџџџ7777PєХѓХ `}Ј_88888<њХдƒЦiiiiєХpѓХ.(x;Јџ ™™™™™ffff00єХЬЬЬЭ(єХИѓХ/ФљІз_____ pєХєХ0$x;Ј 88888ŒѓХДшБmmmm˜єХѓХ$x;Ј[ˆˆˆˆˆѓХ(єХЖџџџџџџџџџџџџннннџџџџѕХPєХHx;Ј$ 11111lўФlіХ,џџџџЬЪx;ЈddddѕХ˜єХpx;ЈWдддддїїїїД `  Л(ЌѕХџџџџPіХѕХ `}Ј_LLLLLууууєєєє іХPѕХ6HXЁЂW~~~~~Œ№ХŒїХ3sFі ++++АіХИѕХ7px;ЈW!!!!!DјХфіХД `˜іХѕХ$x;Ј[‹‹‹‹‹ѕХЖџџџџџџџџџџџџооооџџїХPіХTXЁЂ{ ЩЩЩЩЩ,їХTЦlљХѓХАЫЉАЫЉ<€ЦFœœœœаїХ˜іХ x;ЈЩ ŒŒŒŒŒlљХTЦШіХ   Л(ьїХ €Сџџџџ|ŽЦййййјХїХ `}Ј_іііііјХnnnm(јХИїХ;ФљІзтттттП;ЗЗЗЗјХјХ<Dx;Ј ЎЎЎЎЎќњХдїХзў€4ЌјХћћћћЃЃЃЃРјХаїХАБЂк}}}}}altuid(((( љХјХ@x;Ј- ОООООge(044 <љХыыыыPљХРјХ x;ЈЧ altuidккккИљХ љХDx;Ј ЃЃЃЃЃмјХЇЇЇЇ€444 дљХііііџ шљХPљХ x;ЈЕ }}}}}altuid((((____ њХИљХАБЂк44444sysusersaaaaDрњХшљХ  XЁЂиииии S рP2˜U“џџd§Х,ћХŒ0ЖќњХ44ЖћХ њХ!x;Јъ :::::sysusersooooˆћХрњХ"XXЁЂЗ^HHHHHРћХћХ#АБЂкТТТТТissqlrole————p ќХˆћХ$@x;Ј- <<<<<(088 мјХ<ќХiiiiXќХРћХ%x;ЈЧ †††††issqlroleггггЈ_Ћ ќХ ќХ&(x;Јџ ЛЛЛЛЛќХ00МќХююююШќХXќХ'ФљІзйййййŒŒŒŒ(§Х ќХ($x;Ј †††††мћХЄ3Жџџhhгггг$H§ХШќХ)АБЂк`````isapprole5555џЈ§Х§Х*@x;Ј- ЌЌЌЌЌ§Х(088 мћХФ§Хљљљљр§ХH§Х+x;ЈЧ ‚‚‚‚‚isapproleззззХ[r(ўХЈ§Х,(x;Јџ ……………00DўХааааPўХр§Х-ФљІз<<<<<iiii˜ўХ(ўХ.$x;Ј ™™™™™d§Хь3ЖtttthhЬЬЬЬ …ЦаўХPўХ/x;ЈЯ _____фќХь0Ж РЋ‰  џХ˜ўХ0АБЂк88888altuidmmmm`џХаўХ1@x;Ј- лллллb&(044 |џХŽŽŽŽ €ЦџХ2 x;ЈЧ LLLLLaltuid Х(<€ЦіџџuuuuззззџџџџјXИ `st, @ЫvТ-s†+0FєpP˜create procedure sp_addumpdevice -- 1995/09/07 12:01 @devtype varchar(20), /* disk, tape, or diskette */ @logicalname sysname, /* logical name of the device */ @physicalname nvarchar(260), /* physical name of the device */ @cntrltype smallint = null, /* controller type - ignored. */ @devstatus varchar(40) = 'noskip' /* device characteristics */ as declare @status smallint /* status bits for device */ declare @returncode int /* ** An open txn might jeopardize a recovery. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_addumpdevice') return (1) end /* ** You must be SA to execute this sproc. */ if (not is_srvrolemember('diskadmin') = 1) begin raiserror(15247,-1,-1) return (1) end select @devtype=lower(@devtype) /* ** Check out the @devtype. */ if @devtype nmt in ('disk', 'tape', 'diskette', 'pipe', 'virtual_device') begin raiserror(15044,-1,-1,@devtype) return (1) end /* ** Check the args are not NULL. */ if @logicalname is null begin raiserror(15045,-1,-1) return(1) end /* ** Check to see that the @logicalname is valid. */ exec @returncode = sp_validname @logicalname if @returncode <> 0 return(1) if @physicalname is null begin raiserror(15046,-1,-1) return(1) end /* *) Make sure physical file name would be unique among devices. */ if exists (select * from master.dbo.sysdevices where phyname = @physicalname) begin raiserror(15061,-1,-1,@physicalname) return (1) end /* ** Prohibit certain special english words from being logical names. */ if (@logicalname IN ('disk' ,'diskette' ,'tape' ,'floppy')) begin raiserror(15285,-1,-1,@logicalname) return (1) end /* ** Make sure that a device with @logicalname doesn't alreaey exist. */ if exists (select * from master.dbo.sysdevices where name = @logicalname) begin raiserror(15026,-1,-1,@logicalname) return (1) end /* ** Always turn on the dump status bit. */ select @status = 16 /* ** If @devtype is a tape then check to see if devstatus is 'skip'. */ if @devtype = 'tape' begin if @devstatus not in ('noskip','skip') begin raiserror(15047,-1,-1) return (1) end if @devstatus = %skip' select @status = @status | 8 end /* ** If a disk then the cntrltype = 2 */ if @devtype = 'disk' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 2, @logicalname, @physicalname) raiserror(15444,-1,-1) end /* ** If a diskette then the cntrltype in (3,4) */ if @devtype = 'diskette' begin insert into master.dbo.sysdevices (low, high, size, status,!cntrltype, name, phyname) values (0, 0, 0, @status, 3, @logicalname, @physicalname) raiserror(15445,-1,-1) end /* ** Tape device. */ if @devtype = 'tape' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 5, @logicalname,@physicalname) raiserror(15446,-1,-1) end /* ** Pipe. */ if @devtype = 'pipe' begin insert into master.dbo.sysdeviceq (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 6, @logicalname,@physicalname) raiserror(15447,-1,-1) end /* ** Virtual device. */ if @devtype = 'virtual_device' begin insert into master.dbo.sysdevices (low, high, size, status, cntrltype, name, phyname) values (0, 0, 0, @status, 7, @logicalname,@physicalname) raiserror(15031,-1,-1) end return (0) -- sp_addumpdevice 0U0Qocreate procedure sp_dropserver @server sysname, -- server name @droplogins char(10) = NULL -- drop all related logins? as declare @ret int -- DISALLOW USER TRANSACTION set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dropserver') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('setupadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- CHECK SERVER NAME / GET SERVER ID declare @srvid smallint select @srvid = srvid from master.dbo.sysservers where srvname = @server if @srvid is null begin raiserror(15015,-1,-1,@server) return (1) end -- CHECK @droplogins PARAMETER (FOR RELATED SYSREMOTELOGINS ROWS) if @droplogins is null begin -- DONT consider default mapping for outgoing events if exists (select * from master.dbo.sysxlogins where srvid = @srvid and not(ishqoutmap = 1 and xstatus&192 = 192 and sid is null and name is null and password is null)) begin raiserror(15190,-1,-1,@server) return (1) end end else if @droplogins <> 'droplogins' begin raiserror(15191,-1,-1) return (1) end -- CHECK TO SEE IF THE SERVER IS USED BY REPLICATION. if object_id('master.dbo.sp_MSrepl_check_server') is not null begin execuue @ret = master.dbo.sp_MSrepl_check_server @server if @ret <> 0 or @@error <> 0 return 1 end -- DROP THE SERVER (ALONG WITH ANY REMOTE LOGINS) begin transaction delete master.dbo.sysxlogins where srvid = @srvid delete master.dbo.sysservers where srvid = @srvid commit transaction -- SUCCESS return (0) -- sp_dropserver <+ћPж /* Procedure for 7.0 server */ create procedure sp_tables_info_rowset_64 ( @table_name sysname, @table_schema sysname = mull, @table_type nvarchar(255) = null ) as select * from (select TABLE_CATALOG = db_name(), TABLE_SCHEMA = user_name(o.uid), TABLE_NAME = o.name, TABLE_TYPE = convert(nvarchar(30), case o.type when 'U' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'TABLE' else N'SYSTEM TABLE' end when 'S' then N'SYSTEM TABLE' when 'V' then case when ObjectProperty(o.id, 'IsMSShipped') = 0 then N'VIEW% else N'SYSTEM VIEW' end end), TABLE_GUID = convert(uniqueidentifier, null), BOOKMARKS = convert(bit, 1), BOOKMARK_TYPE = convert(int, 1 /*DBPROPVAL_BMK_NUMERIC*/), BOOKMARK_DATATYPE = convert(smallint, 21 /*DBTYPE_UI8 */), BOOKMARK_MAXIMUM_LENGTH = convert(int, 8), BOOKMARK_INFORMATION = convert(int, 0), TABLE_VERSION = convert(int, o.schema_ver), CARDINALITY = x.rows, DESCRIPTION = convert(nvarchar(1), null), TABLE_PROPID = convert(int, null) erom sysobjects o left join sysindexes x on o.id = x.id and x.indid in (0,1) where o.name = @table_name and o.type in ('U','V','S') and permissions(o.id) <> 0) as t where (@table_schema is null or @table_schema = TABLE_SCHEMA) and (@table_type is null or @table_type = TABLE_TYPE) order by 4, 2, 3 ЛЮјмЮШnЈnСССССsidtype””””ИнЮ@нЮ$`:ЇMЋЋЋЋЋднЮЅЅUнЮўўўўрнЮpнЮШnЈn–––––sidУУУУ(оЮИнЮ$`:ЇM_____DоЮчч~а4ŒнЮ јнЮXоЮрнЮ ШnЈnщщщщщnameММММ$ оЮ(оЮ$`:ЇMGGGGGМоЮчч~а4ќнЮ$аоЮXоЮШnЈnЗЗЗЗЗdomainттттHпЮ оЮ РЈwЉЉЉЉЉЌ.УьІХˆ ќќќќPпЮаоЮ!$ЄЈD„„„„„<.Ує!НE88 HббббпЮˆпЮпЮ"РЈwЂЂЂЂЂŒ„Цˆ їїїїHпЮРпЮPпЮ#РЈwXXXXXд„ЦмпЮˆ  €пЮ ЖˆпЮ$РЈw™™™™™\†Цˆ ЬЬЬЬјШвјh`СuћцЬvQЎ0И 0 return(1) /* ** Check to see if the useq type already exists or a system type ** whose name = lower(@typename) (or a synomym) already exists. */ if exists (select * from systypes where name = @typename or (name = lower(@typename) and xusertype <= 256)) or lower(@typename) in ('character','character varying','char varying', 'integer','dec','binary varying', 'national character varying','national character', 'national char varying','national char', 'national text', 'ncharacter varying', 'ncharacter', 'nchar varyine', 'rowversion') begin raiserror(15029,-1,-1,@typename) return (1) end /* ** Check to see if the user type has been reserved for future use. */ if @typename in ('variant') begin raiserror(15075,-1,-1,@typename) return (1) end /* ** Can't supply length with sysname type. */ if @phystype like 'sysname%(%' begin raiserror(15270,-1,-1) return(1) end /* ** initialize the length to be NULL first. */ select @len = NULL /* ** If precision and scale were givem with the type - extract them */ if @phystype like '_%(_%,_%)' begin select @prec = convert(int, substring(@phystype, charindex('(',@phystype) + 1, charindex(',',@phystype) - 1 - charindex('(',@phystype))) select @scale = convert(int, substring(@phystype, charindex(',',@phystype) + 1, charindex(')',@phystype) - 1 - charindex(',',@phystype))) /* ** Extract the physical type name */ select @phystype = substring(@phystype, 1, charindex('(', @phystype) - 1) end else /* )* If a length was giZЎ­­­88 ^\Ђ88 b†юБчча4њџ\ЂДДДДИ№БPэБMРЈwяяяяяtћЋшэБˆ ККККчŠ№№Б€№БNРЈwœџЋˆ MMMM(ёБИ№БOРЈwSSSSStћЋˆ PёБ№№БP„ЇюGGGGG0РІˆёБ(ёБQРЈwћћћћћ\ЦЇˆ ЎЎЎЎРёБPёБRРЈwдкЇмёБŒŒ˜‰ LLLLџџџџјёБˆёБSРЈwdмЇP(‰ PPPP0ђБРёБTРЈwCCCCCЌмЇ0№Бˆ иuxђБјёБU$ЄЈDіііііdкЇE88 HЃЃЃЃ`№БРђБ0ђБV$ЄЈDњњњњњ”+šЈˆsЏЏа4ЏЏЏЏ ѓБxђБW$ЄЈDККККК8šччsЏЏа4яяяя` PѓБРђБX$ЄЈDtСЮlѕБHЅЅU[[[[ˆѓБѓБYРЈwљљљљљ\ЧЮ0иˆ ЌЌЌЌДаѓБPѓБZ$ЄЈDВВВВВ, ЙшџџџD44ччччєБˆѓБ[РЈwеееее„лЮˆ €€€€0єБаѓБ\„ЇК›››››JЮЮЮЮXєБєБ]„ЇюGGGGGh€єБ0єБ^x;Ј[  @@@@а4ШєБXєБ_$ЄЈDЈЈЈЈЈДзЮќєE88 §§§§€€ѕБ€єБ`$ЄЈD€€€€€ДйЮD44ееееHѕБШєБaРЈw†††††є Ж}Uˆ ггггѕБѕБb$ЄЈD№№№№№„ ЖŒŒ˜E88 HЅЅЅЅHѕБcРЈwt1Жˆ ZZZZ%єєєєфіБP0іБѓБ ,\ЂиTTTTTŒŒ˜žnW”^а”^а4ЪЉччJа48ˆРљБАэБЁ@$kЈ""""" $їБьіБјБ<јБДіБz>ччJа4p T№?wwww` тБшэБЂ\Ђ…вввввtјБ\лЮќјБ„љБ‡‡‡‡0штБшэБЃ\Ђтллллл$%JJŽŽŽŽ0итБшэБЄД\Ђч†††††@ѕBшџџџŸŽFшџџџа%T@ѕBшџџџа%T€кTJ@ѕBшџџџLNCггггhXјБ˜іБЅ\ЂѕvvvvvччJа4####00тБШіБІ\ЂќDDDD€€рјБ˜іБЇ,\ЂиrrrrrŒŒ˜ЇЇа4''''P(тБШіБЈ,lЈ}JJJJJ% €hљБ˜іБЉ,\Ђи{{{{{ŒŒ˜№†­‡ @ЇЇа4....\љБP(тБШіБЊ,lЈ}ѓѓѓѓѓ%ІІІІUUUдћБPРљБ˜іБЋ,\ЂиFFFFFŒŒ˜žnW”^а”^а4ЪЉччJа4яШ ˆP§БАэБЌ@$kЈ№№№№№ ДњБ|њБ”ћБЬћБDњБ88 p T­ЅЅЅЅ` тБшэБ­\Ђ…оооооќБ\лЮŒќБ§Б‹‹‹‹0штБшэБЎ \ЂтЋЋЋЋЋ$%Jўўўўb_0итБшэБЏД\Ђч“““““@ѕBшџџџŸŽFшџџџа%T@ѕBшџџџа%T€кTJ@ѕBшџџџ|NCЦЦЦЦЏЦhшћБ(њБА\ЂѕЃЃЃЃЃччJа4іііі00тБXњББ\ЂќЭЭЭЭݘ˜˜˜€€pќБ(њБВ,\ЂиОООООŒŒ˜Ш(HќБрњБЇЇа4ыыыыŒљБP(тБXњБГ,lЈ}NNNNN%ффф$њБ€јќБ(њБД,\ЂиаааааŒŒ˜Тqqqq((ЇЇа4…………уP(тБXњБЕ,lЈ}ККККК%яяяя\­?!0PP§Б(њБЖ,\ЂиСССССŒŒ˜žnW”^а”^а4ЪЉччJа4””””Xа(џБАэБЗ@$kЈ     ўБ џБ|ўБд§ББhh T88ѕѕѕѕ`hтБшэБИ\Ђ…77777$мЮДўБbbbb(8тБшэБЙP\ЂчбббббРTшџџџ@ѕBшџџџрSTB„„„„p0˜ўБИ§БК\Ђќ\\\\\ Јˆ(џБИ§БЛ,\ЂиŒŒ˜@|LГTћБ555588 ШШШШ0P0тБр§БМ \ЂяТТТТТKPB————pxј@Г8ьБНр­Ќ1fffff”!šМHГ„џБ3333(88xыБ`ьБОр­Ќz'''''0€Ф(L@Гrrrr№HшьБ˜Ќ‚L>­ 6šЗЗ,кккк@ЈэБ`‚p Эw@1fТ0cЉ5UYcreate procedure sp_attach_single_file_db @dbname sysname, @physname nvarchar(260) as declare @execstring nvarchar (400) set nocount on IF ((@dbname is null OR datalength(@dbname) = 0) OR (@physname is null OR datalength(@physname) = 0)) begin raiserror (15004,-1,-1) return (1) end select @execstring = 'CREATE DATABASE ' + quotename( @dbname , '[') + ' ON (FILENAME =' + '''' + REPLACE(@physname,N'''',N'''''') + '''' + ' ) FOR ATTACH' exec (@execstring) if @@error <> 0 begin -- No need to raiserror as the CREATE DATABASE will do so return(1) end -- strip out replication from this database if exists (select * from master.dbo.sysobjects where name=N'sp_removedbreplication') begin exec sp_removedbreplication @dbname end return (0) -- sp_attach_single_file_db 09ŸUЮ create procedure sp_helpserver @server ! sysname = NULL, -- server name @optname varchar(35) = NULL, -- option name to limit results @show_topology varchar(1) = NULL -- 't' to show topology coordinates as -- PRELIMINARY set nocount on declare @optbit int, @bitdesc sysname, @curbit int -- CHECK IF REQUESTED SERVER(S) EXIST if not exists (select * from master.dbo.sysservers where (@server is null or srvname = @server)) begin if!@server is null raiserror(15205,-1,-1) else raiserror(15015,-1,-1,@server) return (1) end -- GET THE BIT VALUE(S) FOR THE OPTION REQUESTED if @optname is not null begin select @optbit = number from master.dbo.spt_values where type = 'A' and name = @optname if @optbit is null begin raiserror(15206,-1,-1,@optname) return(1) end end else select @optbit!= -1 -- 0xffffffff -- MAKE WORK COPY OF RELEVANT PART OF SYSSERVERS select name = srvname, network = srvnetname, status = convert(varchar(100), ''), id = srvid, srvstat = srvstatus, topx = topologyx, topy = topologyy, collation_name = convert(sysname, CollationPropertyFromID(srvcollation, 'name')), connect_timeout = connecttimeout, query_timeout = querytimeout into #spt_server from master.dbo.sysservers where (@server is null or srvname = @server) amd (@optname is null or srvstatus & @optbit <> 0) -- SET THE STATUS FIELD select @curbit = 1 while @curbit < 0x10000 -- bit field is a smallint begin select @bitdesc = null select @bitdesc = name from master.dbo.spt_values where type = 'A' and number = @curbit if @bitdesc is not null update #spt_server set status = status + ',' + @bitdesc where srvstat & @curbit <> 0 select @curbit = @curbit * 2 end -- SHOW THE RESULT SET if lower(@show_topology) <> 't' or @show_topology is null select name, network_name = substring(network, 1, 28), status = isnull(substring(status,2,8000),''), id = convert(char(4), id), collation_name, connect_timeout, query_timeout from #spt_server order by name else select name, network_name = substring(network, 1, 28), status = isnull(substring(status,2,8000),''), id = convert(char(4), id), collation_name, connect_timeout, query_timeout, topx, topy from #spt_server order by name -- RETURN SUCCESS return(0) -- sp_helpserver ЪЪ0rУєUcreate procedure sp_helplinkedsrvlogin @rmtsrvname sysname = NULL, @locallogin sysname = NULL as declare @srvid smallint, @status smallint, @ret int -- CHECK REMOTE SERVER NAME. if @rmtsrvname is not null begin select @srvid = srvid from master.dbo.sysservers where srvname = @rmtsrvname if @srvid is nulm begin raiserror(15015,-1,-1,@rmtsrvname) return (1) end end -- IF SPECIFIED CHECK LOCAL USER NAME if (@locallogin IS NOT NULL) begin select u.srvname as [Linked Server], t.name as [Local Login], s.selfoutmap as [Is Self Mapping], s.name as [Remote Login] from master.dbo.sysxlogins s, master.dbo.sysxlogins t, master.dbo.sysservers u where ((@rmtsrvname is null or @rmtsrvname=u.srvname) and u.srvid= s.srvid) and s.ishqoutmap = 1 and s.sid=t.sid and t.mame = @locallogin and t.ishqoutmap = 0 end if (@locallogin IS NULL) begin -- Get global mapping (s.sid is NULL) if any select u.srvname as [Linked server], NULL as [Local Login], s.selfoutmap as [Is Self Mapping], s.name as [Remote Login] from master.dbo.sysxlogins s, master.dbo.sysservers u where ((@rmtsrvname is null or @rmtsrvname=u.srvname)and u.srvid= s.srvid) and s.ishqoutmap = 1 and s.sid is NULL UNION -- Get specific mappings select u.srvname as [Linked server], t.name as [Local Login], s.selfoutmap as [Is Self Mapping], s.name as [Remote Login] from master.dbo.sysxlogins s, master.dbo.sysxlogins t, master.dbo.sysservers u where ((@rmtsrvname is null or @rmtsrvname=u.srvname) and u.srvid= s.srvid) and s.ishqoutmap = 1 and s.sid=t.sid and t.ishqoutmap = 0 order by u.srvname end -- RETURN SUCCESS return(0) -- sp_helplinkedsrvlogin ѕФHXЁЂWУУУУУTўФlїФДїФ5\xР –––•іФ˜ѕФ1px;ЈW00000ь§Ф §ФмїФД ` Н(ЌіФ@ РџџџџeeeePїФіФ2 `}Ј_ууууу00­­­­їФіФ$x;Ј[aaaaa”ѕФЊЊЊЖџџџџџџџџџџџџ4444ІЮ8їФШіФАБЂкŠŠŠŠŠdboппппpїФїФАБЂЖЖЖƘїФіФ3$x;Ј[`````іФ8їФЖџџџџџџџџџџџџ5555erјФPїФ4Hx;Ј$ €€€€€ŒјЋlљФ<џџџџ@HеееејФ˜їФ5px;ЈWД ` Н(ЌјФџџџџNNNNPљФјФ6 `}Ј_ЅЅЅЅЅbosysserversTTTTФ јФHљФ€јФXXЁЂЗ†††††^HггггиљФ№№№№˜љФјФ7$x;Ј[яяяяяјФЖџџџџџџџџџџџџКККК(аљФPљФ8АБЂк@optnameCCCCњФ˜љФ9 АБЂйиииииdist РЋHњФаљФ:(x;Јп 77777СЇЇа4dњФbbbbpњФњФ;ФљІзŸŸŸŸŸdistЪЪЪЪИњФHњФ<$x;Ј ‚‚‚‚‚Є/НњФГГГГ‡hh ззззdљФ№њФpњФ=АБЂкііііі@optvalueЃЃЃЃ ћФИњФ> АБЂйиииииtrueDhћФ№њФ?(x;Јп UUUUUЇЇа4„ћФћФ ћФ@ФљІзбббббtrue„„„„кОићФhћФA$x;Ј ППППП2НФЦІxћФ‡hh ъъъъјФќФћФBАБЂй.....on{{{{HќФићФC(x;Јп bbbbbЇЇа4dќФ7777pќФќФDФљІз%%%%%onppppНИќФHќФE$x;Ј ЏЏЏЏЏ2Н|ЦІ‡hh њњњњHќФ№ќФpќФFx;ЈЯ aaaaaŒќФ ЦІuc‰ 4444АќФ(§ФИќФGx;ЈЯ ›››››ŒњФDЦІччˆ ЮЮЮЮўџ`§Ф№ќФHXЁЂxдќФЂRˆ [[[[Ј§Ф(§ФI(x;Јџ ДДДДД8§Ф88 Ф§Фсссса§Ф`§ФJФљІз44444aaaa8ўФЈ§ФKDx;Ј |§Фˆ§Ф€488 SSSSD ўФа§ФLHXЁЂWkkkkk„цЋ<рЋ6^RСШўФ@>>>>0џФ8ўФMpx;ЈW„сЋLцЋВВВВД ` Н(LџФ@ СџџџџKKKK рЋ ўФN `}Ј_МтЋrovstrќќќќаџФ0џФ-Dx;Ј §§§§§„рЋм:Н€4чч@а4њџЈЈЈЈ рЋhџФ.АБЂкFFFFFVVVVtdateŒ`МР§ўцЮbˆ<0еёWЕcreate procedure sp_bindefault --- 1996/08/30 20:04 @defname nvarchar(776), /* name of the default */ @objname nvarchar(517), /* table or usertype name */ @futureonly varchar(15) = NULL /* flag to indicate extent of binding */ as declare @defid int /* id of the default to bind */ declare @futurevalue varchar(15) /* the value of @futureonly that causes ** the binding to be limited */ declare @vc1 nvarchar(517) ,@tab_id integer ,@parent_obj integer ,@cur_tab_id integer ,@colid smallint ,@xtype tinyint ,@xusertype smallint ,@col_status tinyint ,@col_default int ,@identity binary(1) declare @UnqualDef sysname ,@QualDef1 sysname ,@QualDef2 sysname ,@QualDef3 sysname ,@UnqualObj sysname ,@QualObj1 sysname ,@QualObj2 sysname ,@QualObj3 sysname set cursor_close_on_commit off set nocount on select @futurevalue = 'futureonly' /* initialize @futurevalue */ select @identity = 0X80 /* identity columns*/ /* ** When a default or rule is bound to a user-defined datatype, it is also ** bound, by default, to any columns of the user datatype that are currently ** using the existing default or rule as their default or rule. This default ** action may be overridden by setting @futureonly = @futurevalue when the ** procedure is invoked. In this case existing columns with the user ** datatype won't have their existing default or rule changed. */ -- get name parts -- select @UnqualDef = parsename(@defname, 1), @QualDef1 = parsename(@defname, 2), @QualDef2 = parsename(@defname, 3), @QualDef3 = parsename(@defname, 4) select @UnqualObj = parsename(@objname, 1), @QualObj1 = parsename(@objname, 2), @QualObj2 = parsename(@objname, 3), @QualObj3 = parsename(@objname, 4) IF (@UnqualDef is NULL OR @QualDef3 is not null) begin raiserror(15253,-1,-1,@defname) return (1) end IF (@UnqualObj is NULL OR @QualObj3 is not null) begin raiserror(15253,-1,-1,@objname) return (1) end ------------------ Verify database. if ((@QualObj2 is not null and @QualObj1 is null) or (@QualDef2 is not null and @QualDef2 <> db_name())) begin raiserror(15076,-1,-1) return (1) end /* ** Check that the @futureonly argument, if supplied, is correct. */ if (@futureonly IS NOT NULL) begin select @futureonly = lower(@futureonly) if (@futureonly <> @futurevalue) begin raiserror(15100,-1,-1) return (1) end end /* ** Check to see that the default exists and get its id. */ select @defid = id, @parent_obj = parent_obj from sysobjects where id = object_id(@defname) and xtype='D ' -- default object 6 if @defid is NULL begin raiserror(15016,-1,-1,@UnqualDef) return (1) end if @parent_obj > 0 begin raiserror(15050,-1,-1,@defname) return(1) end /* ** If @objname is of the form tab.col then we are binding to a column. ** Otherwise its a datatype. In the column case, we need to extract ** and verify the table and column names and make sure the user owns ** the table that is getting the default bound. We also need to ensure ** that we don't overwrite any DRI style defaults. */ if @QualObj1 is not null begin if (@QualObj2 is not null) select @vc1 = QuoteName(@QualObj2) + '.' + QuoteName(@QualObj1) else select @vc1 = QuoteName(@QualObj1) select @tab_id = o.id, @colid = c.colid, @xtype = c.xtype, @col_status = c.status, @col_default = c.cdefault from sysobjects o, syscolumns c where c.id = object_id(@vc1,'local') and c.name = @UnqualObj and o.id = c.id and o.xtype='U ' /*Check that table and column exist*/ if @tab_id is null begin raiserror(15104,-1,-1,@QualObj1,@UnqualObj) return (1) end /* ** If the column type is timestamp, disallow the bind. ** Defaults can't be bound to timestamp columns. */ if type_name(@xtype) = 'tЯЇ(x;Јџ ЕЕЕЕЕјЯЇ88 tаЇрррр€аЇаЇйФљІз  XXXX]]]]иаЇXаЇк8x;Јг hhhhh,аЇ* ŒU(88 ќ%Н====бЇ€аЇлАБЂкДДДДДmasterсссс’pбЇиаЇмHXЁЂWКККККќ"ЖмвЇDnHо՘бЇяяяявЇбЇнpx;ЈWмммммЌйЇФ"ЖhбЇД ` Н(вЇ@ Хџџ ‰‰‰‰РвЇpбЇо `}Ј_dddddдгЇ\еЇјбЇТ$ЄЈDttttt$>УXвЇD44H!!!!(вЇАвЇ вЇУ$ЄЈDЋЋЋЋЋ‡Ц`вЇD44ўўўў''ивЇhвЇФ1111гЇвЇп$x;Ј[žžžžžŒбЇЖџџџџџџџџџџџџЫЫЫЫ0гЇРвЇрАБЂкЎЎЎЎЎdboћћћћhгЇгЇсАБЂкљљљљљsysserversЌЌЌЌФИгЇ0гЇт,XЁЂлOOOOOmasterdbosysservers 0xдЇhгЇу XЁЂ%%%%%(S р@2˜U“@фдЇ<ЪІ”дЇ*\еЇppppШдЇИгЇф*x;Јъ ѕѕѕѕѕmasterdbosysservers    ьдЇ@еЇxдЇхXXЁЂЗ^HQQQQжЇШдЇц XЁЂддддд(S р@2˜U“ М!ЖlжЇdЪІжЇ*ŒЪІPжЇ@еЇч*x;Јъ IIIIImasterdbosysserversaaШжЇжЇшXXЁЂЗѕѕѕѕѕ^H    зЇPжЇщАБЂкUUUUUsrvstatus^8зЇШжЇъАБЂкЊЊЊЊЊsrvstatusџџџџp˜зЇзЇы@x;Ј- РРРРР(044ДзЇ••••азЇ8зЇьx;ЈЧ еееееsrvstatus€€€€_ иЇ˜зЇэАБЂк22222@statvaluegggg”PиЇазЇю$x;Ј $9НDйZ44кккк˜иЇиЇя$x;Ј еееееTзЇ$иЇD1œ44€€€€аиЇPиЇ№АБЂкббббб@statvalue„„„„йЇ˜иЇё АБЂкvvvvv@fSet####$HйЇаиЇђ$x;Ј 00000ДЪІ<`аŒ88 eeeeйЇйЇѓ$x;Ј ЦЦЦЦЦќЪІйЇH88 ““““ъЋјйЇHйЇєDx;Ј зззззtпЇDЫІ$€444@кЇ‚‚‚‚ЈйЇ0кЇйЇѕx;ЈЕ ЊЊЊЊЊsrvstatusџџџџpкЇјйЇіАБЂк55555srvcollation````ИкЇ0кЇї(x;Ј6  оЇ]88 IIII№кЇpкЇјАБЂк@optnameNNNNЈЧ œ@лЇИкЇљ*АБЂйЂЂЂЂЂcollation compatibleїїїїˆлЇ№кЇњ(x;Јп џџџџџлЇЇЇа4ЄлЇЊЊЊЊРлЇ@лЇћФљІз,,,,,collation compatibleyyyy@aмЇˆлЇќ$x;Ј Є/Н\лЇD‡hh YYYY8мЇРлЇ§ АБЂкžžžžž@fSetЫЫЫЫ\мЇ€мЇмЇў(x;Јџ vvvvvac00œмЇ####ЈмЇ8мЇџФљІзБББББффффsy№мЇ€мЇ$x;Ј ќќќќќ<`аќЫІe‡hh ЉЉЉЉ (нЇЈмЇx;ЈЯ ­­­­­млЇФЫІˆ јјјјpнЇ№мЇ(x;Ј3 ]]]]]88 ЈнЇ(нЇXЁЂx)))))ФмЇeˆ ||||hнЇ№нЇpнЇ$x;Ј  нЇ,пЇGGGGІBBBB8оЇЈнЇ$x;Ј DнЇФнЇxxxxІШШШШvaxоЇ№нЇАБЂкўўўўўsrvcollationЋЋЋЋ4иоЇ8оЇ@x;Ј- ььььь(088 TзЇєоЇЙЙЙЙпЇxоЇx;ЈЧ зззззsrvcollation‚‚‚‚XпЇиоЇ $x;Ј ъъъъъ”оЇјоЇІПППП№оЇРпЇпЇ Dx;Ј ь ЖŒкЇџџ€488 мпЇXXXX ЖXпЇ x;ЈЕ EEEEEsrvcollation(РЇ`СƒџцЯwрEh0XЕcreate procedure sp_bindrule --- 1996/08/14 15:02 @rulename nvarchar(776), /* name of the rule */ @objname nvarchar(517), /* table or usertype name */ @futureonly varchar(15) = NULL /* column name */ as declare @ruleid int /* id of the rule to bind */ declare @futurevalue varchar(15) /* the value of @futureonly that causes ** the binding to be limited */ declare @vc1 nvarchar(517) ,@tab_id integer ,@cur_tab_id integer ,@colid smallint ,@xtype smallint ,@xusertype smallint declare @UnqualRule sysname ,@QualRule1 sysname ,@QualRule2 sysname ,@QualRule3 sysname ,@UnqualObj sysname ,@QualObj1 sysname ,@QualObj2 sysname ,@QualObj3 sysname set cursor_close_on_commit off set nocount on select @futurevalue = 'futureonly' /* initialize @futurevalue */ /* ** When a default or rule is bound to a user-defined datatype, it is also ** bound, by default, to any columns of the user datatype that are currently ** using the existing default or rule as their default or rule. This default ** action may be overridden by setting @futureonly = @futurevalue when the ** procedure is invoked. In this case existing columns with the user ** datatype won't have their existing default or rule changed. */ -- get name parts -- select @UnqualRule = parsename(@rulename, 1), @QualRule1 = parsename(@rulename, 2), ! @QualRule2 = parsename(@rulename, 3), @QualRule3 = parsename(@rulename, 4) select @UnqualObj = parsename(@objname, 1), @QualObj1 = parsename(@objname, 2), @QualObj2 = parsename(@objname, 3), @QualObj3 = parsename(@objname, 4) IF (@UnqualRule is NULL OR @QualRule3 is not null) begin raiserror(15253,-1,-1,@rulename) return (1) end IF (@UnqualObj is NULL OR @QualObj3 is not null) begin raiserror(15253,-1,-1,@objname) return (1) end ------------------ Verify database. if ((@QualObj2 is not null and @QualObj1 is null) or (@QualRule2 is not null and @QualRule2 <> db_name())) begin raiserror(15077,-1,-1) return (1) end /* ** Check that the @futureonly argument, if supplied, is correct. */ if (@futureonly IS NOT NULL) begin select @futureonly = lower(@futureonly) begin if (@futureonly <> @futurevalue) begin raiserror(15106,-1,-1) return (1) end end end /* ** Check to see that tie rule exists and get its id. */ select @ruleid = id from sysobjects where id = object_id(@rulename) and xtype='R ' --rule object 7 if @ruleid is NULL begin raiserror(15017,-1,-1,@rulename) return (1) end /* ** If @objname is of the form tab.col then we are binding to a column. ** Otherwise its a datatype. In the column case, we need to extract ** and verify the table and column names and make sure the user owns ** the table that is getting the rule bound. */ if @QualOaj1 is not null begin if (@QualObj2 is not null) select @vc1 = QuoteName(@QualObj2) + '.' + QuoteName(@QualObj1) else select @vc1 = QuoteName(@QualObj1) select @tab_id = o.id, @colid = c.colid, @xtype = c.xtype from sysobjects o, syscolumns c where c.id = object_id(@vc1,'local') and c.name = @UnqualObj and o.id = c.id and o.xtype='U ' /*Check that table and column exist*/ if @tab_id is null begin raiserror(15104,-1,-1,@QualObj1,@UnqualObj) return (1) end /) ** If the column type is image, text, or timestamp, disallow the bind. ** Rules can't be bound to image, text, or timestamp columns. ** The types are checked in case ** there is a user-defined datatype that is an image or text. ** User-defined datatypes mapping to timestamp are not allowed ** by sp_addtype. */ if type_name(@xtype) in ('text', 'ntext', 'image', 'timestamp') begin raiserror(15107,-1,-1) return (1) end BEGIN TRANSACTION txn_bindrule_1 dbcc LockObjectSchema(@vc1) --- UnЋXЯЋі$x;Ј[тттттфЮЋЖџџџџџџџџџџџџЗЗЗǘаЋаЋїАБЂкЏЏЏЏЏ@rmtuserњњњњраЋ`аЋј(x;Ј3 JJJJJЄЙча4 8бЋ˜аЋљ8x;Јг пппппДаЋU(ча4ЬХŠŠŠŠ бЋраЋњHXЁЂWЯЯЯЯЯ4дЋ гЋ'EИ ђ СРЈšššš0вЋ8бЋћpx;ЈW%%%%%мгЋД ` Х(LвЋ@ Сџџџџpppp№вЋ бЋќ `}Ј_ FFFF€вЋ0вЋax;Ј[ ооооо‹‹‹‹ШвЋXвЋb$ЄЈD,,,,,DЙЕ uD44HyyyyвЋ№вЋ€вЋcx;Ј[ јјјјј­­­­OOOO8гЋ0вЋ§$x;Ј[dddddМбЋЖџџџџџџџџџџџџ1111xгЋ№вЋўАБЂкGGGGG@rmtpasswordstaРгЋ8гЋџ(x;Ј3 ttttt@cча4 !!!!дЋxгЋ8x;Јг ”гЋU(ча4„ХNNNN€дЋРгЋHXЁЂWtttttLЪЋьеЋ(Fє 4С!!!!еЋдЋpx;ЈWŽŽŽŽŽLзЋД ` Х(,еЋ@ СџџџџллллаеЋ€дЋ `}Ј_LLLLLr""""реЋшдЋpx;ЈWчччччиЋhhД ` Х(ќеЋ@ СџџџџжЋеЋ$x;Ј[†††††œдЋ_ѕЖџџџџџџџџџџџџггггHжЋаеЋАБЂкИИИИИ@statusээээxжЋжЋАБЂкккккк@statusРжЋHжЋ(x;Јџ     88 мжЋ]]]]шжЋxжЋФљІзœœœœœ€ЩЩЩЩ0зЋРжЋ $x;Ј NNNNNхЋ”жЋbi88 ктˆзЋшжЋ 8x;Јг LхЋ(U(444Хдддд№зЋ0зЋ HXЁЂWuuuuuдйЋ\йЋ*IFОдŒ €иЋˆзЋ px;ЈW­­­­­г оД ` Х(œиЋдџџџџјјјј@йЋ№зЋ  `}Ј_ВВВВВнЋЬЬЬЬPйЋXиЋ px;ЈW66666Д ` Х(lйЋЪџџџџччччˆйЋ€иЋ$x;Ј[ЁЁЁЁЁ иЋ_TЖџџџџџџџџџџџџєєєєИйЋ@йЋАБЂк|||||master)))) кЋˆйЋHXЁЂWщщщщщ4ЋЛŒлЋ+LР4ХXкЋММММАкЋИйЋpx;ЈWЬЁЛФЊЛџџџџД ` Х(ЬкЋ@ ХџџOOOOpлЋ кЋ `}Ј_§§§§§„мЋ оЋW'''''4ЂЛŒЁЛД ` Х(lлЋ@ РџџџџrrrrмЋРкЋ% `}Ј_#####ЈЈЈЈИлЋАкЋ$x;Ј[lllll<кЋЖџџџџџџџџџџџџ9999рлЋpлЋАБЂкdboOOOOмЋИлЋАБЂкwwwwwsysxlogins""""ЋhмЋрлЋ,XЁЂлчччччmasterdbosysxloginsВВВВH(нЋмЋ XЁЂѕѕѕѕѕ!S  р@2˜U“@”нЋTчЋDнЋ* оЋ    xнЋhмЋ*x;Јъ masterdbosysxloginsШШШШЦШШШШ№нЋ(нЋXXЁЂЗam^HQQQQАоЋxнЋ XЁЂттттт!S  р@2˜U“ DЇЛпЋ|чЋЬоЋ*ЄчЋЗЗЗЗпЋ№нЋ*x;Јъ uuuuumasterdbosysxlogins xпЋАоЋXXЁЂЗššššš ё^HЯЯЯЯЈпЋпЋАБЂкїїїїїxstatusЂЂЂЂ  ЛxпЋАБЂкоооооxstatus‹‹‹‹ФљІзPPPPPtа4УУУУ`‚‚EF аЗРЕY"чžE E  E  E  E  E  E E I I  I   I  I  I  I  I I I I` I I I  I  I  I  I жз I  I №єё Iђїѓ IЉЊ 3ћ€! 3ћ€! 3ћ€! Хlu"  lu"  lu"  lu"  lu" ЅCi# ЅCi#  ЅCi#  ЅCi#  ЅCi#  рѓ‡5 рѓ‡5  рѓ‡5  рѓ‡5  H€›a H€›a  ХH€›a  H€›a  К‘ mК‘ К‘ К‘ ХтВF ХтВF ХтВF я+Ыж\ +Ыж\ +Ыж\ Х+Ыж\ Х+Ыж\  Ћ+Ыж\  +Ыж\  ЊЁSN ЊЁSN СЁ\ ЮЮСЁ\  ХСЁ\  ЋСЁ\  ХСЁ\  [:х•]  :х•]  :х•]  :х•]  Х:х•]  :х•]  :х•] /хQr` ЁхQr` 8vfa zzvfa ˜WšZb WšZb WšZb WšZb ХWšZb ЙОNc ОNc 5Џџ=y F-•D  F-•D ХF-•D  F-•D ХcтYI  ббcтYI cтYI  pcтYI же*BK  Хе*BK Йе*BK  е*BK ХGs*M  нGs*M Gs*M  ббGs*M ХђпP  ЙђпP РђпP  `ђпP •ЫT  •ЫT HЙПU ‚HЙПU Х:х•] ЌЌ:х•]  :х•] s Š^вs Š^Хs Š^ЙЌ-~_Ќ-~_ХЌ-~_хQr`ŠхQr`ХхQr` хQr` vfavfaХvfa ivfa WšZb WšZb WšZb `WšZb 4WšZb 55WšZb †ОNc ХОNc ХОNc ОNc ХОNc sОNc Џџ=y––Џџ=yЧЏџ=yХЏџ=yЏџ=yЏџ=yЏџ=y ХЏџ=yiЏџ=yzѓžzѓž†zѓžЏzѓžХzѓžuzѓžХzѓžpвX‚1вX‚1ХвX‚1вX‚1вX‚1вX‚1rвX‚1вX‚1вX‚1ХвX‚1эвX‚1hвX‚10вX‚1œвX‚1вX‚1вX‚14гž:Хгž: Хгž: гž:љгž:Хгž:oгž:гž:гž:Ягž: 8гž:Хгž:ššгž: ‹гž:Хгž: Хгž:гž:гž:Хгž:Хгž: гž:чгž:!вгž:hгž:""гž:Kгž:#гž:гž:$гž:Хгž:%sгž:гž:&гž:гž:'гž:!гž:(гž:Хгž:)ttгž:/гž:Хгž: Хгž: yyгž:гž: гž:ќгž:гž:>гž:Хгž: гž:гž:гž: Хгž:aгž: гž:гž:uгž:Ягž:гž: гž:гž:!гž:uгž:"гž:гž:#Сгž:гž:$гž:гž:%гž:rF-•D  F-•D ЈF-•D   F-•D рcтYI  0cтYI 0cтYI  €cтYI `е*BK  је*BK ие*BK  е*BKppppppˆ А ˜ € 8 P h Ш x ` H 0  ш и №  Р а И   ˆ p X @ (  ј р Ш А ˜ € h P 8  № и Р Ј  x ` H 0  шаИ(јрШшА˜€Иа@XhP(р ј 8 №и(рјРЈА€Ш˜x` HЈ 0шP h8аИ ˆpX№Ри@(`ЈxјрША˜€hP8 №иРЈx`H00HшаИ ˆpX@(љЌ_Хx+о‘DїЊ]УvB Ÿ"$žбГА f$œеЄПЭ&ЦIЇ>@queue_messages_1035150733&џm›?2ServiceBrokerQueue*Х6:sp_ActiveDirectory_Obj*Œп5:sp_ActiveDirectory_SCP*SЛ)4>sp_ActiveDirectory_Start*П&nTsp_add_data_file_recover_suspect_db*†z Jsp_add_file_recover_suspect_db*јJbRsp_add_log_file_recover_suspect_db*ЕЃН,:sp_add_server_sortinfo*юЧБ->sp_add_server_sortinfo75*R2sp_approlepassword**…AT&sp_attach_db*cЉ5U>sp_attach_single_file_db*2Еы&sp_autostats*fДc2sp_bcp_dbcmptlevel*еёW(sp_bindefault*X$sp_bindrule*$сС *sp_bindsession*~вЯH$sp_blockcnt*^„o$sp_catalogs*`š/2sp_catalogs_rowset*Рl6sp_certify_removable*7жC8sp_change_users_login*p7ЪD.sp_changedbowner*ўюсB*sp_changegroup*тВF6sp_changeobjectowner*aV/8Fsp_check_constbytable_rowset*я G6Dsp_check_constraints_rowset*‡H2sp_check_removable*Љ[ОEDsp_check_removable_sysusers*G:Y(sp_checknames*Џџ=y6sp_column_privileges*{94#<sp_column_privileges_ex*вX‚1Dsp_column_privileges_rowset*“}"sp_columns* ёK!(sp_columns_ex*}Х^40sp_columns_rowset*€^њY&sp_configure*ђІт[4sp_create_removable*–)Њ",sp_createorphan*Є§г*sp_createstats*,§ sp_cursor*­sh*sp_cursor_list*@Pё*sp_cursorclose*˜Ед3.sp_cursorexecute*ytх*sp_cursorfetch*˜й(sp_cursoropen*ыМЭ,sp_cursoroption*_‘р2.sp_cursorprepare*бйШ40sp_cursorprepexec* ўМ52sp_cursorunprepare*н!Ш0sp_cycle_errorlog*йі~&sp_databases*щiЧ.sp_datatype_info*Z=(sp_db_upgrade*)?ЌK*sp_dbcmptlevel*џ4wK>sp_dbfixedrolepermission*№ИJ$sp_dboption*Й‚юZ$sp_dbremove*бэ( sp_ddopen*вц-&sp_defaultdb*Qік.2sp_defaultlanguage*me +&sp_denylogin*+Ыж\"sp_depends*7e2sp_describe_cursor*;++fBsp_describe_cursor_columns*tOg@sp_describe_cursor_tables*dяЪ]&sp_detach_db*П^*sp_diskdefault*‹`d8&sp_dropalias*S‚@*sp_dropapprole*ж7Г_(sp_dropdevice*Ь{о 4sp_dropextendedproc*ЅCi#<sp_dropextendedproperty*oё4<&sp_dropgroup*ф нW8sp_droplinkedsrvlogin*PАE&&sp_droplogin*\Ї`*sp_dropmessage*ЯMž#*sp_droporphans*Єb2sp_dropremotelogin*6Э@;$sp_droprole*ХЪэA0sp_droprolemember*U0Q(sp_dropserver*У>У06sp_dropsrvrolemember*H€›a$sp_droptype*|6$sp_dropuser*Q/џ"<sp_enum_oledb_providers*‡3 .sp_enumerrorlogs*нZь$sp_eventlog*{/"sp_execute*а“3,(sp_executesql*bc L@sp_fallback_MS_sel_fb_svr*OjА$sp_fixindex*Эњ—sp_fkeys*гž::sp_foreign_keys_rowset*э%*sp_foreignkeys*Шœ­[4sp_fulltext_catalog*:х•]2sp_fulltext_column*xЙZ6sp_fulltext_database*0бX4sp_fulltext_getdata*VTХY4sp_fulltext_service*СЁ\0sp_fulltext_table*НšC}(sp_getapplock*]Ж!,sp_getbindtoken*њБ0sp_GetMBCSCharLen*|FЅ7.sp_getschemalock*nЋŸ3.sp_grantdbaccess*Тј-((sp_grantlogin*gСŠwsp_help*s Š^@sp_help_fulltext_catalogs*Ќ-~_Nsp_help_fulltext_catalogs_cursor*WšZb>sp_help_fulltext_columns*ОNcLsp_help_fulltext_columns_cursor*хQr`<sp_help_fulltext_tables*vfaJsp_help_fulltext_tables_cursor*КШƒc0sp_helpconstraint*-Wn sp_helpdb*ЦƒJ2sp_helpdbfixedrole*f{ѕn(sp_helpdevice*>ФЦ 4sp_helpextendedproc*ŸŸщo$sp_helpfile*иУнp.sp_helpfilegroup*шбq&sp_helpgroup*МTЎt&sp_helpindex*œЭ)V,sp_helplanguage*rУєU8sp_helplinkedsrvlogin*J Цr"sp_helplog*ƒ0Кs(sp_helplogins*ЊЁSN*sp_helpntgroup*h 2sp_helpremotelogin*q}_M$sp_helprole*8YkL0sp_helprolemember* х~x(sp_helprotect*9ŸU(sp_helpserver*Ё+$sp_helpsort*кO"sp_helpsql*ЄІG*sp_helpsrvrole*ьŽI6sp_helpsrvrolemember*ѕxЂu&sp_helpstats*й sy$sp_helptext&8’@@queue_messages_1067150847:оД’nFюЪ˜nF$ьРštF"юЦ”tDњОr4цІŠb4жЊ‚RъД‚N$ъЬЈh@њЬlHъК–d:ъВŒPєЪЄzTв ~X&рМ˜Z0к Д „ R " є Ш   v H  є д Њ ~ J $ є Ь Њ f * є Ь ˆ V  Ь–l>аžzV,рЎˆJ$ђЦЄxV"ќЮЌ|T0њШЄj8ьЎt"и„F в ^`СEWЇв‰F@0H|ŒјЩДl===GAutoCreatedLocalLOCALr0*eQP РЗ™U“ Tsp_addremotelogin0*Ž2$RP РћšU“ Psp_serveroption0*ИTABLESs0*!іeV   [šU“ TTABLE_CONSTRAINTSledb_databaseфРœ`Pјќ Д ,h а$ |м (€ и( „Ь ,x д „М h ИД `tа 0| œи$ 8€мШ,Œhи@єˆ№4Є8м\ф„ŒМ0pЬt,аД„(Tи|ьЬ€4„ф˜P Ќ` ZEіг‰=^в8фДО`СE–hд‰Vмя$šU“лл Д:E;С ;NГ:ШШ§ъуAР6D€C§ъ“AР@€@Xш1tЯ"}ЦT“Цё"[Лш+`‹Ўз-^‰ШџD…Кя&UА§@ ƒ Ш ѕ . c Š б ў 1 n — к > s І с  M Œ С ў 3j™Шџ&E‚Ћи <}Вэ,In‘Жя9bР.]|—ОнEpЅаџH‹Р :]Ђ§X}œЭь'L‹Мп;~›фDsœУъ2]˜ѓ:Ан*Qv›вѓ8[АёO€Їдё E p Ё р !@!u!Ж!ѕ!("m"Ј"л"#=#x#Е#ђ#+$\$‰$а$§$0%y%Д%п%&S&v&“&И&ѕ&('M'f'‰'Ф'џ'((S(~(›(@@0€?@€?EAdd extended procedures0€?€?€?EAdd member to dbcreator0€?€?€?KAdd member to processadmin0€?€?€?IAdd member to serveradmin0€?€?€?CAdd member to sysadmin0€?€?€?[Add/drop to/from db_backupoperator0€?€?€?SAdd/drop to/from db_datawriter0€?€?€?[Add/drop to/from db_denydatareader0€?€?€?IAdd/drop to/from db_owner0€?€?€?YAdd/drop/configure linked servers0€?€?€?5affinity64 mask0@@€?€??ALL SETTABLE OPTIONS0€?€?€?3ALTER DATABASE0€?€?€?+ANSI nulls0€?€?€?1ANSI warnings0€?€?€?9ansi_null_dflt_on0€?@@€?5AP: application0@@€?+arithabort1€?€?€?-auto create0€?€?€?Cauto update statistics0@@@€?5BACKUP DATABASE0€?€?€?+BACKUP LOG0€?€?€?#binary0€?€?€?)Brazilian0@@€?-BULK INSERT0€?€?€?)bulkadmin0€?€?€?1c2 audit mode0€?€?€?+CHECKPOINT0€?@@€??collation compatible0€?€?€?7COMPATIBLE TYPES0€?€?€?Econcat null yields null0€?€?€?ACONFIGURATION OPTIONS0@@€?5CREATE DATABASE0€?€?€?5Create Function0€?€?€?7Create Procedure0€?€?€?/Create Table0€?€?€?[Create/delete/modify system tables0@€=€?MCross DB Ownership Chaining0€?€?€?Ccursor close on commit0€?€?€?Ccursor_close_on_commit0€?€?€?ED : default (maybe cns)0€?€?€?-data access0€?€?€?9Database Creators0€?€?€?5DATABASE STATUS0€?€?€?'datetimn0€?€?€?GDB Access Administrators0€?€?€?-db chaining0€?€?€?3DB Data Writer0€?€?€?=DB Deny Data Reader0€?€?€?)DB Owners0€?€?€?Cdbcc change 'on' rules0@€?€?/dbcc checkdb0@@@5dbcc checkident0@5dbcc checktable0@€?€?3dbcc dbreindex0€?€?€?9dbcc freeproccache0€?€?€?9dbcc outputbuffer0@€?€?3dbcc proccache0@@@€??dbcc show_statistics0@@5dbcc showcontig0@€?€?=dbcc shrinkdatabase0@5dbcc shrinkfile0€?€?€?7dbcc updateusage0€?€?€?/dbo use only0€?€?€?/default disk0€?€?€?7default language0€?€?€?'deferred0@@€?DENY0€?€?€?=Disk Administrators0€?€?€?)diskadmin0€?€?€?-Distributed0€?€?€?1DROP DATABASE0€?€?€?3emergency mode0€?@@€?AEXECUTE any procedure0€?€?€?5Extend database0€?€?€?;Extent Lock - Next0€?€?€??Extent Lock - Update0€?€?€?FIL0€?€?€?%Finnish0€?€?€?#floatn0€?€?€?%foreign0€?€?€?9full text enabled0@@@€?!GRANT0€?€?€?)Grant_WGO0€?€?€?)Hungarian0€?€?€?IDX0€?€?€?Aignore duplicate keys0€?€?€?Aimplicit_transactions0€?€?€?-INDEX TYPES0€?@@€?/int high bit0€?€?€?intn0€?@€?IU0€?€?€?'japanese0€?€?€?KILL0€?€?€?%L : log0€?€?€?Clazy schema validation0€?€?€?+Lithuanian0@€?€?5LOCK REQ STATUS0€?€?€?+LOCK TYPES0€?€?€?/logical disk0€?€?€?Imax degree of parallelism0€?€?€?Cmax text repl size (B)0€?€?€?5media retention0€?€?€?Imin memory per query (KB)0€?€?€?1missing files0€?€?€?#moneyn0€?€?€?Enetwork packet size (B)0€?€?€?[Nm DELETE permission on any object0€?€?€?[No SELECT permission on any object0€?€?€?%nocount0€?€?€?none0€?€?€?1not recovered0€?€?€?NULL0€?€?€?;numeric_roundabort0€?€?€?%offline0€?€?€??P : stored procedure0€?€?€?1physical disk0€?€?€?#Polish0€?€?€?/pre recovery0€?€?€?-primary key0€?€?€?CProcess Administrators0€?€?€?pub0€?€?€?Iquery governor cost limit0€?€?€?9quoted identifier0€?€?€?'R : rule0€?€?€?/RangeIn-Null0€?€?€?)RangeIn-U0€?€?€?'RangeS-S0€?€?€?'RangeX-S0@@€?)read only0€?€?€?real0€?€?€?+recovering0€?€?€?;recursive triggers0€?€?€?[REFERENCES permission on any table0€?€?€?Gremote login timeout (s)0€?€?€?Gremote query timeout (s)0€?€?€?/REPORT TYPES0€?` ZEіе‰M^д8к О`Ђ4XІжЊ0б`P4MТ!L  lengthbinary0)hљџљџ†Ž*@@@@Fbitbit0)Џц"BCDJRchar''lengthchar0)=  €ˆ JKLL\datetime''datetime0)=] €ˆ JKLL\datetime''datetime0):  €ˆ TUVVpsmalldatetime''smalldatetime0):] €ˆ TUVVpsmalldatetime''smalldatetime0)> @(DDDDNfloatfloat0)>5@(DDDDNfloatfloat0); @(BBBBJrealreal0);@(BBBBJrealreal0)z   (NOOOcsmallmoney$smallmoney0)<  (DEEEOmoney$money0)8 (@@@@Fintint0)4 (JJJJZsmallintsmallint0)4 (JJJJZsmallintsmallint0)0њџ њџ(HHHHVtinyinttinyint0)#џџџџџџџџџџЦˆ"BCDDLtext''text0)Ѕ§џ§џц…"LNNXjvarbinary0xmax lengthvarbinary0)Ї  ц"HIJTbvarchar''max lengthvarchar0)"ќџџџџџџџќџЦŒ"DFFFPimage0ximage0)j& (HHHWedecimalprecision,scaledecimal0)l& (HHHWenumericprecision,scalenumeric0)8 (RRRRjint identityint identity0)4 (\\\\~smallint identitysmallint identity0)0њџ њџ(ZZZZztinyint identitytinyint identity0)j& (^^^m‘decimal() identityprecision,scaledecimal() identity0)l& (^^^m‘numeric() identityprecision,scalenumeric() identity0)НўџўџЦ"LNNN`timestamp0xtimestamp0)$ѕџ$ѕџЦ‰*Z[\\|uniqueidentifier''uniqueidentifier0)яјџјџц"DFGMWncharN''lengthnchar0)чїџїџц"JLMWgnvarcharN''max lengthnvarchar0)cіџўџџўџџіџЦˆ"DFGGQntextN''ntext0)ћџ ћџ(FFFFRbigintbigint0)ћџ ћџ(XXXXvbigint identitybigint identity0)bjџ@ @jџŽ"PPPPfsql_variantsql_variant@џџјзЇЇа4ЖЖЖЖHNзxMзCє@ІC>>>>>”MзДMздMзєMзkkkkxNзNзD МшІљ‰‰‰‰‰ZdммммРNзHNзE(МшІFžžžžž|Oз € Р…ЫЫЫЫ`OзxNзF€є@І@щщщщщ@џџ˜з88 @џџ№зЇЇ а4@џџ€з88 @џџизЇЇа4ММММРNзGє@ІCлллллмNзќNзOз88 lTзxTзTзŒФљІзжжжжжƒƒƒƒЋAРTзPTз$x;ЈЋtttttмTзІ88 !!!!X‘ЧUзxTзŽ(x;Ј—aaaaaЋј88 4444pUзРTзDx;ЈЋдWзŒUзЉЉЉЉ€488 DDDD ИUзUз(x;ЈЋzzzzzдUзl%АF88 ШвЇ////VзpUз‘$x;ЈЋоооооVзŒVз3333І88 ‹‹‹‹HVзИUз’(x;Ј—;;;;;88 dVзnnnnpVзVз“ФљІз*****ДVзИVзHVз”$x;ЈЋIIIIIдVзDWзЛЛЛЛІ88 WзpVз•(x;Ј—ЌЌЌЌЌ88 Wзљљљљ(WзИVз–ФљІзPPPPPpWзWз—$x;ЈЋŒWзP%АІ88 WWWWJJJJИWз(Wз˜(x;Ј—ppppp—і88 %%%% XзpWз™Dx;ЈЋ„„„„„$ЌЯ 0 begin raiserror(15002,-1,-1,'sp_fulltext_database') return 1 end -- CHECK PERMISSIONS (must be a dbowner) -- if (is_member('db_owner') = 0) begin raiserror(15247,-1,-1) return 1 end -- CHECK DATABASE MODE (must not be read-only) -- if (DATABASEPROPERTY(db_name(), 'IsReadOnly') = 1) begin raiserror(15635, -1, -1, 'sp_fulltext_database') return 1 end -- CLEAR SYSDATABASES BIT AND PROPAGATE W/ CHECKPOINT (for both enable & disable) -- select @dbid = db_id() update master.dbo.sysdatabases set status2 = status2 & ~536870912 where dbid = @dbid checkpoint -- DROP ALL CATALOGS WITH THIS DATABASE (for both enable/disable) -- DBCC CALLFULLTEXT ( 7, @dbid ) -- FTDropAllCatalogs ( "@dbid" ) if @@error <> 0 return 1 -- DELETE ALL THE CHANGE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify if @action = 'emable' begin -- CREATE CATALOGS -- declare ms_crs_ftcat cursor static local for select name, path from sysfulltextcatalogs open ms_crs_ftcat fetch ms_crs_ftcat into @ftcat, @path while @@fetch_status >= 0 begin DBCC CALLFULLTEXT ( 16, @ftcat, @path ) -- FTCreateCatalog( @ftcatid, @path ) if @@error <> 0 return 1 fetch ms_crs_ftcat into @ftcat, @path end deallocate ms_crs_ftcat declare @vc1 nvarchar(517) -- BEGIN TRAN begin tran -- ACTIVATE TABLES/URLs -- declare ms_crs_ftind cursor static local for select ftcatid, id from sysobjects where (ftcatid <> 0) open ms_crs_ftind fetch ms_crs_ftind into @ftcatid, @objid while @@fetch_status >= 0 begin DBCC CALLFULLTEXT ( 5, @ftcatid, @objid ) -- FTAddURL( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- CHECK TABLE FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin -- ERROR IF DATABASE IS IN SINGME USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin select @objname = object_name(@objid) raiserror(15638, -1, -1, @objname) select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwnerId'))) + '.' + quotename(@objname) -- LOCK TABLE -- dbcc lockobjectschema(@vc1) if @@error <> 0 goto error_abort_exit -- TURN OFF CHANGE TRACKING ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~192 where id = @objid fetch ms_crs_ftind into @ftcatid, @objid continue end -- START A FULL CRAWL FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end -- CHECK TABLE FOR AUTOPROPAGATION - if ObjectProperty(@objid, 'TableFulltextBackgroundUpdateIndexOn') = 1 begin DBCC CALLFULLTEXT ( 10, @ftcatid, @objid ) -- FTEnableAutoProp( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exiu end fetch ms_crs_ftind into @ftcatid, @objid end deallocate ms_crs_ftind -- SET SYSDATABASES BIT -- update master.dbo.sysdatabases set status2 = status2 | 536870912 where dbid = @dbid -- COMMIT TRAN -- commit tran -- CHECKPOINT TO PUSH SYSDATABASES BIT TO MEMORY -- checkpoint if @@error <> 0 goto error_abort_exit end -- SUCCESS -- return 0 -- sp_fulltext_database error_abort_exit: rollback tran return 1 -- sp_fulltext_database }}name((((ІЖpАврЏв?@x;Ј- wwwww2˜(0 ччFа4џџD­вŒАв""""˜АвАв@x;ЈЧ ŠŠŠŠŠnameппппРАвpАвAАБЂйЯЯЯЯЯ%ššššxАвБв˜АвB(x;Јп ВВВВВ(0ЇЇа4$Бвчччч0БвРАвCФљІзФФФФФ%‘‘‘‘:hБвБвDАБЂк|||||@configname))))АБв0БвE$x;Ј мАвЬЉЛ БвЇЇ$а4IIIIиБвhБвFАБЂй%@@@@Њ ВвАБвG(x;Јп |||||РБвЇЇа4<Вв))))HВвиБвHФљІзrrrrr%''''(Вв ВвI$x;Ј „БвєБвalЇЇ%а4ХХХХ8ВвиВвHВвJ(x;Ј ўўўўў,АвЄ|ШF88 (бЇЋЋЋЋ ГвВвK(x;Јџ 00<ГвХХХХHГвиВвLФљІзOOOOГвГв ГвM$x;Ј ПППППЌВвь|Шghhhъъъъ ШГвHГвNx;ЈЯ ФЏвdГв0(ˆ PPPPјГвГвOАБЂкAAAAAnumberXДвШГвP@x;Ј- ћћћћћ00(088  tДвЎЎЎЎˆДвјГвQ x;ЈЧ ЌЌЌЌЌnumberљљљљДДвАДвXДвRАБЂкєєєєєcЁЁЁЁ;ЉрДвˆДвSАБЂк(((((config}}}}@ЕвАДвTXЁЂ\\\\\c Я hЕврДвU@x;Ј- љљљљљрДв(044 „ЕвЌЌЌЌ˜ЕвЕвV x;ЈЧ configFFFF`ЕваЕвhЕвWXЁЂтуууууШЕвЖ$ЕвcЖЖЖЖвЖв˜ЕвX$x;Ј rrrrrtЄв\}Шhh''''­КPЖваЕвYx;ЈЯ UUUUUЌГвьЕвЖвˆ ­xЖвЖвZАБЂкcкккк8ЖвЈЖвPЖв[АБЂкєєєєєstatusЁЁЁЁ0аЖвxЖв\XЁЂжжжжжcƒƒƒƒ0ЗвЈЖв]@x;Ј- WWWWW­V(044 $Ев LЗв`ЗваЖв^ x;ЈЧ xxxxxstatus----ЇЇЇЇ˜Зв0Зв_XЁЂт ЗвЗьЖвc^^^^рЗв`Зв`(x;Јџ @@@@@88 ќЗвИв˜ЗвaФљІзTTTTPИврЗвb$x;Ј јјјјјЄ}ШДЗвœ88 ­­­­GGGG˜ИвИвc(x;Јџ ЙЙЙЙЙЄИв00ДИвььььРИвPИвdФљІзaaaaa4444Йв˜Ивe$x;Ј $Ивь}ШXx†hh\\\\МПвHЙвРИвfАБЂкЫЫЫЫЫ@show_advancežžžžЙвЙвg(x;Јџ ˆИв00ЌЙвCCCCИЙвHЙвhФљІзKKKK…™КвЙвi$x;Ј \МЛ4~Ш‡hh MMMMd8КвИЙвjx;ЈЯ мИвМzШˆ TTTT@Мв`КвКвkАБЂкїїїїїcЂЂЂЂ††††Кв8КвlАБЂк+++++status~~~~ИКв`КвmXЁЂ"""""cwwwwЛвКвn@x;Ј- rrrrrp`(044  4Лв''''HЛвИКвo x;ЈЧ ŒŒŒŒŒstatusйййй``€ЛвЛвpXЁЂт•••••xЛвЙдКвcРРРР ШЛвHЛвq(x;Јџ UUUUU§§§§88 фЛв№Лв€ЛвrФљІзsssss&&&&8МвШЛвs$x;Ј qqqqq|~ШœЛвHЛвœ88 $$$$ЎЎЎЎ€Мв№Лвt(x;Јџ 00œМвuuuuЈМв8МвuФљІзXXXXX №Мв€Мвv$x;Ј \\\\\ МвФ~Шhh (НвЈМвwx;ЈЯ зззззКв,{Ш‰ ‚‚‚‚АШ`Нв№Мвxx;ЈЯ ЗЗЗЗЗмЋвмyШЏЦˆ тттт˜Нв(НвyXЁЂxЭЭЭЭЭ Нв†–ˆ ˜˜˜˜•У›[Ов`НвzHXЁЂWОООООдcвlПвŒfЌДПв.Р,4,РЁвыыыщОв˜Нв{px;ЈWЋЋЋЋЋlcвФbв№ПвД `  Л(ЌОв@ РџџџџўўўўPПвОв| `}Ј_iiiii0˜˜2 88 фrвббббP( вxЃвE0Аh­cƒƒƒƒƒ0˜˜?\Пв88  ŒПвжжжжPАІв( вF<<<<˜ПвОв}$x;Ј[DDDDDОв( вЖџџџџџџџџџџџџЖЖЖЖ `вPПв~Hx;Ј$  вŒaв5џџџџЮ/Ь/NN`Рк{цйb(<0ђІт[Еcreate procedure sp_create_removable @dbname sysname = null, /* name of db */ @syslogical sysname = null, /* logical name of system device */ @sysphysical nvarchar (260) = null, /* physical name of system device */ @syssize int = null, /* size of sys device in Meg. */ @loglogical sysname = null, /* logical name of log device */ @logphysical nvarchar (260) = null, /* physical name of log device */ @logsize int = null, /* size of log device in Meg. */ @datalogical1 sysname = null, /* logical name of data device */ @dataphysical1 nvarchar (260) = null, /* physical name of data device */ @datasize1 int = null, /* size of data device in Meg. */ @datalogical2 sysname = null, /* logical name of data device */ @dataphysical2 nvarchar (260) = null, /* physical name of data device */ @datasize2 int = null, /* size of data device in Meg. */ @datalogical3 sysname = null, /* logical name of data device */ @dataphysical3 nvarchar (260) = null, /* physical name of data device */ @datasize3 int = null, /* size of data device in Meg. */ @datalogical4 sysname = null, /* logical name of data device */ @dataphysical4 nvarchar (260) = null, /* physical name of data device */ @datasize4 int = null, /* size of data device in Meg. */ @datalogical5 sysname = null, /* logical name of data device */ @dataphysical5 nvarchar (260) = null, /* physical name of data device */ @datasize5 int = null, /* size of data device in Meg. */ @datalogical6 sysname = null, /* logical name of data device */ @dataphysical6 nvarchar (260) = null, /* physical name of data device */ @datasize6 int = null, /* size of data device in Meg. */ @datalogical7 sysname = null, /* logical name of data device */ @dataphysical7 nvarchar (260) = null, /* physical name of data device */ @datasize7 int = null, /* size of data device in Meg. */ @datalogical8 sysname = null, /* logical name of data device */ @dataphysical8 nvarchar (260) = null, /* physical name of data device */ @datasize8 int = null, /* size of data device in Meg. */ @datalogical9 sysname = null, /* logical name of data device */ @dataphysical9 nvarchar (260) = null, /* physical name of data device */ @datasize9 int = null, /* size of data device in Meg. */ @datalogical10 sysname = null, /* logical name of data device */ @dataphysical10 nvarchar (260) = null, /* physical name of data device */ @datasize10 int = null, /* size of data device in Meg. */ @datalogical11 sysname = null, /* logical name of data device */ @dataphysical11 nvarchar (260) = null, /* physical name of data device */ @datasize11 int = null, /* size of data device in Meg. */ @datalogical12 sysname = null, /* logical name of data device */ @dataphysical12 nvarchar (260) = null, /* physical name of data device */ @datasize12 int = null, /* size of data device in Meg. */ @datalogical13 sysname = null, /* logical name of data device */ @dataphysical13 nvarchar (260) = null, /* physical name of data device */ @datasize13 int = null, /* size of data device in Meg. */ @datalogical14 sysname = null, /* logical name of data device */ @dataphysical14 nvarchar (260) = null, /* physical name of data device */ @datasize14 int = null, /* size of data device in Meg. */ @datalogical15 sysname = null, /* logical name of data device */ @dataphysical15 nvarchar (260) = null, /* physical name of data device */ @datasize15 int = null, /* size of data device in Meg. */ @datalogical16 sysname = null, /* logical name of data device */ @dataphysical16 nvarchar (260) = null, /* physical name of data device */ @datasize16 int = null /* size of data device in Meg. */ as declare @retcode int, @exec_str nvarchar (460), @numdevs int if (not (is_srvrolemember('sysadmin') = 1)) -- Make sure that it's the SA executing this. begin raiserror(15247,-1,-1) return(1) end if @dbname is null or @syslogical is null or @sysphysical is null or @syssize is null or @loglogical is null or @ќУp3­U11111@@@@@@ddddhќУј•вЙp3­UДДДДД№?№?№?№?№?№?ссссрќУ`–вАp3­U№?№?№?(№?№?№?SSSS8oЙШ–вЇp3­U№?№?№?№?№?№?PPPPшnЙ0—вžp3­Uввввв№?№?№?№?№?№?‡‡‡‡HnЙ˜—в•p3­U-----№?№?№?№?№?№?xxxx0mЙX„вŒp3­Ukkkkk№?№?№?,PЛ№?№?№?>>>>pЖ$6Е|5Ед4Е,4Еt;ЕЬ:Е$:Е|9Ед8Е,8Еt'ЖЬ&Ж$&Ж|%Жд$Ж,$ЖtЙЬ~Й$~Й|}Йд|Й@™в˜™вщH3­-<<<<<ЊšџџџџџџяˆЈЉ,lЖЬПiiii˜™в№™втH3­-нннннЊšџџџџџџяˆЈЉˆˆˆˆ№™вHšвлH3­-ЖЖЖЖЖЊšџџџџџџяˆЈЉууууHšв šвдHH1­ХrrrrrЊšџџџџџџяˆЈЉћџџ#@™7d&r8@'''' вP›вГH3­-ЄЄЄЄЄЊšџџџџџџяˆЈЉёёёё0‘вЈ›вЊH3­-99999ЊšџџџџџџяˆЈЉllllР‘в8ˆвЁH3­-ЪЪЪЪЪЊšџџџџџџяˆЈЉŸŸŸŸP’вˆв˜H3­-ˆˆˆˆˆЊšџџџџџџяˆЈЉннннр’вшˆвH3­-НННННЊšџџџџџџяˆЈЉџџџџшшшшLаџџџџ\ž˜/`ЊШЊ 8­ІРРРРРМššœъа|Њџџџџџџячв­••••ШЊиП8­ІЖЖЖЖЖМššœъафЊџџџџџџя”ъвЋуууу0ЊHПј8­ІцццццМššœъаLЊџџџџџџяєчвЇГГГØЊX”вя8­ІЯЯЯЯЯМššœъаДЊџџџџџџячвЄššššX”вР”вш8­ІЇЇЇЇЇМššœъаt”вџџџџџџядш‐ђђђР”в(•вс8­ІЯЯЯЯЯМššœъам”вџџџџџџяtыв šššš(•в•вк8­ІМššœъаD•вџџџџџџя4эвžZZZZ•в`Пг8­ІlllllМššœъаЌ•вџџџџџџяєВ›œ9999аAаƒвР8аs­ПООООО”—š—š0рЭ?ыыыыј•врќУВ8­ІфффффМššœъа–вџџџџџџяtђв–ББББ`–в8oЙЉ8­І33333Мššœъа|–вџџџџџџя”ёв“ffffŒвРПИlЙp3­U     @@@—š@@@ѕѕѕѕИlЙјЊp3­Uѓѓѓѓѓ№?№?№?D%З№?№?№?ІІІІиП@Пp3­UЌЌЌЌЌ@@@”—š@@@љљљљ@П0Њџp3­UUUUUU№?№?№?№?№?№?HП˜Њіp3­U>>>>>№?№?№?№?№?№?kkkk`ППбpH1­Rццццц3WwуДВ>Ф’rї9>z?нс3OєЭЭ>їNqPАd0?13~}—˜>кI’ad ?Рі?є Рxћ?/†Шщыy?IЊEe?z?ЛЖ9L 0?<АŽ\“> ?™7d&r7@ГГГГшўУ§УНp3­U.@.@.@ .@.@.@[[`€zй$икb(A0Шœ­[ЕURLs AS -- declare ms_crs_ftind cursor static local for select id, name from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_crs_ftind into @objid, @tabname while @@fetch_status >= 0 begin -- ERROR ON TABLE IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630, -1, -1, @tabname) goto error_exit end -- SKIP TABLE IF CRAWL ALREADY IN PROGRESS -- if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin select @tabwarn = 1 fetch ms_crs_ftind into @objid, @tabname continue end if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin -- START A FULL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwnerId'))) + '.' + quotename(object_name(@objid)) dbcc lockobjectschema(@vc1) update sysobjects set status = status & ~128 where id = @objid end else begin -- START AN INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 1 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end end -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid fetch ms_crs_ftind into @objid, @tabname end deallocate ms_crs_ftind commit tran end if @action = 'stop' begin declare ms_crs_ftind cursor static local for select id, name from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_crs_ftind into @objid, @tabname while @@fetch_status >= 0 begin -- ERROR ON TABLE IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630, -1, -1, @tabname) return 1 end -- SKIP TABLE IF CRAWL ALREADY STOPPED - NO WARNING -- if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 0) begin fetch ms_crs_ftind into @objid, @tabname continue end -- ERROR IF POPULATE STATUS OF THE TABLE IS CRAWLING AND CT ON if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1) and ((ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 1) or (ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 2)) begin raiserror(15642,-1,-1, @tabname) return 1 end -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- return 1 end fetch ms_crs_ftind into @objid, @tabname end deallocate ms_crs_ftind end if @action = 'rebuild' begin -- RE-CREATE CATALOG (Will first drop) select @path = path from sysfulltextcatalogs where ftcatid = @ftcatid DBCC CALLFULLTEXT ( 16, @ftcat, @path ) -- FTCreateCatalog( @ftcat, @path ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- return 1 end begin tran -- RE-ACTIVATE TABLES/URLs -- declare ms_crs_ftind cursor static local for select id from sysobjects where ftcatid = @ftcatid open ms_crs_ftind fetch ms_crs_ftind into @objid while @@fetch_status >= 0 begin DBCC CALLFULLTEXT ( 5, @ftcatid, @objid ) -- FTAddURL( @ftcat, db_id(), @objid ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- CHECK TABLE FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 and ObjectProperty(@objid, 'TableHasActiveFulltextInd0Шœ­[П ex') = 1 begin -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin select @objname = object_name(@objid) raiserror(15638, -1, -1, @objname) select @vc1 = quotename(user_name(OBJECTPROPERTY(@objid,'OwnerId'))) + '.' + quotename(@objname) dbcc lockobjectschema(@vc1) -- DISABLE FULLTEXT AUTO PROPAGATION (NO ERROR IF ALREADY DISABLED AND -- -- IGNORE ANY OTHER ERRORS) -- DBCC CALLFULLTEXT ( 9, @objid ) -- FTDisableNotify( db_id(), @objid ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- TURN OFF CHANGE TRACKING ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~192 where id = @objid fetch ms_crs_ftind into @objid continue end -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- START A FULL CRAWL FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid end -- CHECK TABLE FOR AUTOPROPAGATION - if ObjectProperty(@objid, 'TableFulltextAutoPropagationOn') = 1 and ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin DBCC CALLFULLTEXT ( 10, @ftcatid, @objid ) -- FTEnableAutoProp( @ftcatid, db_id(), @objid ) if @@error <> 0 begin -- server did an ex_raise - this is unreachable code -- goto error_exit end end fetch ms_crs_ftind into @objid end deallocate ms_crs_ftind commit tran end if(@tabwarn <> 0) begin raiserror(15643, -1, -1) return 0 end return 0 -- sp_fulltext_catalog error_exit: -- 'stop', 'rebuild' never get here, this is only for 'start_full', 'start_incr' -- here we commit the changes for all tables on which the operation succeeded. -- Before 'goto error_exit' is called, schema changes made to table currently -- under cursor must be undone (so far, no schema changes) commit tran return 1 -- sp_fulltext_catalog €0РЮgggg№ЁЕИПˆ$­/#####€™šœъа6„О›,ЁЕџџџџ\ž˜W@Њœ Њ—š0рЭ€vvvvЁЕјmЙ|ˆ$­/"""""€™šœъа5$Н›L Еџџџџ\ž˜WшЊ|Њ—š0рЭ@wwww0 ЕРПyˆ$­/›››››€™šœъа4ФЛ›МšЁџџџџ\ž˜WЊФ Њ—š0рЭ ђђђђЮЮЮЮ$ЈЌLаTLаФWаlWаФwИМVаdVаДuИДUаdцаUаЌTаuИ цаl[а[аTtИdZаФуУДYаlуУYауУTXаМтУdтУУб тУДсУ ТбДСбHfЗрП-`А^­ААААА$›œ—Ё)dfЗДeЖЌ@а($›ЄщЭхххх8ДЫшЊ`А^­ž((((($›Ё 'TДЫќ@а($›}}}}шДЫј Њќ`А^­!ггггг$›œ—Ё %ЕЫќ@а($›††††@ЕЫ€ Њј`А^­$›ФœЁ)\ЕЫДeЖЌ@а($›ЄщЭииии№­Ы№БЕ‡`А^­5$›Ё) ЎЫДeЖЌ@а($›ЄщЭШШШШЈЏЫˆП[`А^­!@@@@@$›ФœЁ %ФЏЫќ@а($›јЎЫ0Пu`А^­ž$›Ё 'ЏЫќ@а($›`нпк лwЈ ]QЅ!0+Ыж\K create procedure sp_depends --- 1996/08/09 16:51 @objname nvarchar(776) /* the object we want to check */ as declare @objid int /* the id of the object we want */ declare @found_some bit /* flag for dependencies found */ declare @dbname sysname /* ** Make sure the @objname is local to the current database. */ select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end /* ** See if @objname exists. */ select @objid = object_id(@objname) if @objid is null begin select @dbname = db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end /* ** Initialize @found_some to indicate that we haven't seen any dependencies. */ select @found_some = 0 set nocount on /* ** Print out the particulars about the local dependencies. */ if exists (select * from syqdepends where id = @objid) begin raiserror(15459,-1,-1) select 'name' = (s6.name+ '.' + o1.name), type = substring(v2.name, 5, 16), updated = substring(u4.name, 1, 7), selected = substring(w5.name, 1, 8), 'column' = col_name(d3.depid, d3.depnumber) from sysobjects o1 ,master.dbo.spt_values v2 ,sysdepends d3 ,master.dbo.spt_values u4 ,master.dbo.spt_values w5 --11667 ,sysusers s6 where o1.id = d3.depid and o1.xtype = substring(v2.name,1,2) collate database_default and v2.type = 'O9T' and u4.type = 'B' and u4.number = d3.resultobj and w5.type = 'B' and w5.number = d3.readobj|d3.selall and d3.id = @objid and o1.uid = s6.uid and deptype < 2 select @found_some = 1 end /* ** Now check for things that depend on the object. */ if exists (select * from sysdepends where depid = @objid) begin raiserror(15460,-1,-1) select distinct 'name' = (s.name + '.' + o.name), type = substring(v.name, 5, 16) from sysobjects o, master.dbo.spt_values v, sysdepends d, sysusers s where o.id = d.id and o.xtype = substring(v.name,1,2) collate database_default and v.type = 'O9T' and d.depid = @objid and o.uid = s.uid and deptype < 2 select @found_some = 1 end /* ** Did we find anything in sysdepends? */ if @found_some = 0 raiserror(15461,-1,-1) set nocount off return (0) -- sp_depends ]0:х•]Еcreate proc sp_fulltext_column @tabname nvarchar(517), -- table name @colname sysname, -- column name @action varchar(20), -- add | drop @language int = null, -- LCID of data in the column @type_colname sysname = null -- column name, valid if colname is img as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- VALIDATE PARAMS -- if @action is null or @action not in )'add','drop') begin raiserror(15600,-1,-1,'sp_fulltext_column') return 1 end -- DISALLOW USER TRANSACTION -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_fulltext_column') return 1 end -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@tabname, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@tabname, @curdbname) return 1 end -- (2) Must be a user table if ObjectProperty(@objid, 'IsUserTable') = 0 begin raiserror(15218,-1,-1 ,@tabname) return 1 end -- CHECK PERMISSION ON TABLE -- if (is_member('db_owner') = 0) AND (is_member('db_ddladmin') = 0) AND (is_member(user_name(ObjectProperty(@objid, 'ownerid'))) = 0) begin raiserror(15247,-1,-1) return 1 end -- CHECK DATABASE MODE (must not be read-only) -- if DATABASEPROPERTY(db_name(), 'IsReadOnly') = 1 begin raiserror(15635, -1, -1, 'sp_fulltext_column') return 1 end -- BEGIN TRAN AND LOCK TABLE -- begin tran dbcc lockobjectschema(@tabname) if @@error <> 0 begin goto error_abort_exit end -- CHECK FOR CATALOG IN SYSOBJECTS -- declare @ftcatid smallint select @ftcatid = ObjectProperty(@objid, 'TableFulltextCatalogId') if @ftcatid = 0 begin raiserror(15606,-1,-1,@tabname) goto error_abort_exit end -- VALIDATE COLUMN NAME (CANNOT BE COMPUTED) -- declare @typename sysname select @typename = type_name(ColumnProperty(@objid, @colname, 'SystemType')) if @typename is null OR ColumnProperty(@objid, @colname, 'IsComputed') = 1 begin raiserror(15104,-1,-1,@tabname,@colname) goto error_abort_exit end -- VALIDATE PARAMETERS if (@action <> 'add' or @typename <> N'image') and @type_colname is not null begin raiserror(15600, -1, -1, 'sp_fulltext_column') goto error_abort_exit end if @action = 'add' begin -- VALIDATE COLUMN TYPE -- if @typename not in (N'nchar',N'nvarchar',N'ntext',N'char',N'varchar',N'text', N'image') begin raiserror(15611,-1,-1,@colname,@tabname) goto error_abort_exit end -- LANGUAGE if @language is null begin -- USE THE SERVER DEFAULT WORD BREAKING LANGUAGE select @language = value from master.dbo.syscurconfigs where config = 1126 end else begin -- VALIDATE @LANGUAGE ARGUMENT if @language < 0 begin raiserror(15600,-1,-1,'sp_fulltext_column') goto erqor_abort_exit end end update syscolumns set language = @language where id = @objid and name = @colname -- IF TABLE HAS ZERO INDEXED COLUMNS (THIS IS THE FIRST COLUMN TO BE ADDED), MARK IT ACTIVE if not exists (select * from syscolumns where id = @objid and (colstat & 16) = 16) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) and (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 0) begin update sysobjects set status = (status | 8) where id = @oajid end -- SET THE BIT FOR THIS COLUMN -- update syscolumns set colstat = colstat | 16 where id = @objid and name = @colname -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn'џџџ0л`]Й create procedure sp_oledb_ro_usrname as begin select substring('NY',status/1024&1+1,1),user_name() from master..sysdatabases where name=DB_NAME() end hѓѓѓѓшљ“€њ“№љ“ѕ(x;ЈЋ˜˜˜˜˜œњ“F чча4ŒаЇЭЭЭЭШњ“8њ“і$x;ЈЋQQQQQфњ“Tћ“І88 Xњ“ћ“€њ“ї(x;Ј— 88 ,ћ“\\\\8ћ“Шњ“јФљІзЬЬЬЬЬ™™™™џџ€ћ“ћ“љ$x;ЈЋ,,,,,œћ“ ќ“І88 yyyyШћ“8ћ“њ(x;Ј—ВВВВВ88 фћ“чччч№ћ“€ћ“ћФљІзЛЛЛЛЛюююю8ќ“Шћ“ќ$x;ЈЋTќ“Іча4HHHH0Р‰˜ќ“№ћ“§@x;ЈЋ„„„„„(0 ча4џџДќ“ббббРќ“8ќ“ўx;ЈЧ МММММnameщщщщ§“˜ќ“џ$x;ЈЋˆˆˆˆˆ$§“e чча4ннннP§“Рќ“ (x;Ј—rЇЇа4l§“ииииx§“§“ ФљІзЅЅЅЅЅ##№№№№Р§“P§“ $x;ЈЋўўўўўм§“ІЋЋЋЋerў“x§“ (x;Ј—sssssкd88 $ў“&&&&0ў“Р§“ ФљІзОООООыыыыxў“ў“ $x;ЈЋћћћћћ”ў“,”ІЎЎЎЎў“Аў“0ў“ x;ЈЋ66666Ьў“ˆ ccccшў“xў“ x;ЈЋвввввџ“Ќ”‰ ‡‡‡‡ \0џ“Аў“ $x;ЈЋ]]]]]Lџ“<”hhTџ“џ“шў“ @x;ЈЋ(0 ЏЏа4 Ќџ“ииии ”0џ“ x;ЈЧ xtype****“qqqqА8хЌ d`|н,амb 0СЁ\Е @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- DELETE SYSDEPENDS ENTRIES FOR IMAGE COLUMNS, IF ANY -- delete sysdepends where [id] = @objid and depid = @objid and deptype = 1 and number in ( select colid from syscolumns where [id] = @objid and type = 34 and (colstat & 16) = 16 ) -- REMOVE CATALOG NAME AND BITS FROM SYSTEM TABLES -- update syscolumns set colstat = colstat & ~80, language = 0 where [id] = @objid update sysindexes set status = status & ~33554432 where [id] = @objid update sysobjects set status = status & ~200, ftcatid = 0 where [id] = @objid -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid end if @action = 'activate' begin -- MUST HAVE AT LEAST ONE COLUMN MARKED FOR FULLTEXT INDEXING -- if not exists (select * from syscolumns where id = @objid and (colstat & 16) = 16) begin raiserror(15609, -1,-1,@tabname) goto error_abort_exit end -- NO ERROR IF INDEXING ALREADY ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin rollback tran return 0 end update sysobjects set status = status | 8 where id = @objid if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1) begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL CRAWL FOR THE TABLE DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end end if @action = 'deactivate' begin -- NO ERROR IF INDEXING ALREADY DEACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin rollback tran return 0 end -- IF TABLE IS NOT ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin -- SET STATE TO INACTIVE, SCHEMA-MODIFIED update sysobjects set status = ((status & ~72) | 128) where id = @objid end else begin -- SET STATE TO INACTIVE update sysobjects set status = (status & ~8) where id = @objid end -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- STOP EXISTING CRAWL (IMPLICIT STOP WITH WARNING) DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit end if @action = 'start_change_tracking' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF TABLE IS ALREADY ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin raiserror(15631,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end -- CHECK TO SEE IF THERE ARE ANY COLUMNS WHICH ARE NOT IN ROW BLOBS -- if (select count(*) from syscolumns where (id = object_id(@tabname)) and ((xtype = 34) or (xtype = 35) or (xtype = 99)) and ((colstat & 16) != 0) and (length = 16)) > 0 begin raiserror(15639, -1, -1, @tabname) end -- STOP EXISTING CRAWL DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid select @schemamodified = ObjectProperty(@objid, 'TableIsFulltextSchemaModified') -- SET TABLE TO CT ON. SCHEMA MOD. OFF -- update sysobjects set status = ((status & ~128) | 64) where id = @objid -- C+0СЁ\ЕOMMIT TRAN -- NESCESSARY TO TURN ON CT BEFORE CRAWL IS KICKED OFF -- commit tran if @@error <> 0 goto error_abort_exit if (@schemamodified = 1) begin -- START A FULL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 begin -- NEED TO RUN A FULL POPULATION raiserror(15644, -1, -1,@tabname, 'start_full') return 1 end end else begin -- START AN INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 1 ) if @@error <> 0 begin -- NEED TO RUN AN INCREMENTAL POPULATION raiserror(15644, -1, -1, @tabname, 'start_incremental') return 1 end end return 0 end if @action = 'stop_change_tracking' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin rollback tran return 0 end if(ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin raiserror(7640,-1,-1, @tabname) end -- DISABLE FULLTEXT AUTO PROPAGATION (NO ERROR IF ALREADY DISABLED) -- DBCC CALLFULLTEXT ( 9, @objid ) -- FTDisableNotify( db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- TURN OFF ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~192 where id = @objid if ((select count(*) from sysfulltextnotify where tableid = @objid) != 0) begin raiserror(7638,-1,-1, @tabname) end -- DELETE NOTIFICATIONS FROM SYSFULLTEXTNOTIFY -- delete sysfulltextnotify where tableid = @objid end if @action = 'start_background_updateindex' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF TABLE IS NOT ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin raiserror(15632,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF FULLTEXT SCHEMA OF THE TABLE HAS BEEN MODIFIED (SHOULD NEVER HAPPEN)-- if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) begin raiserror(15640,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF TABLE IS ALREADY ENABLED FOR AUTO PROPAGATION -- if ObjectProperty(@objid, 'TableFulltextBackgroundUpdateIndexOn') = 1 begin raiserror(15633,-1,-1, @tabname) goto error_abort_exit end -- ENABLE TABLE FOR FULLTEXT AUTO PROPAGATION -- DBCC CALLFULLTEXT ( 10, @ftcatid, @objid ) -- FTEnableAutoProp( @ftcatid, db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- TURN ON FULLTEXT AUTOPROPAGATION BIT IN SYSOBJECTS -- update sysobjects set status = status | 128 where id = @objid end if @action = 'stop_background_updateindex' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end if (ObjectProperty(@objid, 'TableFullTextBackgroundUpdateIndexOn') = 0) begin rollback tran return 0 end -- DISABLE FULLTEXT AUTO PROPAGATION (NO ERROR IF ALREADY DISABLED) -- DBCC CALLFULLTEXT ( 9, @objid ) -- FTDisableNotify( db_id(), @objid ) if @@error <> 0 goto error_abort_exit -- TURN OFF ACTIVE BITS IN SYSOBJECTS -- update sysobjects set status = status & ~128 where id = @objid end if @action = 'update_index' begin -- ERROR IF TABLE IS NOT ENABLED FOR NOTIFICATIONS -- if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin raiserror(15634,-1,-1, @tabname) goto error_abort_exit end -- ERROR IFax  (Ь_ŸdXŸММММxpЇ`€мл,анb  0СЁ\Е TABLE IS NOT ACTIVE ANY MORE -- if (ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0) begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF FULLTEXT SCHEMA OF THE TABLE HAS BEEN MODIFIED -- THIS SHOULD NEVER HAPPEN if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) begin raiserror(15640,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SIGNLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end DBCC CALLFULLTEXT ( 11, @ftcatid, @objid ) -- FTStartPropagation( db_id(), @ftcatid, @objid ) if @@error <> 0 goto error_abort_exit end if @action = 'start_full' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end -- RAISE WARNING IF POPULATE STATUS OF THE TABLE IS NOT IDLE if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin raiserror(7636,-1,-1, @tabname) goto error_abort_exit end -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) -- SET TABLE SCHEMA-UNMODIFIED update sysobjects set status = status & ~128 where id = @objid end if @action = 'start_incremental' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF DATABASE IS IN SINGLE USER MODE -- if DATABASEPROPERTY(db_name(), 'IsSingleUser') = 1 begin raiserror(15637, -1, -1, @tabname) goto error_abort_exit end -- RAISE WARNING IF POPULATE STATUS OF THE TABLE IS NOT IDLE if (ObjectProperty(@objid, 'TableFulltextPopulateStatus') != 0) begin raiserror(7636,-1,-1, @tabname) goto error_abort_exit end -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START AN INCREMENTAL POPULATION FOR THIS TABLE -- if (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 1) and (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0) begin -- FULL CRAWL IF SCHEMA MODIFIED DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit -- SET TABLE SCHEMA-UNMODIFIED update sysobjects set status = status & ~128 where id = @objid end else begin -- INCREMENTAL CRAWL DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 1 ) if @@error <> 0 goto error_abort_exit end end if @action = 'stop' begin -- ERROR IF TABLE IS NOT ACTIVATED -- if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 0 begin raiserror(15630,-1,-1, @tabname) goto error_abort_exit end -- ERROR IF POPULATE STATUS OF THE TABLE IS CRAWLING AND CT ON if (ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1) and ((ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 1) or (ObjectProperty(@objid, 'TableFulltextPopulateStatus') = 2)) begin raiserror(15642,-1,-1, @tabname) goto error_abort_exit end -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit end -- COMMIT TRA0СЁ\ЖN -- commit tran if @@error <> 0 goto error_abort_exit -- SUCCESS -- return 0 error_abort_exit: rollback tran return 1 -- sp_fulltext_table aЏЈаЏи„ЯЌ|||||@[š РЏДХЛмУЏМвЏќбЏфбЏмУЏЏ“АБЂкцццццdateformatГГГГвЏьбЏTеЏ))))(дЏааЏ@аСЈьJ JJJJД‡™œ‡™„‡™t‡™d‡™T‡™@‡™0‡™ ‡™‡™є†™д†™Д†™œ†™Œ†™Ј,Фf­ˆвЏАБЂкЭЭЭЭЭrs№вЏPвЏ˜ РЏь™фбЏ РЏ РЏDдЏ/lš…™АБЂade????ddџџџџџџџџџџџџШB—МЭЏ!,уrЈ}]џџџџАБЂHдЏШбЏ\гЈ‚Ћ ЋЋЋЋўўўўxдЏ(дЏ `}Јˆ> >>>>”дЏфбЏkkkkЈдЏHдЏ `}ЈˆЙ ЙЙЙЙФдЏdдЏМвЏььььnaидЏxдЏ `}ЈˆŸ ŸŸŸŸєдЏ”дЏќбЏЪЪЪЪsеЏЈдЏ `}Јˆ_ ____$еЏФдЏвЏ ˜З­8еЏидЏ! `}ЈˆЅ ЅЅЅЅ\"ВєдЏьбЏ№№№№xеЏеЏ"$kЈЫћћћћћ”аЛ”еЏ<оЏигЛŒЭЏмУЏЎЎЎЎиіАеЏ8еЏ#lfЈiTTTTTЬеЏєеЏзЏ4иЏ<лЏdмЏиеЏxеЏ$lfЈldmyWWWWјжЏАеЏ%lfЈl†††††Portuguъs (Brasil)Ѕ x;ЈЕ monthsMMMM\ž˜xжЏжЏІАБЂкshortmonthsJJJJржЏ@жЏЇDx;Ј YYYYYdзЏЄ!ВЄ`€4ќжЏ mmmmзЏxжЏЈx;ЈггггиЏиеЏ&lfЈllllllBrazilianАБЂкdays****  ЧЏАзЏзЏЊDx;Ј ррррр$иЏ#ВзЏ€4ЬзЏЕЕЕЕ@изЏHзЏЋx;ЈЕ ­­­­­daysјјјјиЏАзЏЌ АБЂкћћћћћlcidЎЎЎЎЏ(pиЏизЏ­9999 лЏјжЏ'шlfЈlxxxxxJaneiro,Fevereiro,Marчo,Abril,Maio,Junho,Julho,Agosto,Setembro,Outubro,Novembro,Dezembro ЫЫЫЫЫ„$В;?€4TйЏžžžžXйЏpйЏаиЏБx;ЈЕ kkkkkmsglangid>>>>­( r0кЏ8йЏВ XЁЂFFFFF@џџ„кЏLкЏhкЏpйЏГx;Јъ 77777syslanguagesbbbbркЏ0кЏДXXЁЂЗГГГГГ^Hцццц(лЏhкЏЕ(x;Јџ ŸŸŸŸŸ88 ----HмЏиЏ(lfЈlнннннJan,Fev,Mar,Abr,Mai,Jun,Jul,Ago,Set,Out,Nov,Dez_чча4млЏшлЏxлЏЙФљІзюююююymdЛЛЛЛ0мЏРлЏК(x;Јџ 8 88 LмЏZZZZXмЏшлЏЛФљІˆˆˆˆ оЏ лЏ)ВlfЈlіііііSegunda-Feira,Terчa-Feira,Quarta-Feira,Quinta-Feira,Sexta-Feira,Sсbado,DomingoHнЏШмЏП(x;Ју чча4dнЏBBBBxнЏнЏРФљІзЧЧЧЧЧlatvieau’’’’ЈнЏHнЏСАБЂй–––––LatvianУУУУ№нЏxнЏТ(x;Ју UUUUUчча4 оЏ оЏЈнЏУФљІзzzzzzLatviЃЃЃЃ//// оЏHмЏ*`\ЂГфффффМоЏpХЏXХЏШФЏАФЏ˜ФЏ€ФЏрФЏјФЏХЏ(ХЏ@ХЏББББроЏ оЏ+„ЯЌшшшшшPAšьбЏфбЏ ,пЏ< ВНННН,nпЏ оЏ,ЫЌ:CCCCCРPš< ВМвЏ ВроЏ-ААІЌX YYYYY4488 88 00яяа444ча4ча4ччша4чча4ччВа4 X(РЏ`п}˜\оwа фб0dяЪ]Пcreate procedure sp_detach_db @dbname sysname = null, @skipchecks nvarchar(10) = null as declare @dbid int declare @exec_stmt nvarchar(540) if @dbname is null begin raiserror(15354,-1,-1) return(1) end if lower(@skipchecks) <> N'true' and lower(@skipchecks) <> N'false' and @skipchecks is not null begin raiserror(15354,-1,-1) return(1) end select @dbid = null select @dbid = dbid from master.dbo.sysdatabases where name=@dbname if @dbid is null begin raiserror(15010,-1,-1,@dbname) return(1) end -- make sure not trying to detach within a transaction if @@trancount > 0 begin raiserror(226,-1,-1,'SP_DETACH_DB') return(1) end -- run UPDATE STATISTICS on all tables in the database so they are current -- when transferred to READONLY media if lower(@skipchecks) <> N'true' begin print 'Running UPDATE STAUISTICS on all tables' select @exec_stmt = 'USE ' + quotename( @dbname , '[') + ' exec sp_updatestats ''RESAMPLE'' ' exec (@exec_stmt) end select @exec_stmt = 'DBCC DETACHDB (' + quotename( @dbname , '[') + ')' exec (@exec_stmt) return (0) -- sp_detach_db 0П^|create procedure sp_diskdefault --- 1996/04/08 00:00 @logicalname sysname, /* logical name of the device */ @defstatus varchar(15) /* turn on or off */ as /* ** If we're in a transaction, disamlow this since it might make recovery ** impossible. */ set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_diskdefault') return (1) end /* ** Only the SA can run this sproc. */ if not is_srvrolemember('diskadmin') = 1 begin raiserror(15247,-1,-1) return (1) end /* ** Make sure that a device with @logicalname exists. */ if not exists (select * from master.dbo.sysdevices where name = @logicalname) begin raiserror(15012,-1,-1-@logicalname) return (1) end /* ** Make sure that it is a database disk and not a dump device. */ if exists (select * from master.dbo.sysdevices where name = @logicalname and status & 16 = 16) begin raiserror(15035,-1,-1,@logicalname) return (1) end /* ** Make sure that the database disk is NOT a RAM device. */ if exists (select * from master.dbo.sysdevices where name = @logicalname and status & 2048 = 2048 ) begin raiserror(15139,-1,-1) return (1) ene if @defstatus = 'defaulton' begin update master.dbo.sysdevices set status = status | 1 where name = @logicalname return (0) end if @defstatus = 'defaultoff' begin update master.dbo.sysdevices set status = status & ~1 where name = @logicalname return (0) end /* ** @defstatus must be 'defaulton' or 'defaultoff' */ raiserror(15140,-1,-1) return (1) -- sp_diskdefault 0s Š^†create proc sp_help_fulltext_catalogs @fulltext_catalog_name sysname = NULL -- full-text catalog name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- if @fulltext_catalog_name is not null begin declare @ftcatid smallint select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end -- RETQIEVE THE DEFAULT PATH -- DECLARE @def_path as nvarchar(260) select @def_path = null exec master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer','FullTextDefaultPath', @def_path OUT -- SELECT ANY ROWS THAT MEET THE CRITERIA -- select CAT.ftcatid, name as NAME, 'PATH'= CASE WHEN path is NULL THEN @def_path ELSE path END, FullTextCatalogProperty(CAT.name, 'PopulateStatus') AS STATUS , (select COUNT(*) from qysobjects where type='U' and sysobjects.ftcatid = CAT.ftcatid ) as NUMBER_FULLTEXT_TABLES from sysfulltextcatalogs as CAT where ( @fulltext_catalog_name is null or name = @fulltext_catalog_name ) order by ftcatid -- SUCCESS -- return 0 -- sp_help_fulltext_catalogs 0Ќ-~_create proc sp_help_fulltext_catalogs_cursor @cursor_return CURSOR VARYING OUTPUT, @fulltext_catalog_name sysname = NULL -- full-text catalog name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end -- CATALOG MUST EXIST IF SPECIFIED -- if @fulltext_catalog_name is not null begin declare @ftcatid smallint select @ftcatid = ftcatid from sysfulltextcatalogs where name = @fulltext_catalog_name if @ftcatid is null begin raiserror(7641,-1,-1,@fulltext_catalog_name) return 1 end end -- RETRIEVE THE DEFAULT PATH -- DECLARE @def_path as nvarchar(260) select @eef_path = null exec master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer','FullTextDefaultPath', @def_path OUT -- SELECT ANY ROWS THAT MEET THE CRITERIA -- set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR select CAT.ftcatid, name as NAME, 'PATH'= CASE WHEN path is NULL THEN @def_path ELSE path END, FullTextCatalogProperty(CAT.name, 'PopulateStatus') AS STATUS , (select COUNT(*) from sysobjects where type='U' and sysobjects.ftcatid = CAT.ftcatid ) as NUMBER_FULLTEXT_TABLES from sysfulltextcatalogs as CAT where ( @fulltext_catalog_name is null or name = @fulltext_catalog_name ) order by ftcatid open @cursor_return -- SUCCESS -- return 0 -- sp_help_fulltext_catalogs_cursor 0IџT^Љ create procedure sp_oledb_deflang as begin select ISNULL(language,'us_english') from master..syslogins where sid=SUSER_SID() end LLL0‚#I_ˆ create procedure sp_mledb_defdb as begin select dbname from master..syslogins where sid=SUSER_SID() end ЇАXЛ XЛR (x;Јџ ЄЄЄЄЄ00ЬXЛёёёёиXЛhXЛS ФљІзМММММщщщщ YЛАXЛT $x;Ј iiiii 0 goto error_abort_exit end end else begin -- SET STATE TO SCHEMA_MODIFIED update sysobjects set status = ((status & ~64) | 128) where id = @objid end if @typename = N'image' begin -- VALIDATE THAT THE TYPE COLUMN IS GIVEN AND THAT IT IS VALID if @type_colname is null begin raiserror(15600, -1, -1, 'sp_fulltext_column') goto error_abort_exit end declare @typecolname sysname select @typecolname = type_name(ColumnProperty(@objid, @type_colname, 'SystemType')) -- TYPE COLUMN HAS TO BE A CHARACTER COLUMN if @typecolname not in (N'nchar',N'nvarchar',N'char',N'varchar') begin raiserror(15600 , -1, -1, 'sp_fulltext_column') goto error_abort_exit end -- ADD ENTRY OF COLID IN SYSDEPENDS declare @colid smallint declare @type_colid smallint select @colid = colid from syscolumns where [id] = @objid and name = @colname select @type_colid = colid from syscolumns where [id] = @objid and name = @type_colname if not exists ( select [id] from sysdepends where [id] = @objid and depid = @objid and number = @colid ) begin insert into sysdepends ([id], depid, number, depnumber, status, deptype ) values( @objid, @objid, @colid, @type_colid, 0, 1) end -- SET BIT INDICATING TYPE COLUMN update syscolumns set colstat = colstat | 64 where id = @objid and name = @type_colname end end else begin -- CLEAR THE BIT & ZERO LCID FOR THIS COLUMN -- update syscolumns set colstat = colstat & ~16, language = 0 where id = @objid and name = @colname -- IF LAST COLUMN DROPPED if not exists (select * from syscolumns where id = @objid and (colstat & 16) = 16) begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- IF TABLE HAS NOT BEEN DEACTIVATED if ((ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1) or (ObjectProperty(@objid, 'TableIsFulltextSchemaModified') = 0)) begin -- IF CHANGE-TRACKING IS OFF if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 0 begin -- SET TABLE TO SCHEMA UNMODIFIED, INACTIVE (TURN OFF ALL BITS) update sysobjects set status = (status & ~200) where id = @objid end else begin -- SET TABLE TO INACTIVE update sysobjects set status = (status & ~8) where id = @objid end end end else if ObjectProperty(@objid, 'TableFulltextChangeTrackingOn') = 1 begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit if ObjectProperty(@objid, 'TableHasActiveFulltextIndex') = 1 begin -- DELETE SYSFULLTEXTNOTIFY ENTRIES delete sysfulltextnotify where tableid = @objid -- START A FULL CRAWL FOR THE TABLE DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 0 ) if @@error <> 0 goto error_abort_exit end end else begin -- STOP A FULL/INCREMENTAL POPULATION FOR THIS TABLE -- DBCC CALLFULLTEXT ( 12, @ftcatid, @objid, 2 ) if @@error <> 0 goto error_abort_exit -- SET BITS IN SYSOBJECTS update sysobjects set status = ((status & ~64) | 128) where id = @objid end -- IF IMAGE COLUMN, UNBIND FROM THE TYPE COLUMN if @typename = N'image' begin declare @colid1 smallint declare @type_colid1 smallint select @colid1 = colid from syscolumns where [id] = @objid and name = @colname select @type_colid1 = depnumber from sysdepends 0:х•]Ќ where [id] = @objid and depid = @objid and number = @colid1 delete sysdepends where [id] = @objid and depid = @objid and number = @colid1 and depnumber = @type_colid1 and deptype = 1 -- CLEAR BIT RELATING THE IMAGE COLUMN AND TYPE COLUMN if not exists ( select depnumber from sysdepends where [id] = @objid and depnumber = @type_colid1 and deptype = 1 and number in (select colid from syscolumns where [id] = @objid and type = 34 and (colstat & 16) = 16) ) begin update syscolumns set colstat = colstat & ~64 where [id] = @objid and colid = @type_colid1 end end end -- COMMIT TRAN -- commit tran if @@error <> 0 goto error_abort_exit -- SUCCESS -- return 0 error_abort_exit: rollback tran return 1 -- sp_fulltext_column 4444t €4Ј˜3Ј` $ЄЈDvvvvv”шОqЇЇ€а4####`4Ја3Јa $ЄЈD ЌщОؘšE88 ЮЮЮЮ 4Ј˜3Јž $x;Ј[ѓѓѓѓѓ$3ЈtыОЖџџџџџџџџџџџџІІІІш4ЈX4ЈŸ (XЁЂ| {{{{{ŒьОF88 №іЇ....05Ј 4Ј  (x;Јџ ннннніО00L5ЈˆˆˆˆX5Јш4ЈЁ ФљІзggggg222244 5Ј05ЈЂ $x;Ј М4ЈlГ$†hhAAAAЇЇи5ЈX5ЈЃ XЁЂn11111t5Ј$ˆ dddd”ѕО 6Ј 5ЈЄ (x;Јџ WWWWW6Ј88 <6ЈH6Ји5ЈЅ ФљІз[[[[А6Ј 6ЈІ Dx;Ј 11111є5ЈИ€ €488 ddddLFЪј6ЈH6ЈЇ "АБЂкerror_abort_exitBBBB]],GЪ`7ЈА6ЈЈ HXЁЂWбббббМ2ЈЬ8ЈLУ™ГDhIєIЪ„„„„№7Јј6ЈЉ px;ЈWœœœœœŒVЪД ` Н( 8ЈЪџџџџЩЩЩЩА8Ј`7ЈЊ  `}Ј_ППППП0рЭˆ HHHHH8Јш7Јp „ЇКМММММ щщщщp8Ј 8Јq „Їю$$$$$"qqqq˜8ЈH8Јr x;Ј[ ЮЮЮЮЮD››››/а8Јp8Јs РЈъъъъј8Ј№7ЈЋ $x;Ј[ѕѕѕѕѕ|7Ј˜8ЈЖџџџџџџџџџџџџ    (9ЈА8ЈЌ XЁЂ*KKKKK7ЈЬ6Ј $RЛ`9Јј8Ј­ АБЂкsysobjectsKKKKШ9Ј(9ЈЎ HXЁЂW›››››|ЂЫ4;ЈЕGіI|JХЮЮЮЮX:Ј`9ЈЏ px;ЈW „ ЫDЂЫхххД ` Н(t:Ј@ ХџџXXXX;ЈШ9ЈА  `}Ј_KKKKK|;Јь<Јˆ ъъъъAAAAи:ЈX:Ј| $ЄЈDщщщщщŒqЖ#›qЇЇ€а4ММММ ;Ј:Ј} $ЄЈD$$$$$ЄrЖE88 `;ЈX:ЈБ $x;Ј[?????ф9ЈltЖЖџџџџџџџџџџџџjjjj <Ј;ЈВ  XЁЂўўўўўS р@2˜U“@t<Ј„lГ<<Јь<ЈЋЋЋЋX<Ј`;ЈГ x;Јъ ЊЊЊЊЊsysobjectsџџџџииа<Ј <ЈД XXЁЂЗЖЖЖЖЖD8^Hуууу=ЈX<ЈЕ  XЁЂS р@2˜U“ DЁЫф=ЈЌlГЌ=ЈдlГ@@@@Ш=Ја<ЈЖ x;Јъ ,,,,,sysobjectsyyyy@>Ј=ЈЗ XXЁЂЗhhhhh^H====p>ЈШ=ЈИ АБЂк statusYYYY >Ј@>ЈЙ АБЂкEEEEEstatus?Јp>ЈК @x;Ј- `````(088  ?Ј55550?Ј >ЈЛ x;ЈЧ gggggstatus2222x?Ј?ЈМ (x;Јџ ййййй”88 ”?ЈŒŒŒŒ ?Ј0?ЈН ФљІзРEEEE  Ыx?ЈО $x;Ј ЖЖЖЖЖL?ЈZ88 уууу\ž˜Р(1Ј`}сЮ PрwСR 0H€›aуcreate procedure sp_droptype --- 1996/04/08 00:00 @typename sysname /* the user type to drop */ as declare @typeid smallint /* the typeid of the usertype to drop */ /* ** Initialize @typeid so we can tell if we can't find it. */ select @typeid = 0 /* ** Find the user type with @typename. It must be a user type (xusertype > 256) ** and it must be owned by the person (or special role) running the procedure. */ select @typeid = xusertype from systypes where name = @typename and xusertype > 256 AND (is_member('db_owner') = 1 OR is_member('db_ddladmin') = 1 OR is_member(user_name(uid))=1) if @typeid = 0 begin raiserror(15105,-1,-1) return (1) end /* ** Check to see if the type is being used. If it is, it can't be dropped. */ if exists (select * from syscolumns where xusertype = @typeid) begin raiserror(15180,-1,-1) /* ** Show where!it's being used. */ select object = o.name, type = o.xtype, owner = u.name, [column] = c.name, datatype = t.name from syscolumns c, systypes t, sysusers u, sysobjects o where c.xusertype = @typeid and t.xusertype = @typeid and o.uid = u.uid and c.id = o.id order by object, [column] return (1) end /* ** Everything is consistent so drop the type. */ delete from systypes where xusertype = @typeid delete from sysproperties where type = 1 and id = 0 and smallie = @typeid raiserror(15467,-1,-1) return (0) -- sp_droptype "0Єb$ create procedure sp_dropremotelogin --- 1996/04/08 00:00 @remoteserver sysname, /* name of remote server */ @loginame sysname = NULL, /* user's local user name */ @remotename sysname = NULL /* user's remote name */ as declare @srvid smallint declare @sid varbinary(85) declare @count int -- DISALLOW USER XACT -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp]dropremotelogin') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME -- select @srvid = srvid from master.dbo.sysservers where srvname = @remoteserver if @srvid is null begin raiserror(15015,-1,-1,@remoteserver) return (1) end -- CHECK FOR INVALID PARAMETER SYNTAX -- if @loginame is null and @remotename is not null begin raiserror(15600,-1,-1,'sp_dropremotelogin') return (1) end -- VALIDATE @loginame -- if @loginame is not null begin select @sid = sid from master.dbo.syslogins where loginname = @loginame AND isntname = 0 -- cannot remap to NT login if @sid is null begin raiserror(15067,-1,-1,@loginame) return (1) end end -- First remove the isrpcinmap bit from all rows which are also outmap update master.dbo.sysxlogins set xstatus = xstatus & ~32 -- isrpcinmap bit where srvid = @srvid ANE isrpcinmap = 1 AND ishqoutmap = 1 AND ((@sid IS NULL and sid IS NULL) or sid = @sid) AND ((@remotename IS NULL and name IS NULL) or name = @remotename) select @count = @@rowcount -- Delete the remote login(s) - the remaining rows with isrpcinmap set. delete master.dbo.sysxlogins where srvid = @srvid AND isrpcinmap = 1 AND ((sid IS NULL and @sid IS NULL) or sid = @sid) AND ((@remotename IS NULL and name IS NULL) or name = @remotename) select @count = @count + @@rowcount --!IF NO ROWS UPDATED OR DELETED, ERROR -- if @count = 0 begin if (@loginame IS NULL) raiserror(15021,-1,-1,@remoteserver) else if (@remotename IS NULL) raiserror(15027,-1,-1,@loginame,@remoteserver) else raiserror(15185,-1,-1,@remotename,@loginame,@remoteserver) return (1) end -- SUCCESS -- return (0) -- sp_dropremotelogin 0WšZbX create proc sp_help_fulltext_columns @table_name nvarchar(517) = NULL, -- table name @column_name sysname = NULL -- column mame as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end -- VALIDATE COLUMN NAME (CANNOT BE COMPUTED) -- if @column_name is not null begin declare @typename sysname select @typename = type_name(ColumnProperty(@objid, @column_name, 'SystemType')) if @typename is null OR ColumnProperty(@objid, @column_name, 'IsComputee') = 1 begin raiserror(15104,-1,-1,@table_name,@column_name) return 1 end end end select distinct susr.name as TABLE_OWNER, sobj.id as TABLE_ID, sobj.name as TABLE_NAME, scol.name as FULLTEXT_COLUMN_NAME, scol.colid as FULLTEXT_COLID, b.FT_BLOBTPNAME as FULLTEXT_BLOBTP_COLNAME, a.FT_BLOBTPCOLID as FULLTEXT_BLOBTP_COLID, scol.language as FULLTEXT_LANGUAGE from sysobjects as sobj, sysusers as susr, syscolumns as scol left outer join ( select sdep.id as TABLE_ID, sdep.number as FULLTEXT_COLID, sdep.depnumber as FT_BLOBTPCOLID from sysdepends as sdep, syscolumns as scol where scol.colid = sdep.number and scol.id = sdep.id and sdep.deptype = 1 and ColumnProperty(scol.id, scol.name, 'IsFullTextIndexed') = 1 ) as a on (scol.colid = a.FULLTEXT_COLID and scol.id = a.TABLE_ID) left outer join ( select sdep.id as TABLE_ID, sdep.depnumber as FT_BLOBTPCOLID, scol.name as FT_BLOBTPNAME, sdep.number as FULLTEXT_COLID from syscolumns as scol, sysdepends as sdep where scol.colid = sdep.depnumber and ColumnProperty(sdep.id, scol.name, 'IsTypeForFullTextBlob') = 1 ) as b on (a.FULLTEXT_COLID = b.FULLTEXT_COLID and a.TABLE_ID = b.TABLE_ID) where ( @table_name is null or sobj.id = @objid ) and scol.id = sobj.id and sobj.uid = susr.uid and ( @column_name is null or scol.name = @column_name ) and ColumnProperty(sobj.id, scol.name, 'IsFullTextIndexed') = 1 order by TABLE_OWNER, TABLE_NAME, FULLTEXT_COLID -- SUCCESS -- return 0 -- sp_help_fulltext_columns 0-%b /* Procedure for 8.0 server */ create procedure sp_tablecollations (@object nvarchar(4000)) as begin select c.colid, c.name, tds_collation = c.tdscollation, collation_name = BCPCollationName(c.tdscollation, c.xtype) from syscolumns c inner join sysobjects t on a.id = t.id where t.id = object_id(@object, 'local') order by c.colid end ` НuuuuР<НИ;Нc$x;Ј[ЪЪЪЪЪD;НџџЖџџџџџџџџџџџџŸŸŸŸ(<Н=Нx<Нd(x;Јџ д88 $=Н@@@@0=НР<НeФљІз~~~~~++++Р<Нˆ=Н=Нf8x;Јг wwwwwм<НU(88 ќЅЛ""""№=Н0=НgHXЁЂWНННННмЋЦ\?НЄ?Н2 0 Р”?Ншшшш€>Нˆ=Нhpx;ЈW–––––tЋЦ”ЊЦД `  Л(œ>Н@ Рџџџџ lУУУУ@?Н№=Нi `}Ј_-----џџРРРРx?Н(>НP `}Ј_ЮЮЮЮЮ++++(?Н >Н$$x;Ј[оооооЌ=НЖџџџџџџџџџџџџ‹‹‹‹pp?Нр>Н%(x;Јxxxxˆ?Н€>Нj$x;Ј[ППППП >НŒ?НЖџџџџџџџџџџџџъъъъ$  Ц@?НkHx;Ј$ ччччч\ГЦŒЁЦџџџџ  ВВВВ< ЦппhР`р~š `сw0 EW&0Єb$ create procedure sp_dropremotelogin --- 1996/04/08 00:00 @remoteserver sysname, /* name of remote server */ @loginame sysname = NULL, /* user's local user name */ @remotename sysname = NULL /* user's remote name */ as declare @srvid smallint declare @sid varbinary(85) declare @count int -- DISALLOW USER XACT -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_dropremotelogin') return (1) end -- CHECK PERMISSIONS if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME -- select @srvid = srvid from master.dbo.sysservers where srvname = @remoteserver if @srvid is null begin raiserror(15015,-1,-1,@remoteserver) return (1) end -- CHECK FOR INVALID PARAMETER SYNTAX -- if @loginame is null and @remotename is not null begin raiserror(15600,-1,-1,'sp_dropremotelogin') return (1) end -- VALIDATE @loginame -- if @loginame is not null begin select @sid = sid from master.dbo.syslogins where loginname = @loginame AND isntname = 0 -- cannot remap to NT login if @sid is null begin raiserror(15067,-1,-1,@loginame) return (1) end end -- First remove the isrpcinmap bit from all rows which are also outmap update master.dbo.sysxlogins set xstatus = xstatus & ~32 -- isrpcinmap biu where srvid = @srvid AND isrpcinmap = 1 AND ishqoutmap = 1 AND ((@sid IS NULL and sid IS NULL) or sid = @sid) AND ((@remotename IS NULL and name IS NULL) or name = @remotename) select @count = @@rowcount -- Delete the remote login(s) - the remaining rows with isrpcinmap set. delete master.dbo.sysxlogins where srvid = @srvid AND isrpcinmap = 1 AND ((sid IS NULL and @sid IS NULL) or sid = @sid) AND ((@remotename IS NULL and name IS NULL) or name = @remotename) select @count = @count + @@rowcount -- IF NO ROWS UPDATED OR DELETED, ERROR -- if @count = 0 begin if (@loginame IS NULL) raiserror(15021,-1,-1,@remoteserver) else if (@remotename IS NULL) raiserror(15027,-1,-1,@loginame,@remoteserver) else raiserror(15185,-1,-1,@remotename,@loginame,@remoteserver) return (1) end -- SUCCESS -- return (0) -- sp_dropremotelogin 0ОNc create proc sp_help_fulltext_columns_cursor @cursor_return CURSOR VARYING OUTPUT, @table_name nvarahar(517) = NULL, -- table name @column_name sysname = NULL -- column name as -- FULLTEXT MUST BE ACTIVE IN DATABASE -- if DatabaseProperty(db_name(), 'IsFulltextEnabled') = 0 begin raiserror(15601,-1,-1) return 1 end if @table_name is not null begin -- VALIDATE TABLE NAME -- -- (1) Must exist in current database declare @objid int select @objid = object_id(@table_name, 'local') if @objid is null begin declare @curdbname sysname select @curdbname = db_name() raiserror(15009,-1,-1 ,@table_name, @curdbname) return 1 end -- (2) Must be a user table (and not a temp table) if ObjectProperty(@objid, 'IsUserTable') = 0 OR substring(parsename(@table_name,1),1,1) = '#' begin raiserror(15218,-1,-1 ,@table_name) return 1 end -- VALIDATE COLUMN NAME (CANNOT BE COMPUTED) -- if @column_name is not null begin declare @typename sysname select @typename = type_name(ColumnProperty(@objid, @column_name, 'SystemType')) if @typename is null OR ColumnProperty(@objid, @column_name, 'IsComputed') = 1 begin raiserror(15104,-1,-1,@table_name,@column_name) return 1 end end end set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR select distinct susr.name as TABLE_OWNER, sobj.id as TABLE_ID, sobj.name as TABLE_NAME, scol.name as FULLTEXT_COLUMN_NAME, scol.colid as FULLTEXT_COLID, b.FT_BLOBTPNAME as FULLTEXT_BLOBTP_COLNAME, a.FT_BLOBTPCOLID as FULLTEXT_BLOBTP_COLID, scol.language as FULLTEXT_LANGUAGE from sysobjects as sobj, sysusers as susr, syscolumns as scol left outer join ( select sdep.id as TABLE_ID, sdep.number as FULLTEXT_COLID, sdep.depnumber as FT_BLOBTPCOLID from sysdepends as sdep, syscolumns as scol where scol.colid = sdep.number and scol.id = sdep.id and sdep.deptype = 1 and ColumnProperty(scol.id, scol.name, 'IsFullTextIndexed') = 1 ) as a on (scol-colid = a.FULLTEXT_COLID and scol.id = a.TABLE_ID) left outer join ( select sdep.id as TABLE_ID, sdep.depnumber as FT_BLOBTPCOLID, scol.name as FT_BLOBTPNAME, sdep.number as FULLTEXT_COLID from syscolumns as scol, sysdepends as sdep where scol.colid = sdep.depnumber and ColumnProperty(sdep.id, scol.name, 'IsTypeForFullTextBlob') = 1 ) as b on (a.FULLTEXT_COLID = b.FULLTEXT_COLID and a.TABLE_ID = b.TABLE_ID) where ( @table_name is null or sobj.id = @objid ) and scol.id = sobj.id and sobj.uid = susr.uid and ( @column_name is null or scol.name = @column_name ) and ColumnProperty(sobj.id, scol.name, 'IsFullTextIndexed') = 1 order by TABLE_OWNER, TABLE_NAME, FULLTEXT_COLID open @cursor_return -- SUCCESS -- return 0 -- sp_help_fulltext_columns_cursor 0fДcЧ /* Procedure for 8.0 server */ create procedure sp_bcp_dbcmptlevel (@dbname sysmame) as begin select cmptlevel from master.dbo.sysdatabases where name = @dbname end џ DъУАіУ@іУ,(XЁЂ Дм™Fчча4№ЯЇХХХХјіУhіУ-$x;Ј „іУ іУІOOOO@їУ8іУ1$x;Ј[ЎЎЎЎЎФѕУadЖџџџџџџџџџџџџћћћћ(ЈїУјіУ2Hx;Ј$ „„„„„tчаљУAџџџџVfadOnбббб8јУ@їУ3px;ЈWД `  Л(TјУџџџџPPPPјјУЈїУ4 `}Ј_ЬЬЬЬЬџ э00œјУmmmmЈјУ8јУ4ФљІз44444aaaaза№јУ€јУ5$x;Ј їїїїї јУDн™г ИhhЂЂЂЂ(љУ™™™™@љУ8јУ5$x;Ј[……………ФїУЖџџџџџџџџџџџџааааџ кxљУјјУ6АБЂк55555@language````(љУРљУ@љУ7(x;Ј3 ЉЉЉЉЉpљУ88 ќќќќњУxљУ8$x;Ј šššššМДЛ”љУ‡hhЯЯЯߘљУ@њУРљУ9XЁЂnVVVVVмљУˆ *ˆњУњУ:(x;Јџ чччччсссс88 ЄњУВВВВАњУ@њУ;ФљІзuuuuu НћУˆњУ<Dx;Ј џџџџџ\њУі€488 ЊЊЊЊШњУ€ћУАњУ=HXЁЂW22222tуаьќУ?oЊFСatggggќУћУ>px;ЈWrrrrr,ўУ<уаlД `  Л(,ќУ@ Сџџџџ''''аќУ€ћУ? `}Ј_*****<ра dќУ††††pќУќУ?ФљІзїїїїї=ЂЂЂЂиќУHќУ@Dx;Ј ~~~~~œџУќУ€4§УќУ@$x;Ј[лллллœћУmeЖџџџџџџџџџџџџŽŽŽŽ(P§УаќУAАБЂк@languageGGGGqqqq€§У§УB АБЂкњњњњњvalueЏЏЏЏP§Ур§УP§УC@x;Ј- ККККК88(088  ќ§УяяяяўУ€§УD x;ЈЧ  valueuuuufulhўУр§УE8x;Јг yyyyyœ§Уш§УU(88 МДЛ,,,,˜ўУўУFАБЂкmasterDDDD_fРўУhўУGАБЂкxxxxxdbo----џУ˜ўУHАБЂк‘‘‘‘‘syscurconfigsФФФФ раРўУI2XЁЂлŠŠŠŠŠmasterdbosyscurconfigsпппп@@@@ раџУKDx;Ј ‹‹‹‹‹4џУ$§УGGGG€4ооооа0ь„ ˜`€pт| Vš…U0e5`f+create function system_function_schema.fn_trace_getinfo (@handle int = 0 ) returns @tab table(traceid int NOT NULL, property int NOT NULL, value sql_variant) as begin insert @tab select * from OpenRowset(TraceInfo, @handle) return end -- fn_trace_getinfo 0tOgі-- Creation of sp_describe_cursor_tables Create Procedure sp_describe_cursor_tables ( @cursor_return CURSOR VARYING OUTPUT, @cursor_source nvarchar (30), @cursor_identity nvarchar (128) ) AS declare @scope int /* Check if the cursor exists by name or handle. */ If cursor_status ( @cursor_source, @cursor_identity ) >= -1 begin if lower(convert(varchar(30), @cursor_source)) = 'local' OR lower(convert(varchar(128), @cursor_source)) = 'variable' select @scope = 1 else if lower(convert(varchar(30), @cursor_source)) = 'global' select @scope = 2 set @cursor_return > CURSOR LOCAL SCROLL DYNAMIC FOR SELECT table_owner, table_name, optimizer_hint, lock_type, server_name, objectid, dbid, dbname FROM master.dbo.syscursorrefs scr, master.dbo.syscursortables sct WHERE scr.cursor_scope = @scope and scr.reference_name = @cursor_identity and scr.cursor_handl = sct.cursor_handle FOR READ ONLY open @cursor_return end 0žYTg!create function system_function_schema.fn_trace_geteventinfo (@handle int ) returns @tab table(fventid int NOT NULL, columnid int NOT NULL) as begin insert @tab select * from OpenRowset(TraceEventInfo, @handle) return end -- fn_trace_geteventinfo 9990з}Hhjcreate function system_function_schema.fn_trace_getfilterinfo (@handle int = 0 ) returns @tab table(columnid int NOT NULL, logical_operator int NOT NULL, comparison_operator int NOT NULL, value sql_variant) as begin insert @tab select * from OpenRowset(TraceFilterInfo, @handle) return end -- fn_trbce_getfilterinfo У0­sh-- Creation of sp_cursor_list create procedure sp_cursor_list ( @cursor_return CURSOR VARYING OUTPUT, @cursor_scope int ) AS if (@cursor_scope < 1) OR (@cursor_scope > 3) begin /* Raise an error: ?The value of parameter is invalid? */ raiserror ( 16902, 1, 1,N'sp_cursor_list', N'@cursor_scope') return (1) end if ( @cursor_scope < 3) begin set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT reference_name, cursor_name, cursor_scope, status, model, concurrency, scrollable, open_status, cursor_rows, fetch_status, column_count, row_count, last_operation, cursor_handle FROM master.dbo.syscursorrefs scr, master.dbo.syscursors sc WHERE scr.cursor_scope = @cursor_scope AND scr.cursor_handl = sc.cursor_handle FOR READ ONLY end else begin set @cursor_return = CURSOR LOCAL SCROLL DYNAMIC FOR SELECT reference_name, cursor_name, cursor_scope, status, model, concurrency, scrollable, open_status, cursor_rows, fetch_status, column_count, row_count, last_operation, cursor_handle FROM master.dbo.syscursorrefs scr, master.dbo.syscursors sc WHERE scr.cursor_handl = sc.cursor_handle FOR READ ONLY end open @cursor_return 0JEъf•--Identifies privileges granted to or by the current user create view INFORMATION_SCHEMA.TABLE_PRIVILEGES as select user_name(p.grantor) as GRANTOR ,user_name(p.uid) as GRANTEE ,db_nbme() as TABLE_CATALOG ,user_name(o.uid) as TABLE_SCHEMA ,o.name as TABLE_NAME ,case p.action when 26 then 'REFERENCES' when 193 then 'SELECT' when 195 then 'INSERT' when 196 then 'DELETE' when 197 then 'UPDATE' end as PRIVILEGE_TYPE ,case when p.protecttype = 205 then 'NO' else 'YES' end as IS_GRANTABLE from sysprotects p, sysobjects o where (is_member(user_name(p.uid)) = 1 or p.grantor = user_id()) and (p.protecttype = 204 or /*grant exists without same grant with grant */ (p.protecttype = 205 and not exists(select * from sysprotects p2 where p2.id = p.id and p2.uid = p.uid and p2.action = p.action and p2.columns = p.columns and p2.grantor = p.grantor and p2.protecttype = 204))) and p.action in (26,193,195,196,197) and p.id = o.id and o.xtype in ('U', 'V') and 0 != (permissions(o.id) & case p.action when 26 then 4 /*REFERENCES basebit on all columns */ when 193 then 1 /*SELECT basebit on all columns */ when 195 then 8 /*INSERT basebit */ when 196 then 16 /*DELETE basebit */ when 197 then 2 /*UPDATE basebit on all columns */ end) O0ƒiоgD --Displays columns accessable to the current user create view INFORMATION_SCHEMA.COLUMNS as select db_name() as TABLE_CATALOG ,user_name(obj.uid) as TABLE_SCHEMA ,obj.name as TABLE_NAME ,col.name as COLUMN_NAME ,col.colid as ORDINAL_POSITION ,com.text as COLUMN_DEFAULT ,case col.isnullable when 1 then 'YES' else 'No ' end as IS_NULLABLE ,spt_dtp.LOCAL_TYPE_NAME as DATA_TYPE ,convert(int, OdbcPrec(col.xtype, col.length, col.xprec) + spt_dtp.charbin) as CHARACTER_MAXIMUM_LENGTH ,convert(int, spt_dtp.charbin + case when spt_dtp.LOCAL_TYPE_NAME in ('nchar', 'nvarchar', 'ntext') then 2*OdbcPrec(col.xtype, col.length, col.xprec) else OdbcPrec(col.xtype, col.length, col.xprec) end) as CJARACTER_OCTET_LENGTH ,nullif(col.xprec, 0) as NUMERIC_PRECISION ,spt_dtp.RADIX as NUMERIC_PRECISION_RADIX ,col.scale as NUMERIC_SCALE ,spt_dtp.SQL_DATETIME_SUB as DATETIME_PRECISION ,convert(sysname, NULL) as CHARACTER_SET_CATALOG ,convert(sysname, NULL) as CHARACTER_SET_SCHEMA ,convert(sysname, case when spt_dtp.LOCAL_TYPE_NAME in ('char', 'varchar', 'text') then a_cha.name when spt_dtp.LOCAL_TYPE_NAME in ('nchar', 'nvarchar', 'ntext') then N'Unicode' else NULL end) as CHARACTER_SET_NAME ,convert(sysname, NULL) as COLLATION_CATALOG ,convert(sysname, NULL) as COLLATION_SCHEMA ,col.collation as COLLATION_NAME ,convert(sysname, case when typ.xusertype > 256 then DB_NAME() else NULL end) as DOMAIN_CATALOG ,convert(sysname, case when typ.xusertype > 256 then USER_NAME(obj.uid) else NULL end) as DOMAIN_SCHEMA ,convert(sysname, case when typ.xusertype > 256 then typ.name else NULL end) as DOMAIN_NAME FROM sysobjects obj, master.dbo.spt_datatype_info spt_dtp, systypes typ, syscolumns col LEFT OUTER JOIN syscomments com on col.cdefault = com.id AND com.colid = 1, master.dbo.syscharsets a_cha --charset/1001, not sortorder. WHERE permissions(obj.id, col.name) != 0 AND obj.id = col.id AND typ.xtype = spt_dtp.ss_dtype AND (spt_dtp.ODBCVer is null or spt_dtp.ODBCVer = 2) AND obj.xtype in ('U', 'V') AND col.xusertype = typ.xusertype AND (spt_dtp.AUTO_INCREMFNT is null or spt_dtp.AUTO_INCREMENT = 0) AND a_cha.id = isnull(convert(tinyint, CollationPropertyFromID(col.collationid, 'sqlcharset')), convert(tinyint, ServerProperty('sqlcharset'))) -- make sure there's one and only one row selected for each column 0Мвhi --Identifies columns that have a user defined datatype where the --current user has some permissions on table create view INFORMATION_SCHEMA.COLUMN_DOMAIN_USAGE as select db_name() as DOMAIN_CATALOG ,user_name(typ.uid* as DOMAIN_SCHEMA ,typ.name as DOMAIN_NAME ,db_name() as TABLE_CATALOG ,user_name(obj.uid) as TABLE_SCHEMA ,obj.name as TABLE_NAME ,col.name as COLUMN_NAME FROM sysobjects obj ,syscolumns col ,systypes typ WHERE permissions(obj.id) != 0 AND obj.id = col.id AND col.xusertype = typ.xusertype AND typ.xusertype > 256 -- UDF Type Œф4Шуi8сe0gСŠwЕcreate proc sp_help @objname nvarchar(776) = NULL -- object name we're after as -- PRELIMINARY set nocount on declare @dbname sysname -- OBTAIN DISPLAY STRINGS FROM spt_values UP FRONT -- declare @no varchar(35), @yes varchar(35), @none varchar(35) select @no = name from master.dbo.spt_values where type = 'B' and number = 0 select @yes = name from master.dbo.spt_values where type = 'B' and number = 1 select @none = name from master.dbo.spt_values where type = 'B' and number = 2 -- If no @objname given, give a little info about all objects. if @objname is null begin -- DISPLAY ALL SYSOBJECTS -- select 'Name' = o.name, 'Owner' = user_name(uid), 'Object_type' = substring(v.name,5,31) from sysobjects o, master.dbo.spt_values v where o.xtype = substring(v.name,1,2) collate database_eefault and v.type = 'O9T' order by Object_type desc, Name asc print ' ' -- DISPLAY ALL USER TYPES select 'User_type' = name, 'Storage_type' = type_name(xtype), 'Length' = length, 'Prec' = TypeProperty(name, 'precision'), 'Scale' = TypeProperty(name, 'scale'), 'Nullable' = case when TypeProperty(name, 'AllowsNull') = 1 then @yes else @no end, 'Default_name' = isnull(object_name(tdefault), @none), 'Rule_name' = isnull(object_name(domaim), @none), 'Collation' = collation from systypes where xusertype > 256 order by name return(0) end -- Make sure the @objname is local to the current database. select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return(1) end -- @objname must be either sysobjects or systypes: first look in sysobjects declare @objid int declare @sysobj_type char(2) select @objid = id, @sysobj_type = xtype frmm sysobjects where id = object_id(@objname) -- IF NOT IN SYSOBJECTS, TRY SYSTYPES -- if @objid is null begin -- UNDONE: SHOULD CHECK FOR AND DISALLOW MULTI-PART NAME select @objid = xusertype from systypes where name = @objname -- IF NOT IN SYSTYPES, GIVE UP if @objid is null begin select @dbname=db_name() raiserror(15009,-1,-1,@objname,@dbname) return(1) end -- DATA TYPE HELP (prec/scale only valid for numerics) select 'Type_name' = name, 'Storage_type' = type_name(xtype), 'Length' = length, 'Prec' = TypeProperty(name, 'precision'), 'Scale' = TypeProperty(name, 'scale'), 'Nullable' = case when allownulls=1 then @yes else @no end, 'Default_name' = isnull(object_name(tdefault), @none), 'Rule_name' = isnull(object_name(domain), @none), 'Collation' = collation from systypes where xusertype = @objid return(0) end -- FOUND IT IN SYSOBJECT, SO GIVE OBJECT INFO select 'Name' = o.name, 'Owner' = user_name(uid), 'Type' = substring(v.name,5,31), 'Created_datetime' = o.crdate from sysobjects o, master.dbo.spt_values v where o.id = @objid and o.xtype = substring(v.name,1,2) collate database_default and v.type = 'O9T' print ' ' -- DISPLAY COLUMN IF TABLE / VIEW if @sysobj_type in ('S ','U ','V ','TF','IF') begin -- SET UP NUMERIC TYPES: THESE WILL HAVE NON-BLANK PREC/SCALE declare @numtypes nvarchar(80) select @numtypes = N'tinyint,smallint,decimal,imt,real,money,float,numeric,smallmoney' -- INFO FOR EACH COLUMN print ' ' select 'Column_name' = name, 'Type' = type_name(xusertype), 'Computed' = case when iscomputed = 0 then @no else @yes end, 'Length' = convert(int, length), 'Prec' = case when charindex(type_name(xtype), @numtypes) > 0 then convert(char(5),ColumnProperty(id, name, 'precision')) else ' ' end, 'Scale' = case when charindex(type_name(xtype), @numtypes) > 0 then convert(c0gСŠwЏ har(5),OdbcScale(xtype,xscale)) else ' ' end, 'Nullable' = case when isnullable = 0 then @no else @yes end, 'TrimTrailingBlanks' = case ColumnProperty(@objid, name, 'UsesAnsiTrim') when 1 then @no when 0 then @yes else '(n/a)' end, 'FixedLenNullInSource' = case when type_name(xtype) not in ('varbinary','varchar','binary','char') Then '(n/a)' When status & 0x20 = 0 Then @no Else @yes END, 'Collation' = collation from syscolumns where id = @objid and number = 0 order by colid -- IDENTITY COLUMN? if @sysobj_type in ('S ','U ','V ','TF') begin print ' ' declare @colname sysname select @colname = name from syscolumns where id = @objid and colstat & 1 = 1 select 'Identity' = isnull(@colname,'No identity column defined.'), 'Seed' = ident_seed(@objname), 'Increment' = ident_incr(@objname), 'Not For Replication' = ColumnProperty(@objid, @colname, 'IsIDNotForRepl') -- ROWGUIDCOL? print ' ' select @colname = null select @colname = name from syscolumns where id = @objid and number = 0 and ColumnProperty(@objid, name, 'IsRowGuidCol') = 1 select 'RowGuidCol' = isnull(@colname,'No rowguidcol column defined.') end end -- DISPLAY PROC PARAMS if @sysobj_type in ('P ') --RF too? begin -- ANY PARAMS FOR THIS PROC? if exists (select id from syscolumns where id = @objid) begin -- INFO ON PROC PARAMS print ' ' select 'Parameter_name' = name, 'Type' = type_name(xusertype), 'Length' = length, 'Prec' = case when type_name(xtype) = 'uniqueidentifier' then xprec else OdbcPrec(xtype, length, xprec) end, 'Scale' = OdbcScale(xtype,xscale), 'Param_order' = colid, 'Collation' = collation from syscolumns where id = @objid end end -- DISPLAY TABLE INDEXES & CONSURAINTS if @sysobj_type in ('S ','U ') begin print ' ' execute sp_objectfilegroup @objid print ' ' execute sp_helpindex @objname print ' ' execute sp_helpconstraint @objname,'nomsg' if (select count(*) from sysdepends where depid = @objid and deptype = 1) = 0 begin raiserror(15647,-1,-1) -- 'No views with schemabinding reference this table.' end else begin select distinct 'Table is referenced by views' = obj.name from sysobjects obj, sysdepends deps where obj.xtype ='V' and obj.id = deps.id and deps.depid = @objid and deps.deptype = 1 group by obj.name end end else if @sysobj_type in ('V ') begin -- VIEWS DONT HAVE CONSTRAINTS, BUT PRINT THESE MESSAGES BECAUSE 6.5 DID print ' ' raiserror(15469,-1,-1) -- No constraints defined print ' ' raiserror(15470,-1,-1) --'No foreign keys reference this table.' execute sp_helpindex @objname end return (0) -- sp_help ”—š—š0`к”—š—š0`к”—š—š0`к,TтххххXXШЧш`[тТ4Аh­Nддддд<$›”—š—š0`кL”—š—š0`к”—š—š0`к”—š—š0`кфЧшXРЧш8[тХ4Аh­Šббббб<$›<м”—š—š0`к”—š—š0`к”—š—š0`к”—š—š0`к<мЌЧш„„„„ьeц nnnn˜Юф<щ аs­ŠŠŠŠŠ\ž˜ДЮфппппtttt0щHщ ќG­p0`кАt­Рщ`†уќфi`Ѓз…<=ЗUwЕm syscolumns where id = @table_id) and c.type = 'P' and a.type = 'T' and a.number = p.action and p.action in (193,195,197,26) and b.type = 'T' and b.number = p.protecttype and p.id = @table_id and p.uid between @low and @high update #column_priv1 set select_privilege = 1 from #protects p where p.protecttype = 205 and p.action = 193 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 193 and (name = #column_priv1.COLUMN_NAME or name = '~All') and ( uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) update #column_priv1 set insert_privilege = 1 from #protects p where p.protecttype = 205 and p.action = 195 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 195 and (name = #column_priv1.COLUMN_NAME or name = '~All') and (uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) update #column_priv1 set update_privilege = 1 from #protects p where p.protecttype = 205 and p.action = 197 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 197 and (name = #column_priv1.COLUMN_NAME or name = '~All') and (uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) update #column_priv1 set references_privimege = 1 from #protects p where p.protecttype = 205 and p.action = 26 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 26 and (name = #column_priv1.COLUMN_NAME or name = '~All') and (uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) update #column_priv1 qet select_grantable = 1 from #protects p where p.protecttype = 204 and p.action = 193 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 193 and (name = #column_priv1.COLUMN_NAME or name = '~All') and ( uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) update #column_priv1 set insert_grantable = 1 from #protects p where p.protecttype = 204 and p.action = 195 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 195 and (name = #column_priv1.COLUMN_NAME or name = '~All') and ( uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) update #column_priv1 set update_grantable = 1 from #protects p where p.protecttype = 204 and p.action = 197 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 197 and (name = #column_priv1.COLUMN_NAME or name = '~All') and ( uid = 0 or uid = #column_priv1.eid or uid = #co<=ЗUwш lumn_priv1.uid)) update #column_priv1 set references_grantable = 1 from #protects p where p.protecttype = 204 and p.action = 26 and (p.name = #column_priv1.COLUMN_NAME or name = '~All') and (p.uid = 0 or p.uid = #column_priv1.gid or p.uid = #column_priv1.uid) and not exists ( select * from #protects where protecttype = 206 and action = 26 and (name = #column_priv1.COLUMN_NAME or name = '~All') and ( uid = 0 or uid = #column_priv1.gid or uid = #column_priv1.uid)) create table #column_priv2( COLUMN_NAME varchar(32) NOT NULL, grantor smallint NULL, grantee smallint NOT NULL, PRIVILEGE varchar(32) NOT NULL, IS_GRANTABLE varchar(3) NULL) insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'SELECT', 'NO' from #column_priv1 where select_privilege = 1 and select_grantable = 0 insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'INSERT', 'NO' from #column_priv1 where insert_privilege = 1 and insert_grantable = 0 insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'UPDATE', 'NO' from #column_priv1 where update_privilege = 1 and update_grantable = 0 insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'REFERENCES', 'NO' from #column_priv1 where references_privilege = 1 and references_grantabme = 0 insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'SELECT', 'YES' from #column_priv1 where select_grantable = 1 insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'INSERT', 'YES' from #column_priv1 where insert_grantable = 1 insert into #column_priv2 select COLUMN_NAME, grantor, grantee, 'UPDATE', 'YES' from #column_priv1 where update_grantable = 1 insert into #column_priv1 select COLUMN_NAME, grantor, grantee, 'REFERENCES', 'YES' from #column_priv1 where references_grantable = 1 select convert(varchar(32),db_name()) TABLE_QUALIFIER, convert(varchar(32),user_name(@owner_uid)) TABLE_OWNER, @table_name TABLE_NAME, COLUMN_NAME, convert(varchar(32),user_name(grantor)) GRANTOR, convert(varchar(32),user_name(grantee)) GRANTEE, PRIVILEGE, IS_GRANTABLE from #column_priv2 where COLUMN_NAME like @column_name order by 4, 7 ш0T™ъЉ,T™0`к(Zш0T™ъЉ,T™ И0`кLZш0T™ъЉ,T™šм0`кpZш0T™ъЉ,T™0`к”Zш0T™ъЉ,T™0`кИZш0T™ъЉ,T™0`кмZш0T™ъЉ,T™0`к[ш0T™ъЉ,T™ЌЌЌЌ0`к$[ш0T™ъЉ,T™....0`кH[ш0T™ъЉ,T™0`кl[ш0T™ъЉ,T™0`к[ш0T™ъЉ,T™0`кД[ш0T™ъЉ,T™0`ки[ш0T™ъЉ,T™0`кќ[ш0T™ъЉ,T™­0`к \ш0T™ъЉ,T™0`кD\ш0T™ъЉ,T™0`кh\ш0T™ъЉ,T™0`кŒ\ш0T™ъЉ,T™ 0`кА\ш0T™ъЉ,T™0`кд\ш0T™ъЉ,T™Ъ0`кј\ш0T™ъЉ,T™0`к]ш0T™ъЉ,T™џџџџ0`к@]ш0T™ъЉ,T™0`кd]ш0T™ъЉ,T™0`кˆ]ш0T™ъЉ,T™0`кЌ]ш0T™ъЉ,T™@ш0`ка]ш0T™ъЉ,T™0`кє]ш0T™ъЉ,T™0`к^ш0T™ъЉ,T™0`к<^ш0T™ъЉ,T™0`к`^ш0T™ъЉ,T™0`к„^ш0T™ъЉ,T™0`кЈ^ш0T™ъЉ,T™0`кЬ^ш0T™ъЉ,T™0`к№^ш0T™ъЉ,T™0`к_ш0T™ъЉ,T™џџџџ0`к8_ш0T™ъЉ,T™0`к\_ш0T™ъЉ,T™0`књњњњ<ЦшBBBB€#›№YтhЬфЪ`А^­УXXXXX$›м>щLЎ Zт\€ъ($›@ЈYш`С’“цхiА8" 0й syЕcreate procedure sp_helptext --- 1996/04/08 00:00 @objname nvarchar(776) ,@columnname sysname = NULL as set nocount on declare @dbname sysname ,@BlankSpaceAdded int ,@BasePos int ,@CurrentPos int ,@TextLength int ,@LineId int ,@AddOnLen int ,@LFCR int --lengths of line feed carriage return ,@DefinedLength int /* NOTE: Length of @SyscomText is 4000 to replace the length of ** text column in syscomments. ** lengths on @Line, #CommentText Text column and ** value for @DefinedLength are all 255. These need to all have ** the same values. 255 was selected in order for the max length ** display using down level clients */ ,@SyscomText nvarchar(4000) ,@Line nvarchar(255) Select @DefinedLength = 255 SELECT @BlankSpaceAdded = 0 /*Keeps track of blank spaces at end of lines. Note Len function ignores ! trailing blank spaces*/ CREATE TABLE #CommentText (LineId int ,Text nvarchar(255) collate database_default) /* ** Make sure the @objname is local to the current database. */ select @dbname = parsename(@objname,3) if @dbname is not null and @dbname <> db_name() begin raiserror(15250,-1,-1) return (1) end /* ** See if @objname exists. */ if (object_id(@objname) is null) begin select @dbname = db_name() raiserror(15009,-1,-1,@objname,@dbname) return (1) end -- If second parameter was given. if ( @columnname is not null) begin -- Check if it is a table if (select count(*) from sysobjects where id = object_id(@objname) and xtype in ('S ','U ','TF'))=0 begin raiserror(15218,-1,-1,@objname) return(1) end -- check if it is a correct column name if ((select 'count'=count(*) from syscolumns where name!= @columnname and id = object_id(@objname) and number = 0) =0) begin raiserror(15645,-1,-1,@columnname) return(1) end if ((select iscomputed from syscolumns where name = @columnname and id = object_id(@objname) and number = 0) = 0) begin raiserror(15646,-1,-1,@columnname) return(1) end DECLARE ms_crs_syscom CURSOR LOCAL FOR SELECT text FROM syscomments WHERE id = object_id(@objname) and encrypted = 0 and numaer = (select colid from syscolumns where name = @columnname and id = object_id(@objname) and number = 0) order by number,colid FOR READ ONLY end else begin /* ** Find out how many lines of text are coming back, ** and return if there are none. */ if (select count(*) from syscomments c, sysobjects o where o.xtype not in ('S', 'U') and o.id = c.id and o.id = object_id(@objname))!= 0 begin raiserror(15197,-1,-1,@objname) return (1) end if (select count(*) from syscomments where id = object_id(@objname) and encrypted = 0) = 0 begin raiserror(15471,-1,-1) return (0) end DECLARE ms_crs_syscom CURSOR LOCAL FOR SELECT text FROM syscomments WHERE id = OBJECT_ID(@objname) and encqypted = 0 ORDER BY number, colid FOR READ ONLY end /* ** Else get the text. */ SELECT @LFCR = 2 SELECT @LineId = 1 OPEN ms_crs_syscom FETCH NEXT FROM ms_crs_syscom into @SyscomText WHILE @@fetch_status >= 0 BEGIN SELECT @BasePos = 1 SELECT @CurrentPos = 1 SELECT @TextLength = LEN(@SyscomText) WHILE @CurrentPos != 0 BEGIN --Looking for end of line followed by carriage return SELECT @CurrentPos = CHARINEEX(char(13)+char(10), COLUMN_NAME[[[[ˆ0ш0шH.XЁЂт>>>>>h0шкМ/ш#column_priv1kkkkџџа0ш80шI$x;Ј яяяяяD.шМ/шККККНl1шˆ0шJ АБЂк—————nameТТТТ`1ша0шK@x;Ј- aaaaa (0€џџ|1ш4444ˆ1ш1шLx;ЈЧ ъъъъъnameППППИ1ш`1шM АБЂй~AllFFFFш0T™2шˆ1шN(x;Јп є0шЇЇа42шZZZY(2шИ1шOФљІзššššš~AllЯЯЯЯє0шp2ш2шP$x;Ј 1шд1ш,T™PPPPє0шЈ2ш(2шQx;ЈЯ оооооЄ0шŒу,T™‰ ‹‹‹‹р2шp2шRx;ЈЯ ПППППŒ-шŒ2ш0 шˆ ъъъъ,T™3шЈ2шSАБЂкiiiiip<<<<03шр2шTАБЂкЬЬЬЬЬuid™™™™X3ш3шUXЁЂЦЦЦЦЦp““““И3ш03шV@x;Ј- (0€ќ3шџџд3ш^^^^р3шX3шWx;ЈЧ эээээuidИИИИ4шИ3шXXЁЂт$$$$$4шлt3шpqqqqш`4шр3шY(x;Јџ ёёёёё0T™00|4шЄЄЄЄˆ4ш4шZФљІзHHHH0T™а4ш`4ш[$x;Ј ЩЩЩЩЩt3ш44шє0шœœœœ0T™ј4шˆ4ш\АБЂкМММММpщщщщє0ш 5ша4ш]АБЂк—————uidТТТТH5шј4ш^XЁЂСССССp””””™Ј5ш 5ш_@x;Ј- GGGGG(0€ь5шџџФ5ша5шH5ш`x;ЈЧ &&&&&uidssssш6шЈ5шaXЁЂтrrrrr6шмd5шp''''H6ша5шbАБЂкѓѓѓѓѓ#column_priv1ІІІІp6ш6шcАБЂкэээээgidИИИИА6шH6шdXЁЂ(((((#column_priv1}}}}™7шp6шe@x;Ј- еееее––––(0€T7шџџ,7ш€€€€87шА6шfx;ЈЧ )))))gid||||Sˆ7ш7шg.XЁЂтsssssh7шнЬ6ш#column_priv1&&&&яа7ш87шh$x;Ј d5шЬ6ш8LLLL0 ш8шˆ7шix;ЈЯ ПППППЄ4шЄ7ш‰ ъъъъaaaa08ша7шjАБЂкЇЇЇЇЇpђђђђX8ш8шkАБЂк‰‰‰‰‰uidмммм€8ш08шlXЁЂsssssp&&&&р8шX8шm@x;Ј- ZZZZZ0 ш(0€$9шџџќ8ш9ш€8шnx;ЈЧ zzzzzuid////@9шр8шoXЁЂтќќќќќ89шнœ8шpЉЉЉЉ™€9ш9шpАБЂк#column_priv1IIII0 шЈ9ш@9шqАБЂк™™™™™uidЬЬЬЬш9ш€9шrXЁЂ–––––#column_priv1УУУУH:шЈ9шs@x;Ј- ŠŠŠŠŠ0 ш(0€Œ:шџџd:шппппp:шш9шtx;ЈЧ OOOOOuidР:шH:шu.XЁЂтWWWWW :шн:ш#column_priv1;шp:шv$x;Ј EEEEEœ8ш:ш0 ш@;шР:шwx;ЈЯ ЇЇЇЇЇЄ4ш4 у0 ш‰ ђђђђ,T™x;ш;шxx;ЈЯ эээээФ2ш$;шSфффˆ ИИИИ0 ш№;ш@;шyTXЁЂ{  <шДnкЬ=шœ!шАЫЉАЫЉпMMMMь7шА<шx;шz x;ЈЩ йййййЬ=шДnк,T™  `т(Ь<ш €СџџџџLpкŒŒŒŒp=ш№;ш{ `}Ј_lllllrcЄ>шЄ>ш0 шф<ш0T™ь7ш,T™p=ш0 ш=ш0T™ь7ш,T™RT0 ш,=ш0T™ь7ш,T™o]0 шP=ш0T™ь7ш,T™)9999А=шА<ш|x;ЈЦ ЦЦЦЦ֘=ш’ џџ““““>шp=ш}Dx;Ј ђђђђђ$oкРр€4ЇЇЇЇšwP>шА=ш~АБЂкiiiii#protects<<<ш XЁЂ†††††џџd?ш,?шггггH?шP>ш€x;Јъ ддддд#protects€€ЌЯрР?ш?шXXЁЂЗУУУУУў) ^H–––– `кH?ш‚АБЂкprotecttype@@@@Ј"ш`С9”ццi№R(0.gzЕCREATE PROCEDURE sp_helpuser --- 1996/08/14 10:33 @name_in_db sysname = NULL --User,Group,Alias AS Set nocount on Set ansi_warnings off Declare @RetCode int ,@_rowcount int Declare @charMaxLen_UsName varchar(11) ,@charMaxLen_GrName varchar(11) ,@charMaxLen_LoName varchar(11) ,@charMaxLen_DbName varchar(11) Declare @Name1Type char(2) ,@CMaxUsUID smallint ----------------------- create holding table -------------------- /*Create temp table before any DML to ensure dynamic*/ Create Table #tb1_uga ( zUserName sysname collate database_default Null ,zGroupName sysname collate database_default Null ,zLoginName sysname collate database_default Null ,zDefDBName sysname collate database_default!Null ,zUID smallint Null ,zSID varbinary(85) Null ) -------- Select @RetCode = 0 ,@Name1Type = Null ,@CMaxUsUID = 16383 ------------- What type of value (U,G,A) was input? -------------- -------- NULL IF (@name_in_db IS Null) begin Select @Name1Type = '-' INSERT into #tb1_uga ( zUserName ,zGroupName ,zLoginName ! ,zDefDBName ,zUID ,zSID ) SELECT usu.name ,case when (usg.uid is null) then 'public' else usg.name end ,lo.loginname ,lo.dbname ,usu.uid ,usu.sid from sysusers usu left outer join (sysmembers mem inner join sysusers usg on mem.groupuid = usg.uid) on usu.uid = mem.memberuid ! left outer join master.dbo.syslogins lo on usu.sid = lo.sid where (usu.islogin = 1 and usu.isaliased = 0 and usu.hasdbaccess = 1) and (usg.issqlrole = 1 or usg.uid is null) GOTO LABEL_25NAME1TYPEKNOWN end -------- USER INSERT into #tb1_uga ( zUserName ,zGroupName ,zLoginName ,zDefDBName ,zUID ,zSID ) SELECT ! usu.name ,case when (usg.uid is null) then 'public' else usg.name end ,lo.loginname ,lo.dbname ,usu.uid ,usu.sid from sysusers usu left outer join (sysmembers mem inner join sysusers usg on mem.groupuid = usg.uid) on usu.uid = mem.memberuid left outer join master.dbo.syslogins lo on usu.sid = lo.sid where (usu.islogin = 1 and usu.isaliased = 0 and usu.hasdbaccess = 1) and (usg.issqlrole = 1 or usg.uid is null) and usu.name = @name_in_db Select @_rowcount = @@rowcount IF (@_rowcount > 0) begin Select @Name1Type = 'US' GOTO LABEL_25NAME1TYPEKNOWN end -------- ALIAS INSERT into #tb1_uga ( zUserName ,zGroupName ,zLoginName ,zDefDBName ,zUID ,zSIE ) SELECT usu.name ,case when (usg.uid is null) then 'public' else usg.name end ,lo.loginname ,lo.dbname ,usu.uid ,usu.sid from (SELECT sid, altuid FROM sysusers WHERE isaliased = 1) al inner join (sysusers usu left outer join (sysmembers mem inner join sysusers usg on mem.groupuid = usg.uid) on usu.uid = mem.memberuid ! left outerњњњмXм7 `}Ј_~~~~~‰мyц@vцE@`}Ј_11111,Vш====,(іс”м§PўЌ;*****аaъddddАbц€bц;@`}Ј Ќм<мЬŽм\Žм++++‘мм8x;ЈЦ VVVVVIIII’ џџ_Б€‘мим9Dx;Ј кккккЌ‚ъ€4<ъИ‘м‘м:АБЂк"""""#protectswwwwx’숑м; XЁЂ(((((џџЬ’м”’м}}}}А’мИ‘м<x;Јъ vvvvv#protects####ъ;Z(“мx’м=XXЁЂЗ55555;+^H`````“мА’м>АБЂккккккprotecttypeР“м(“м?@x;Ј- =====(0€џџм“мhhhhј“м`“м@x;ЈЧ ЏЏЏЏЏprotecttypeњњњњ@”мР“мA(x;Јџ ……………@”м00\”мааааh”мј“мBФљІзіііііЮЃЃЃЃмА”м@”мC$x;Ј ќќќќќ|“м”мЉЉЉЉр”мh”мDАБЂкќќќќќactionЉЉЉЉќќ@•мА”мE@x;Ј-      ф"(0€џџ \•мѕѕѕѕp•мр”мF x;ЈЧ ЙЙЙЙЙactionьььь dИ•м@•мG(x;Јџ zzzzz 00д•м////р•мp•мHФљІзuuuuuХ (–мИ•мI$x;Ј 11111ќ”мŒ•мddddXgц`–мр•мJx;ЈЯ ‰‰‰‰‰„”мќ•мgцˆ мммм;X–м(–мK АБЂк>>>>>namekkkkџџ№–м`–мL@x;Ј- УУУУУ$(0€џџ —м––––—м–мMx;ЈЧ FFFFFnameX—м№–мNАБЂк77777#column_priv1bbbb%—м—мOАБЂкzzzzzCOLUMN_NAME////а—мX—мPXЁЂШШШШШ#column_priv1юю,0˜м—мQ@x;Ј- uuuuu(0€„˜мџџL˜м h˜ма—мRx;ЈЧ жжжжжCOLUMN_NAMEƒƒƒƒтȘм0˜мS.XЁЂт˜˜мљь—м#column_priv1CCCC™мh˜мT$x;Ј yyyyyЌ–мь—м< ›,,,,˜˜˜˜0™мȘмU АБЂк`````name5555h™м™мV@x;Ј- (((((Ўч(0€џџЌ™м}}}}И™м0™мWx;ЈЧ {{{{{name....ш™м™мX АБЂйЉЉЉЉЉ~Allќќќќ0`к0šмИ™мY(x;Јп ІІІІІ ЇЇа4LšмѓѓѓѓXšмш™мZФљІзyyyyy~All,,,,Ўк šм0šм[$x;Ј їїїїїL™мšмЂЂЂЂHЙšиšмXšм\x;ЈЯ ‚‚‚‚‚д˜мфу8—м‰ зззз˜€›м šм]x;ЈЯ D–мМšмееееˆ QQQQ8›миšм^АБЂкŒŒŒŒŒuidйййй˜›м›м_@x;Ј- ўўўўўlЏš(0€џџД›мЋЋЋЋР›м8›м`x;ЈЧ UUUUUuidкœм˜›мa(x;Јџ ввввв0`к00$œм‡‡‡‡0œмР›мbФљІзttttt!!!!мxœмœмc$x;Ј RRRRRT›мм›м œм0œмdАБЂкiiiiiuid<<<<мxœмe@x;Ј- |||||(0€џџм))))(м œмfx;ЈЧ НННННuidшшшшhммgАБЂкяяяяя#column_priv1ККККм(мhАБЂкЗЗЗЗЗgidттттамhмiXЁЂЉЉЉЉЉ#column_priv1ќќќќ0žммj@x;Ј- 88888(0€tžмџџLžмmmmmXžмамkx;ЈЧ _____gid Јžм0žмl.XЁЂт‡‡‡‡‡ˆžмќьм#column_priv1вввв№žмXžмm$x;Ј SSSSSМœмьм(ŸмЈžмnx;ЈЯ лллллLœмФžм‰ ŽŽŽŽPŸм№žмoАБЂк+++++uid~~~~АŸм(Ÿмp@x;Ј- rrrrr(0€џџЬŸм'''' €ъPŸмqx;ЈЧ {{{{{uid....`”јˆ tчipГaнь <!H&{Е /* Procedure for 6.0 and 6.50 server */ CREATE PROCEDURE sp_columns ( @table_name varchar(96), @table_owner varchar(96) = null, @table_qualifier varchar(32) = null, @column_name varchar(96) = null, @ODBCVer int = 2) AS DECLARE @full_table_name varchar(193) DECLARE @table_id int if @ODBCVer <> 3 select @ODBCVer = 2 if @column_name is null /* If column name not supplied, match all */ select @column_name = '%' if @table_qualifier is not null begin if db_name() <> @table_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @table_name is null begin /* If table name not supplied, match all */ select @table_name = '%' end if @table_owner is null begin /* If unqualified table name */ SELECT @full_table_name = @table_name end else begin /*!Qualified table name */ SELECT @full_table_name = @table_owner + '.' + @table_name end /* Get Object ID */ SELECT @table_id = object_id(@full_table_name) if ((charindex('%',@full_table_name) = 0) and (charindex('[',@full_table_name) = 0) and (charindex('_',@full_table_name) = 0) and @table_id <> 0) begin /* this block is for the case where there is no pattern matching required for the table name */ SELECT TABLE_QUALIFIER = convert(varchar(32),DB_NAME()), TABLE_OWMER = convert(varchar(32),USER_NAME(o.uid)), TABLE_NAME = convert(varchar(32),o.name), COLUMN_NAME = convert(varchar(32),c.name), DATA_TYPE = d.DATA_TYPE, TYPE_NAME = convert(varchar(32), case when t.usertype > 100 or t.usertype in (18,80) then t.name else d.TYPE_NAME end), "PRECISION" = convert(int, case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else isnull(convert(int,c.prec), 2147483647) end), LENGTH = convert(int, case when d.ss_dtype IN (106, 108, 55, 63) then /* decimal/numeric types */ c.prec+2 else isnull(d.length, c.length) end), SCALE = convert(smallint, c.scale), RADIX = d.RADIX, NULLABLE = /* set nullability from status flag */ convert(smallint, convert(bit, c.status&8)), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, SQL_DATA_TYPE = d.SQL_DATA_TYPE, SQL_DATETIME_SUB = d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(convert(int,c.prec), 2147483647)+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',(c.status&8)+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, syscomments m, master.dbo.spt_datatype_info d, systypes t UHERE o.id = @table_id AND c.id = o.id AND t.type = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND o.type <> 'P' AND isnull(d.AUTO_INCREMENT,0) = (c.status&128)/128 AND c.usertype = t.usertype AND c.name like @column_name AND c.cdefault *= m.id AND m.colid = 1 ORDER BY 17 end else begin /* this block is for the case where there IS pattern matching done on the table name */ if @table_owner is null /* If owner not supplied, match all */ select @table_owner = '%' SELECT TABLE_QUALIFIER = convert(varchar(32),DB_NAME()), TABLE_OWNER = convert(varchar(32),USER_NAME(o.uid)), TABLE_NAME = convert(varchar(32),o.name), COLUMN_NAME = convert(varchar(32),c.name), DATA_TYPE = d.DATA_TYPE, TYPE_NAME = convert(varchar(32), case when t.usertype > 100 or t.usertype in (18,80) then t.name else d.TYPE_NAME end), "PRECISION" = convert(int, caqe when d.DATA_ <!H&{YTYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else isnull(convert(int,c.prec), 2147483647) end), LENGTH = convert(int, case when d.ss_dtype IN (106, 108, 55, 63) then /* decimal/numeric types */ c.prec+2 else isnull(d.length, c.length) end), SCALE = convert(smallint, c.scale), RADIX = d.RADIX, NULLABLE = /* set nullability from status flag */ convert(smallint, convert(bit, c.stauus&8)), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, SQL_DATA_TYPE = d.SQL_DATA_TYPE, SQL_DATETIME_SUB = d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(convert(int,c.prec), 2147483647) + d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254),rtrim(subqtring('NO YES',(c.status&8)+1,3))), SS_DATA_TYPE = c.type FROM syscolumns c, sysobjects o, syscomments m, master.dbo.spt_datatype_info d, systypes t WHERE o.name like @table_name AND user_name(o.uid) like @table_owner AND o.id = c.id AND t.type = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND o.type <> 'P' AND isnull(d.AUTO_INCREMENT,0) = (c.status&128)/128 AND c.usertype = t.useqtype AND c.name like @column_name AND c.cdefault *= m.id AND m.colid = 1 ORDER BY 2, 3, 17 end = able_id AND c.id = o.id AND t.type = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND o.type <> 'P' AND isnull(d.AUTO_INCREMENT,0) = (c.status&128)/128 AND c.usertype = t.usertype AND c.name like @column_name AND c.cdefault *= m.id AND m.colid = 1 ORDER BY 17 end else begin /* this blmck is for the case where there IS pattern matching done on the table name */ if @table_owner is null /* If owner not supplied, match all */ select @table_owner = '%' SELECT TABLE_QUALIFIER = convert(varchar(32),DB_NAME()), TABLE_OWNER = convert(varchar(32),USER_NAME(o.uid)), TABLE_NAME = convert(varchar(32),o.name), COLUMN_NAME = convert(varchar(32),c.name), DATA_TYPE = d.DATA_TYPE, TYPE_NAME = convert(varchar(32), case when t.usertype > 100 or t.usertype in (18,80) then t.name else d.TYPE_NAME end), "PRECISION" = convert(int, case when d.DATA_Zтт+$x;Ј ђђђђђ\Yт$Zт№ФшЇЇЇЇ”—šјZтxZт,x;ЈЯ ууууу”Xт”Zтˆ ЖЖЖЖ [тРZт-АБЂк"""""pwwwwP[тјZт. АБЂк‹‹‹‹‹nameооооЌ;Кx[т [т/XЁЂpQQQQЌ; и[тP[т0@x;Ј- ЦЦЦЦЦ;|(0€\тџџє[т““““\тx[т1x;ЈЧ BBBBBname8\ти[т2XЁЂтььььь0\т/”[тpЙЙЙЙшx\т\т3АБЂкООООО#column_priv1ыыыы€ЎфА\т8\т4АБЂкCOLUMN_NAMENNNN№\тx\т5XЁЂJJJJJ#column_priv1ЁЁ4XтP]тА\т6@x;Ј- [[[[[_Б(0€Є]тџџl]тˆ]т№\т7x;ЈЧ COLUMN_NAMEBBBBши]тP]т8.XЁЂтИ]т0 ]т#column_priv1KKKK~ ^тˆ]т9$x;Ј ‡‡‡‡‡”[т ]т ввввЭЭЭЭP^ти]т: АБЂкnameGGGGŽŽƒƒƒƒА^т ^т;@x;Ј- ZZZZZЄ'ч(0€џџЬ^ти^тP^т<x;ЈЧ jjjjjname????_тА^т= АБЂйЉЉЉЉЉ~AllќќќќP_ти^т>(x;Јп |||||№ЄšЇЇа4l_т))))x_т_т?ФљІзEEEEE~Allа\тР_тP_т@$x;Ј >>>>>l^т$_тУУУУkkkkŒ_т Ршx_тAx;ЈЯ """""є]т у_ ‰ wwwwЬŽм|м`эьц D@ш|xЇњ2‚С˜С˜ІС˜ІњжŒ њжŒ t_њжŒ ІњжŒ )?ЌKG:YG:YarG:YюСЁ\ СЁ\ СЁ\ СЁ\ хQr`хQr`хQr`КШƒcІКШƒcЦКШƒcКШƒcМTЎt™™МTЎt(МTЎtМTЎtЛМTЎtѕxЂuѕxЂu}}ѕxЂuбѕxЂu.–v.–vЁ.–vKR[{ KR[{ KR[{ „„iMЕŽК‘ К‘ rК‘  `ЃЗ>8ЃЗ> 55ЃЗ>PЃЗ> ІЃЗ>мл2мл2 мл2мл2 мл2С˜С˜ІС˜ С˜њжŒ њжŒ њжŒ  њжŒ ІvfavfaavfaІxgt xgt 4•9І•9Н•9І•9І•9џџ•9 І•9І•9•9y­ ђђy­ ›y­ y­  Лy­ y­ y­ ЮЮy­ ^y­ Іy­ eay­ y­ Іь;‡  ь;‡вX‚1  вX‚1јвX‚1вX‚1 вX‚1вX‚1t}Х^4}Х^4 }Х^4WW}Х^4}Х^4}Х^4}Х^4}Х^4І}Х^4}Х^44}Х^4І}Х^4o}Х^4e}Х^4}Х^4}Х^4 }Х^4}Х^4І}Х^4І}Х^4}Х^4}Х^4@}Х^4}Х^4І}Х^4}Х^4}Х^4}Х^4[[гž:žгž:гž:гž:Ігž:Ігž:џџгž:Ігž:Ігž:џџ~ є<~ є<~ є<q~ є< ~ є<Л~ є<~ є<~ є<$$~ є<ї~ є<~ є<~ є< ~ є<~ є<~ є<І~ є>ЂЂЗ/ш=ГЗ/ш=З/ш=З/ш={З/ш=8З/ш=..З/ш=ЗЗ/ш=0З/ш=ттЗ/ш=№Sм>І№Sм>І№Sм>№Sм>І№Sм>І№Sм>№Sм>a№Sм>8№Sм>44№Sм>№Sм>І№Sм>№Sм>№Sм>№Sм>ƒƒcтYIъcтYIrcтYIcтYIЭcтYIЙœNJœNJœNJœNJІœNJœNJGs*MЪGs*MGs*MGs*MџGs*MGs*M€—N€—N€—N€—N€—N€—NЙЛOЙЛOЙЛOЙЛOЙЛOtЙЛOІђпPmђпPђпP(ђпPчђпP}}ђпP+ћPVV+ћPЖ+ћP4+ћR+ћPІ+ћPd(яQtd(яQd(яQЦd(яQ22d(яQХd(яQѓ%œX$ѓ%œX4ѓ%œXqq,JYЎ,JYІ,JYІen„Zen„Zen„Z""ž’x[‚ž’x[ž’x[Лž’x[ž’x[зЖl\зззЖl\.зЖl\зЖl\зЖl\ Ѓl Ѓl Ѓl Ѓl{{йB—mЇйB—mйB—mS}Х^4Ч}Х^4}Х^4}Х^4}Х^4}Х^4}Х^4}Х^4}Х^4С}Х^4}Х^4}Х^4 }Х^4}Х^4І}Х^4Ігž: гž:Ігž:гž:гž:гž:гž: гž:tгž:Ігž:bгž:yгž:гž: dгž:гž:гž:гž:гž:F~ є<l~ є<І~ є<~ є< 4~ є<І~ є<bl~ є<І~ є<U~ є< ~ є<~ є<ъ~ є<8~ є<ПП~ є<=~ є< 4~ є<~ є<І~ є<П~ є<~ є< ~ є<^^~ є<kЗ/ш=З/ш=ЛЗ/ш=З/ш=З/ш=>>З/ш=З/ш=З/ш= З/ш=ІЗ/ш=ПЗ/ш=З/ш=З/ш=X№Sм>Ш№Sм>и №Sм>0 №Sм>h№Sм>ˆ А А А А А А А А А А А А А А А ` Ш x р  ј Ј  Р ( и h  @ № € 0 X  p ˆ 8 ˜ H   P аˆш  ИаИ ˆXpјрША˜€hP8@8Ph€˜АШрј(Ри№ `xЈ №0HиРЈx`H0шаИ ˆpX@(шјрША˜€h 8Ph€ЈРи№`x0HP8 ашˆ@ XИpјАШ(рh €8˜Pи№ЈРH`x0Иpаˆш (р@јXАh€Ш˜№x Ј08РHPи`ˆ (И@аXшpP  h Ј € Р ˜ и А № Ш  р ј 8 H И `  а x 0 ш №иРЈŒk˜ 0Hщ}xq№G`eQц^уteQц^уtЋчшVц^уtРЋчшVц^уtG:Yц^уtG:Yц^уt ЧG:Yц^уt Єbц^уtЄbц^уtЄbц^уtщiЧЫnmuщiЧЫnmuщiЧЫnmuDDщiЧЫnmuщiЧЫnmu4щiЧЫnmuїщiЧЫnmuщiЧЫnmu їщiЧЫnmu ѓщiЧЫnmuщiЧЫnmuїщiЧЫnmurщiЧЫnmu8щiЧЫnmu''щiЧЫnmu‡щiЧЫnmuїщiЧЫnmuї•9Ыnmu•9Ыnmuї•9Ыnmuї•9Ыnmuї•9Ыnmu•9Ыnmu h•9Ыnmuїy­ ЫnmuХy­ ЫnmuЏy­ Ыnmuy­ Ыnmuy­ Ыnmuy­ Ыnmuїy­ Ыnmu еy­ Ыnmu Їy­ Ыnmu€€y­ Ыnmu;y­ Ыnmuїy­ Ыnmuї“}Ыnmu“}Ыnmuї“}Ыnmu“}Ыnmu“}Ыnmuї“}Ыnmu“}Ыnmu“}Ыnmu “}Ыnmu“}Ыnmu“}Ыnmu“}Ыnmuїh ƒзuјh ƒзuh ƒзuїh ƒзuG:Yƒзu4G:YƒзuБ‹h “avїБ‹h “avtБ‹h “avїЕЃН,“avЕЃН,“av 4ЕЃН,“avїЕЃН,“avЈЈgСŠw.–vчЄx}ЪяГxбэ(Џџ=yчЄx}ЈyчЄx}<8œzчЄx}u\{їчЄx}Ў€„|бэ(“}G:Y Щl~ЎG:Y Щl~8 ћћ 14Љ8E8.8ї­8€€8š*8p‚8Ѓ 8 їљ8ЌЌš…8аа_ ї ї  ї ї ; Ы h 0 " 8  Ф 8  ‘‘ з § 8 ЈЈ r ї їїїЌЌГГїЕЃН,ЫnmuЕЃН,Ыnmu юЧБ-“avyюЧБ-“av 8юЧБ-“av,,юЧБ-“avIюЧБ-ЫnmuюЧБ-Ыnmu (2;7Yэ`S(2;7Yэ`8(2;7Yэ`(2;7Yэ`ILуRYэ`їLуRYэ`їLуRYэ`LуRYэ`їLуRYэ`їLуRYэ`жpзSYэ`гжpзSYэ`hжpзSYэ`жpзSYэ`€жpзSYэ`8жpзSYэ`ѓ%œXYэ`$ѓ%œXYэ`8ѓ%œXYэ`ѓ%œXYэ`qqIџT^ц^уtIџT^ц^уt‚#I_ц^уt ‚#I_ц^уt8ƒiоgЫnmuONƒiоgЫnmu0ƒiоgЫnmuїƒiоgЫnmuїƒiоgЫnmuƒiоgЫnmuїƒiоgЫnmu.жКjЫnmu.жКjЫnmuї.жКjЫnmu.жКjЫnmu.жКjЫnmuЈ.жКjЫnmu.жКjЫnmuh@DtЫnmu4h@DtЫnmuїh@DtЫnmuh@DtЫnmuџџh@DtЫnmu h@DtЫnmu8h@DtЫnmuѕѕЁd8uЫnmuпЁd8vЫnmuїЁd8uЫnmuЁd8uЫnmuЁd8uЫnmuїЁd8uЫnmuїЁd8uЫnmuкˆ,vЫnmuїкˆ,vЫnmuкˆ,vЫnmuкˆ,vЫnmuїкˆ,vЫnmuкˆ,vЫnmuкˆ,vЫnmuœŒп5лЮС~№‚ыˆ•ї•ї“x;ЈЋЩЩЩЩЩЄ•їdateˆ œœœœŒŒ˜а•їP•ї”$x;ЈЋ:::::ь•їt˜їhhoooo@–їˆ•ї•(x;ЈЋЦЦЦЦЦ4–їXžЧF чча4ŒаЇ““““`–їа•ї–$x;ЈЋ”””””|–їь–ї<<<<І88 СССС0рЈ–ї–ї—(x;Ј—IIIII88 Ф–їа–ї`–ї˜ФљІзъъъъъППППƒа—їЈ–ї™$x;ЈЋ.....4—їЄ—ї88І88 {{{{`—їа–їš(x;Ј—ффффф88 |—їББББˆ—ї—ї›ФљІздддда—ї`—їœ$x;ЈЋNNNNN|TхАœЧІча4<$›0˜їˆ—ї@x;ЈЋ?????ы1 (0 ча4џџL˜їjjjjX˜їа—їžx;ЈЧ >>>>>namekkkk ˜ї0˜їŸ$x;ЈЋїїїїїМ˜їќ~e чча4ЂЂЂЂŒŒ˜ш˜їX˜ї (x;Ј—^^^^^ЇЇа4™ї ™ї ˜їЁФљІз44444#aaaaX™їш˜їЂ$x;ЈЋMMMMMt™ї<ЈІx8 ™ї™їЃ(x;Ј—88 М™ї@@@@Ш™їX™їЄФљІзЄЄЄЄЄёёёёšї ™їЅ(x;ЈЋyyyyy,šїГK]88 ,,,,XšїШ™їІ$x;ЈЋцццццtšїфšїь%­ІГГГГќ šїšїЇ(x;Ј—wwwww@šї88 Мšї""""ШšїXšїЈФљІзшшшшшННННќE›ї šїЉ$x;ЈЋ,›їєїІШШШШH›їШšїЊx;ЈЋїїїїїd›їЫˆ ЂЂЂЂ›ї›їЋ$x;ЈЋѓѓѓѓѓЌ›ї<ї†hhІІІІи›їH›їЌ$x;ЈЋSSSSSєFј„œїœ88 8œї›ї­@x;ЈЋъъъъъ(088  TœїППППhœїи›їЎ x;ЈЧ uuuuustatus Аœї8œїЏ$x;ЈЋъъъъъЬœїE88 ППППpœїјœїhœїА(x;Ј—ƒƒƒƒƒЅЅїжжжж їАœїБФљІзѓѓѓѓѓІІІІрœїhїјœїВ$x;ЈЋттттт„ї єЈE88 HЗЗЗЗќкАї їГ(x;Ј—QQQQQPї00ЬїиїhїДФљІзMMMMЂЌќѓ žїАїЕ$x;ЈЋ:::::<žїд+­ІoooohžїиїЖ(x;Ј—ЭЭЭЭЭааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааИ ˆpX@(ј р Ш А ˜ € h P 8  № и Р Ј  x ` H 0  ш а И   ˆ p X @ h P 8  № и Р Ј  x ` H 0  шаИ ˆpX@(ј(p@XPh €8иЈ№Р0А˜€hP8 `H0№иРЈx`И ˆpX@(јрШАxш˜€hP8 №иРЈx`H0шаИ ˆpX@(јрША˜€hPrŒa ЦАъ{Џк8€`7e3;++f3;++f3ј;++f3tOg3tOg3ЎtOg38­sh3­sh3Џ­sh387e4њњ7e4J7e487e47e47e47e4T7e4Ї7e4 7e4 7e4 7e4 ­sh4­sh4ј­sh4­sh4­sh4Ф­sh48­sh4­sh4J­sh4 8­sh4 ­sh4  ­sh4 8;++f5;++f5n;++f58;++f5;++f5ѕ;++f58;++f5;++f5‰;++f5 8;++f5 З;++f5 :;++f5 8;++f5 ;++f5;++f58tOg6OOtOg6ПtOg6tOg6tOg6tOg68tOg6GGtOg6UtOg6 јл• ^јл• ^ л• ^ јл• ^ ј1oV_1oV_ц‡H_hŸŸщo_ŸŸщo_їŸŸщo_8ŸŸщo_ŸŸщo_>ŸŸщo_8ŸŸщo_хŸŸщo_ kkиУнp_bиУнp_иУнp_ иУнp_8иУнp_иУнp_иУнp_ЅиУнp_ ]]‡H`_‡H`ј‡H`ј‡H`иУнp`јиУнp`МTЎt`МTЎt`ј.–v`55.–v`бэ(щiЧtќvЂ% tќvЂ%tќvЂ%tќvЂ%јtќvЂ%tќvЂ%tќvЂ%^tќvЂ%8tќvЂ% tќvЂ% єtќvЂ% tќvЂ% rh ЏЦh ЏЦ8h ЏЦWWОриЏЦVОриЏЦјОриЏЦјMо… ЏЦMо… ЏЦјMо… ЏЦј†z ЏЦћћ†z ЏЦћ†z ЏЦh1oVЏЦ1oVЏЦт1oVЏЦ8zѓžЏЦzѓžЏЦчOjАЏЦ8OjАЏЦјOjАЏЦВБЄІGЏЦ€ЄІGЏЦееЄІGЏЦЃЄІGЏЦ8TШšHЏЦііTШšHЏЦnTШšHЏЦјTШšHЏЦјьŽIЏЦьŽIЏЦјьŽIЏЦьŽIЏЦЦƒJЏЦјЦƒJЏЦХХЦƒJЏЦЦƒJЏЦ№ИJЏЦ№ИJЏЦ№ИJЏЦ›џ4wKЏЦјџ4wKЏЦџ4wIЏЦџ4wKЏЦВŽ2$RЏЦ8Ž2$RЏЦччŽ2$RЏЦЯ9ŸUЏЦ9ŸUЏЦј9ŸUЏЦА€^њYЏЦ8€^њYЏЦ хх€^њYЏЦ x™4Ž0ЏЦј™4Ž0ЏЦј™4Ž0ЏЦ™4Ž0ЏЦјвX‚1ЏЦјвX‚1ЏЦвX‚1ЏЦЙвX‚1ЏЦhвX‚1ЏЦљвX‚1ЏЦ[вX‚1ЏЦ8вX‚1ЏЦа•ЫTЏЦ•ЫTЏЦ8HЙПUЏЦHЙПUЏЦKKHЙПUЏЦyHЙПUЏЦ,,ј€Pјё(x;Ј—ŠŠŠŠŠ88 Qјпппп QјАPјђФљІз99999llllЈ›ьhQјјPјѓ$x;ЈЋ„QјE88 HBBBB0@јАQј Qјє(x;Ј—jjjjjQј00ЬQј????иQјhQјѕФљІзIIII@јиQј RјАQјі$x;ЈЋHHHHHHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUHЙПU­HЙПU<JEъfiiJEъfvJEъfJEъfkJEъfJEъfСѕБЦiѕБЦiѕБЦiѕБЦiѕБЦiѕБЦik Ѓl Ѓl Ѓl Ѓl Ѓl Ѓl ЃlЌ Ѓl Ѓlљљ Ѓl Ѓl Ѓl Ѓl  Ѓl  Ѓl n Ѓl  Ѓl2йB—mйB—mRRйB—m­ії[r ії[r /Ps /Ps /Ps Gs*MiGs*MGs*MGs*MGs*MђпPђпPђпPђпPђпPђпPђпPђпR•ЫT­•ЫT§•ЫT•ЫTa•ЫTHЙПU2HЙПUHЙПUHЙПUHЙПUHЙПUHЙПU00HЙПUЭHЙПUHЙПUHЙПUHЙПUHЙПUHЙПUJEъfaJEъfJEъfJEъfЗJEъfJEъfЉѕБЦiѕБЦiѕБЦiѕБЦiѕБЦiѕБЦia Ѓl Ѓl Ѓl Ѓl Ѓl Ѓl Ѓlа Ѓlа Ѓlа Ѓlа Ѓlаааааа(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((                          № и Р Ј  x ` H 0  шаИ ˆpX@ x(№HРјшр`ША0˜€hPа8  №pиР@Јx`рH0АhшаЈИ 8ˆ`pи0XЈ@x(HјрШАш˜€ИhPˆ8 X№(иРјЈШx`€H0Риша№И ˜ˆpX@ (8јрPША˜€hP8 №иРЈx`ш‰Ж $ 8ь}x w,a( гž:гž:§гž:Cгž:8гž:.гž:Њгž: 8гž: гž: ™~ є<8~ є<ЬЬ~ є<+~ є<~ є< ~ є< гЗ/ш=8З/ш=††З/ш= "еёW§еёW §еёWеёW§еёW §еёW§еёWЖXhX XžXЏX XЫЫG:Y G:YСЁ\УСЁ\ ЇСЁ\––СЁ\єСЁ\ §СЁ\  §СЁ\СЁ\§СЁ\:х•] :х•] §:х•] :х•] :х•]бб:х•]H€›aH€›aH€›a§WšZbўWšZbWšZb §WšZbОNc4ОNcОNc §ОNct­:яs§­:яs ­:яs 4­:яs §gСŠwccgСŠwgСŠw™gСŠwgСŠwgСŠw§gСŠw§gСŠw gСŠw §gСŠwЛgСŠwgСŠw§gСŠwЬgСŠwЏџ=yЏџ=y™Џџ=y  й syй syй sy й syй syЈy --Јy ЈyЈy§ЈyЈy8Јy7Јy Јy 8“},“}8“}yy“}|“}§“}§“}“} §“}§“}х“}щiЧhщiЧхщiЧщiЧЏщiЧщiЧ BBК‘ ЫК‘  К‘  P•9Ї•9•9–y­ §y­ §ЃЗ>ЃЗ> §ЃЗ>ЃЗ> мл2§мл2 мл2 мл2 ШС˜С˜њжŒ ЕњжŒ §њжŒ  ў5‡Ћ25‡Ћ2§5‡Ћ2 }Х^44}Х^4}Х^4§}Х^4t}Х^4§}Х^4}Х^4 4}Х^4 §Љ[ОE WWИ №Sм>№Sм> №Sм>№Sм>№Sм> №Sм>№Sм>№Sм> )xа?§)xа?)xа?№)xа? )xа?bœФ@вbœФ@ЄbœФ@ 8bœФ@ёёbœФ@хbœФ@§›РИA§›РИA›РИA§›РИA§›РИAч›РИAВ›РИA h›РИA8›РИA›РИAЏ›РИA дфЌBKKдфЌBЖдфЌB§дфЌBРдфЌB ЇдфЌB••дфЌBидфЌB§дфЌB§дфЌBдфЌB§дфЌBдфЌBдфЌB§дфЌBдфЌB дфЌBШдфЌBдфЌBдфЌAcдфЌB§дфЌBў ЁC ЁC§ ЁC ЁC4 ЁC  ЁC§ ЁCt ЁC§ ЁC ЁC4 ЁC§ ЁC™™ ЁC ЁC ЁC ЁC ЁC  ЁC§ ЁC ЁCdd ЁCЌ ЁC ЁC ЁC~-%b -%b -%b™-%b -%bƒiоgƒiоgƒiоgƒiоgƒiоgООƒiоg ƒiоg4ƒiоg§ƒiоgƒiоgƒiоgЄƒiоgМвhМвhqМвh8ѕБЦi $$ѕБЦi5ѕБЦi§ Ѓl § Ѓl Ѓl§„Џsp §„Џspi„Џsp„Џsph/Ps i/PsZ/PsЏh@Dth@Dth@Dth@Dt §h@Du(h@DtЇh@Dt}}h@DtЁd8u§Ёd8u§Ёd8uЁd8u §Ёd8uЁd8uЁd8u§Ёd8uЁd8uкˆ,vкˆ,vкˆ,vкˆ,vЕкˆ,v §кˆ,vўкˆ,vкˆ,v§кˆ,vкˆ,v4кˆ,v d\§ККККx\§ш[§0 x;ЈЧ ­­­­­xtypeјјјј§\§Р\§H\§1(x;Ј—LLLLL==ЇЇа4м\§ш\§x\§2ФљІзбббббPK„„„„880]§Р\§3$x;ЈЋ=====L]§М]§^=Іhhhh88x]§ш\§4(x;Ј—ДДДДД88 ”]§сссс ]§0]§5ФљІз***** ==ш]§x]§6$шшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшш шшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшш(  8Ph€  № и Р Ј  x ` H 0  шаИ ˆpX@(јрША˜€hP8 №иРЈx`H0шаИ ˆpX@(€˜АШрјрША˜€hP8 №иРЈx`H0шаИ ˆpX@(hH`@xXpЈˆР иИ№аш 880PHh`€x˜АЈШРриј№(@Xpˆ ИашРxиH№Ј`0јрША˜€hP8 №иРЈx`ше ў Pэ}ˆuѓ'R „!Иu}FИu}F Иu}F Иu}FџИu}FтВFтВF тВFтВF *ОeHœNJtœNJœNJœNJœNJœNJœNJœNJ)?ЌK)?ЌKO6L0O6LHO6LO6L8O6LO6LO6L O6L =O6LO6L8ЙЛOžЙЛO8ЙЛOЫЫЙЛOJЙЛOЙЛOЙЛOЙЛOђпPђпPђпPђпP ђпPcЉ5UеёWеёWеёW XXG:YG:YG:YxЙZ xЙZ xЙZ џШœ­[Шœ­[ Шœ­[ Шœ­[ СЁ\ СЁ\ СЁ\ t+Ыж\+Ыж\+Ыж\+Ыж\:х•] :х•] s Š^ s Š^Ќ-~_ Ќ-~_хQr`HхQr`хQr`0хQr` vfavfaeevfaЁvfa H€›aсH€›bуH€›a8H€›aЖЖWšZbЉWšZbWšZbОNcОNcОNcКШƒcКШƒcКШƒcКШƒc ­:яs ­:яs.–v.–vЈgСŠwgСŠwgСŠwgСŠwgСŠw Џџ=yЏџ=yй syџй syЈyЈy Јy KR[{KR[{KR[{tЎ€„| Ў€„| Ў€„| “}“}“}“}Yэ`HYэ`Yэ`=Yэ`Yэ` xgt Cxgt xgt xgt К‘  ќК‘  8К‘  ЉЉ•9т•9•9•91oV1oV1oV 1oV 1oV $ц$ц2Еы џџ2Еы 2Еы 2Еы Є§гЄ§гr Є§гOjАOjАOjАOjАС˜4ђпPђпP ђпPђпPђпP+ћP+ћP +ћP+ћP+ћP+ћP+ћP +ћP+ћP+ћPd(яQŽd(яQјd(яQd(яQџd(яQїd(яQd(яQd(яQЂЂLуRBLуRLуRLуR4LуRLуRLуR4LуRжpзS жpзSжpзSжpзSжpзSжpзSжpзSжpзS•ЫT•ЫTг•ЫT•ЫTHЙПUJHЙПUHЙПUHЙПUЧHЙПUHЙПUџHЙПUHЙПUѓ%œXѓ%œX4,JY ,JZ,JYt,JY,JYen„Z 4en„Zen„Zssen„Zen„Z-%bиќeџиќeиќeиќe!іe 4!іe!іe!іet!іeJEъfJEъf4JEъfJEъf11ƒiоgƒiоg­ƒiоgƒiоgМвh&МвhМвhѕБЦi>ѕБЦivѕБЦi4ѕБЦigњЎkЋgњЎk4gњЎkўўgњЎk‘ Ѓl 4 Ѓl Ѓl Ѓl ЃlЌйB—m ЇйB—mйB—mйB—mйB—mg‹n 8g‹ng‹ng‹ng‹nK‹o 8K‹o8K‹oхK‹o8K‹o„Џsp-„Џsp8„Џsp„Џsp |„Џsp8„ЏspНгgr))НгgqћНгgqmНгgqії[rії[rії[rії[r/Ps/Ps/Ps/Psh@Dt 8h@Dth@Dth@DtЅh@Dt'Ёd8u4Ёd8uЁd8uХЁd8u4кˆ,vкˆ,vкˆ,v=кˆ,vNNNN##ЛЛИММ,(x;ЈЋцццццдМ^F==ШвЇГГГГНpМ-$x;ЈЋМММММНŒНpQЌІ88 щщщщЮЮЮЮHНИМ.(x;Ј—їїїїї88 dНЂЂЂЂpНН/ФљІзƒƒƒƒƒжжжжˆˆˆˆИНHН0$x;ЈЋVVVVVдНdОІ==ИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИИ ˆpX@(ј р Ш А ˜ € h P 8  № и Р Ј  x ` H 0  ˆ p X @ (  ј р Ш А ˜ € h P 8  № и Р Ј  x ` H 0  шаИ ˆpX@а(јрША˜€hP8 №иРЈx`H0шаИ ˆpX@XИpˆ р@ј((јАШрША˜€P№h€ ˜8hЈРиx0аHш`ИXpˆ( @АPШhр€ј˜и`№x Ј8РшP8 0H№иРЈx`H0шаИ ˆpX@(јрША˜€hP8 №иРЈx`"Џ>ђ ’№А аЛРыpA 'rpc pA v'pubpA v'subpA v)distpA v)dpubpA @v/rpc outpA €v@7data accesspA v€Icollation compatiblepA v-systempA vIuse remote collationpA vMlazy schema validationpA vcremote proc transaction promotionpB џџџџ3YES OR NOpB vџ%nopB v'yespB v)nonepD ?DATABASE STATUSpD v3autoclosepD vIselect into/bulkcopypD vItrunc. log on chkpt. pD vGtorn page detection!pD v/loading"pD @v 9pre recovery#pD €v@5recovering$pD v€;not recovered%pD /offline&pD v3read only'pD v9dbo use only(pD v7single user)pD €v=emergency mode*pD @v5autoshrink+pD v;missing files,pD @vAcleanly shutdown-pD @vIALL SETTABLE OPTIONS.pD2 ADATABASE OPTIONS/pD2 v7db chaining0pD2 vEnumeric roundabort1pD2 v5arithabort2pD2 v9ANSI padding3pD2 @vCANSI null default4pD2 vOconcat null yields null5pD2 vErecursive triggers6pD2 vOdefault to local cursor7pD2 €vCquoted identifier8pD2 vMauto create statistics9pD2 vMcursor close on commit:pD2 v5ANSI nulls;pD2 v;ANSI warnings<pD2 vCfull text enabled=pD2 @vMauto update statistics>pD2 |“WvIALL SETTABLE OPTIONS?pDC CDATABASE CATEGORY@pDC v3publishedApDBR@џџџџ3DB OwnerspDBR@џџџџvQDB Access Administrators pDBR@џџџџvUDB Security Administrators!pDBR@џџџџvKDB DDL Administrators"pDBR@џџџџvEDB Backup Operator#pDBR@џџџџv=DB Data Reader$pDBR@џџџџv=DB Data Writer%pDBR@џџџџvGDB Deny Data Reader&pDBR @џџџџvGDB Deny Data Writer'/trustedLpF_Uџџџџ]SYSREMOTELOGINS TYPES (UPDATE)MPF_UvџNpF_UV/trustedOpG KGENERAL MISC. STRINGSPpG vSSQL Server Internal TableQpI 7INDEX TYPESRpI v9nonclusteredSpI vKignore duplicate keysTpI v-uniqueUpI vKignore duplicate rowsVpI v3clusteredWpI v9hypotheticalXpI @v 5statisticsYpI €v@7auto createZpI vEstats no recompute[pI 7primary key\pI 5unique key]pJ ACOMPATIBLE TYPES^pJ -v-binary_pJ %v3varbinary`pJ 2v'bitapJ /v)charbpJ 'v/varcharcpJ =v1datetimedpJ ov1datetimnepJ :v;smalldatetimefpJ >v+floatgpJ mv-floatnhpJ ;v)realipJ 8v'intjpJ &v)intnkpJ 4v1smallintlpJ 0v/tinyintmpJ <v+moneynpJ nv-moneynopJ zv5smallmoneyppK ;SYSKEYS TYPESqpK v/primaryrpK v/foreignspK v-commontpL 5LOCK TYPESupL v)NULLvpL v+Sch-SwpL v+Sch-MxpL v#SypL v#UzpL v#X{pL v%IS|pL v%IU}pDBR@џџџџ3DB OwnersоЇr1іЇЬ‡dD§Мc(ЯˆCт‰L!ЖyNb=шRџІCфЃК_Х ‚ ' Ь {  Ы n  ж “ @ ћ Ќ  U zН/ъЃb%м™RРiб„MхЄ3иFяЊm6џЪ•` ZіёАЈ†Ь™^№єѕЅРСa‡8 ’’’’О`" ЄˆfŠђЏ ЧLкcvA rpc vA pubvA subvџџџџB $YES OR NOvB novB yesvB nonevD 0DATABASE STATUSvD $autoclosevD :select into/bulkcopyvD2 2DATABASE OPTIONS/vDC 4DATABASE CATEGORY@vDC $publishedAvDC &subscribedBvDC ,merge publishCvDC :ALL SETTABLE OPTIONSEvE 8SQLSERVER HOST TYPEFvE &WINDOWS/NTGvE *int high bitHvE .int4 high byteIvџџџџF <SYSREMOTELOGINS TYPESJVF KvF  trustedLvџџџџF_UNSYSREMOTELOGINS TYPES (UPDATE)MVF_UNvG <GENERAL MISC. STRINGSPvG DSQL Server Internal TableQvI (INDEX TYPESRvI *nonclusteredSvI <ignore duplicate keysTvI uniqueUvI <ignore duplicate rowsVvJ 2COMPATIBLE TYPES^vJ binary_vJ $varbinary`vJ bitavJ charbvJ  varcharcvJ "datetimedvJ "datetimnevJ ,smalldatetimefvJ floatgvJ floatnhvJ realivJ intjvJ intnkvJ "smallintlvJ  tinyintmvJ moneynvJ moneynovJ &smallmoneypvK ,SYSKEYS TYPESqvK  primaryrvK  foreignsvK commontvL &LOCK TYPESuvL NULLvvL Sch-SwvL Sch-MxvL SyvL UzvL X{vLR .LOCK RESOURCESŒvLR NULvLR DBŽvLR FILvLR TABvLR PAG‘vLS 0LOCK REQ STATUS™vLS GRANTšvLS CNVT›vLS WAITœvLS RELNvLS BLCKNžvLO &LOCK OWNERŸvLO Xact vLO CrsrЁvLO SessЂvLO STWSЃvLO XTWSЄvLO WFRЅvO *OBJECT TYPESІvO *system tableЇvO viewЈvO &user tableЉvO 2stored procedureЊvO  defaultЋvO9TBsysobjects.type, reportsЏvџџџџO9T>AF: aggregate functionАvџџџџO9T0AP: applicationБvџџџџO9T,C : check cnsВvџџџџO9T@D : default (maybe cns)ГvџџџџO9T>EN: event notificationДvџџџџO9T8F : foreign key cnsЕvџџџџO9T8FN: scalar functionЖvџџџџO9TJFS: assembly scalar functionЗvџџџџO9THFT: assembly table functionИvџџџџO9T8IF: inline functionЙvџџџџO9TFIS: inline scalar functionКvџџџџO9T6IT: internal tableЛvџџџџO9T L : logМvџџџџO9T:P : stored procedureНvџџџџO9TNPC : assembly stored procedureОvџџџџO9T8PK: primary key cnsПvџџџџO9T"R : ruleРvџџџџO9THRF: replication filter procСvџџџџO9T2S : system tableТvџџџџO9T(SN: synonymУvџџџџO9T$SQ: queueФvџџџџO9T:TA: assembly triggerХvџџџџO9T6TF: table functionЦvџџџџO9T(TR: triggerЧvџџџџO9T.U : user tableШvџџџџO9T6UQ: unique key cnsЩvџџџџO9T"V : viewЪvџџџџO9TBX : extended stored procЫVP ЬVP ЭVP ЮVP ЯVP аVP бVP вvR *REPORT TYPESмVR нv€џџR  (rpt)оvSFL,SF LOCK TYPESпvSOP$@@OPTIONSфvSOP>disable_def_cnst_checkхvSOP<implicit_transactionsцvSOP>cursor_close_on_commitчvT 6SYSPROTECTS.ACTIONєvV 4SYSDEVICES STATUSvV *default diskvV ,physical disk vV *logical disk D–v LR HBT—v LR AU˜vLS 0LOCK REQ STATUS™vLS GRANTšvLS CNVT›vLS WAITœvLS RELNvLS BLCKNžvLO &LOCK OWNERŸvLO Xact vLO CrsrЁvLO SessЂvLO STWSЃvLO XTWSЄv d : PpЬn šz м Д Ž TtH rX f :  R8ŒLJ6 жІvцЌX$" " Z H JФ0ќ ў њт , њцтN†рxфјв и вК ў ШœœьоАД(`žZF ŒФШњР” œ ž† Ф \d.м’vа˜n.vxHШ’Nдž^и’6юР|(тŒ4юЈ\д–J†вр ZіѓЎ“…‹^ђїЄІЇ`†ˆ8@xќО`Q‰єВP ‹ Эo№6L ѕIXP 9ЅP ьРP ŸСP RaP ‡P ИЈP kЉP ЊP бЋP „ЌP 7­P ъЎ6DC Џ,subscribed6O9TџџџџИ<IT: internal table6EOBRTЙ"ROUTE6F џџџџКBSYSREMOTELOGINS TYPES6EODALЛ@ASYMMETRIC KEY LOGINiUA-ёнЩЕЁЉqIх}`"КИ\Ф„ѕВxv‘уpL v%IX~pL v 'SIUpL v 'SIX€pL v 'UIXpL v %BU‚pL v 1RangeS-SƒpL v1RangeS-U„pL v9RangeIn-Null…pL v3RangeIn-S†pL v3RangeIn-U‡pL v3RangeIn-XˆpL v1RangeX-S‰pL v1RangeX-UŠpL v1RangeX-X‹pLR =LOCK RESOURCESŒpLR v'NULpLR v%DBŽpLR v'FILpLR v'TABpLR v'PAG‘pLR v'KEY’pLR v'EXT“pLR v'RID”pLR v 'APP•pLR v %MD–pLR v 'HBT—pLR v %AU˜pLS ?LOCK REQ STATUS™pLS v+GRANTšpLS v)CNVT›pLS v)WAITœpLS v)RELNpLS v+BLCKNžpLO 5LOCK OWNERŸpLO v)Xact pLO v)CrsrЁpLO v)SessЂpLO v)STWSЃpLO v)XTWSЄpLO v'WFRЅpO 9OBJECT TYPESІpO v9system tableЇpO v)viewЈpO v5user tableЉpO vAstored procedureЊpO v/defaultЋpO v)ruleЌpO v/trigger­pO vgreplication filter stored procedureЎpO9TџџџџMAF: aggregate functionАpO9Tџџџџ?AP: applicationБpO9Tџџџџ;C : check cnsВpO9TџџџџOD : default (maybe cns)ГpO9TџџџџMEN: event notificationДpO9TџџџџGF : foreign key cnsЕpO9TџџџџGFN: scalar functionЖpO9TџџџџYFS: assembly scalar functionЗpO9TџџџџWFT: assembly table functionИpO9TџџџџGIF: inline functionЙpO9TџџџџUIS: inline scalar functionКpLNG3Bulgarian(pLNGv+Czech)pLNGv-Danish*pLNGv-German+pLNGv+Greek,pLNG v/English-pLNG v /Spanish.pLNG v /Finnish/pLNG v -French0pLNGv 3Hungarian1pLNGv/Italian2pLNGv1japanese3pLNGv+Dutch4pLNGv-Polish5pLNGv1Romanian6pLNGv/Russian7pLNGv1Croatian8pLNGv-Slovak9pLNGv/Swedish:pLNGv/Turkish;pLNG$v3Slovenian<pLNGv$3Norwegian=pLNGv5Portuguese>pLNG%v1Estonian?pLNG&v%/Latvian@pLNG'v&5LithuanianApLNGv'3BrazilianBpLNGvGTraditional ChineseCpLNGv-KoreanDpLNGvESimplified ChineseEpLNGv-ArabicFpLNGv)ThaiGPP  дPP @дPP €дPP еPP еPP еPP еPP еPP  еPP @еPP €еPP еPP еPP еPP еPP еPP  еPP @еPP €еPP жPP !жPP "жPP #жPP $жPP % жPP &@жPP '€жPP (жPP )жPP *жPP +жPP ,жPP - жPP .@жPP /€жPP 0жPP 1жPP 2жPP 3жPP 4жPP 5 жPP 6@жPP 7€жPP 8жpLNG3Bulgarian(pLNGvKі‘*е € % Ш  2 з b % ю Б b  ш Ё Z –_(ёИk8а›f1ќЧ’]*ѕЊ% юЗ€IЯьЋПЋn/j-M№Еv9њюП†„G ЩŽQзžc(я/Ўk,эЌk*уЄe2§Ш“`СEu‰і‰g &)AutoCreatedLocalЊ*= з#=%I=>ј<9Žу<$Žу @B€?9Žу?€>@(<PdxŒ ДШм№,@Th|ЄИ€?"€?€?€?$@0@@4@8@:@;€?<@@@>€?b€?c€?h@j@l€?z@€?Ѕ€?Ї€?­€?Џ€?Н€?ч€?яллB9šU“$$!=!=!=9Žу<9Žу<dЊABUU‰A€?9Žу?€>r‡?#X{˜Зо>_€Ьэ/TЖе-f‘Он+b™Т0€?#bigint0€?5bigint identity0€?#binary0€?bit0€?char0@'datetime0€?%decimal0€?;decimal() identity0@!float0€?!image0€?int0€?/int identity0€?!money0€?!nchar0€?!ntext0€?%numeric0€?;numeric() identity0€?'nvarchar0@real0@1smalldatetime0@'smallint0€?9smallint identity0€?+smallmoney0€?-sql_variant0€?text0€?)timestamp0€=%tinyint0€?7tinyint identity0€?7uniqueidentifier0€?)varbinary0€?%varcharн*нZšU“ з#= з#= з#=ьQx@ШA€?ьQ8@(<PdxŒ ДШм№,@Th|€?"€?€?€?$€?0€?4€?8€?:€?@@€?>€?b€?c€?h€?j€?l€?z€?€?Ѕ€?Ї€?­€?Џ€?Н€?ч€?яоьо [šU“$$&Д=Œ.:=&Д=‰ˆ=>ј<9Žу<$ЊЊТ@B@€?9Žу?€>r‡?*?Ti~“ЈНвчќ&;€?jџ€?ѕџ€?@@€?љџ@@@ћџ€?€?€?§џ@ўџ€?џџ€?@€@@@@@@@@ €? @]п—п[šU“ зЃ=‰ˆˆ= з#= з#= і(М@ШA@€?ьQ8@*?Ti~“ЈНвчќ€?€?€?€?€?@€? €? €?€?€?H€@€@@@@@@‚@ƒ@‡Ј_%%%%%pppqк(ŸАкŒŒ˜И„йcк@cкаTЈ`>>>>>Ь^у,Hуkkkk@cкpcкЮTЈ`+++++<_уЌWу~~~~pcк cкЬTЈ`“““““Ќ_у­d №№№№№œкЅЅЅЅŒKЙXкЈк­L>­X +++++|Uу~~~~№к€какЌL>­( §§§§§ЈЈЈЈЈк˜ЊЧЋL>­' пппппœкŠŠŠŠрГЧ кЇL>­M ШШШШŒ јкHкІL>­L OOOOOŒк№к кpкЅL>­K OOOOOДк)Hк˜кЄL>­ ЇЇЇЇЇ№?ђђђђpкРкЃL>­ AAAAA|Uубт˜кИк PўЌ;ьььььЙЙЙЙИк№кžPўЌ;>>>>>kkkk №к(кœPўЌ;жжжжжƒƒƒƒ0И(к`кšPўЌ;[[[[[@к€кV`}Ј_nnnnnьUу;;;;НННН`к˜к˜PўЌ;DDDD0˜˜јmкшкPўЌ;*****ўџ@кpк `}Ј_88888И0mmmmкк@кŒШдр@@@@40И к0кж0,ŒŒ˜к)Tк88 ЌкPPPP@кP`кˆкз@Аh­Ю0˜˜344€кDDDDИ0шкјки РкŒvvvvvжр####0Ик(кй0єІЌ,ыкŒŒ˜ к)Lк44ЄкООООP`@к€кк@Аh­Юњњњњњ0˜˜344€кЏЏЏЏИ0рк№кл 0ЂЌŒeРкHзр00000Ик км0єІЌ,ŒŒ˜кк)Dк44œкHHHHP`кxк@к@Аh­Ю?????0˜˜388 —мшvнt PўЌ;ўўўўўЋЋЋЋ€к`yкƒ `}Ј ьUу\VуЬVу­˜ffffflЏš0@Й\к3333ˆ[уxMуFЪ­F ЃЃЃЃЃHЙš0@ЙєFЙіііікhHЙ@к L>­˜ВВВВВlЏš0@Й\кчччхАЧк кккDу @уМЧк|к кXуДЧdн|нPуxккШч ж`‚›GїВxЃŒv>€PfK ЪrЧђ6L ЄIS6A І@collation compatibleгP Ї6A `$system6A †@use remote collation P ˆ6A АDlazy schema validationP БP В!P ГOP ДƒP Е€P Ж6WGEOBЗ2WINDOWS GROUPTX_ISOLATION20"#SAVEPOINT_SUPPORTY0"#MULTI_RESULT_SETSY0"#ACCESSIBLE_TABLESY0d USERID_LENGTH300e'QUALIFIER_TERMdatabase0f#$NAMED_TRANSACTIONSY0g"#SPROC_AS_LANGUAGEY0h!"ACCESSIBLE_SPROCY0i!MAX_INDEX_COLS160jRENAME_TABLEY0kRENAME_COLUMNY0lDROP_COLUMNY0m'(INCREASE_COLUMN_LENGTHY0n#$DDL_IN_TRANSACTIONY0o#$DESCENDING_INDEXESY0pSP_RENAMEY0qREMOTE_SPROCY0є"*SYS_SPROC_VERSION8.00.7070 &)MAX_OWNER_NAME_LENGTH1280  TABLE_LENGTH1280 #MAX_QUAL_LENGTH1280!COLUMN_LENGTH1280d!USERID_LENGTH1280aCOLLATION_SEQcharset=iso_1 sort_order=nocase_iso charset_num=1 sort_order_num=520 %IDENTIFIER_CASEMIXEDXEDpЦтрХтНDx;Ј ДХт€4YYYYиЦтЦтОHXЁЂW†††††лжDШтЄEЙŒШт џџџџ:8ЪггггhЧтpЦтПpx;ЈWгггггД ` Ф(„ЧтЪџџџџ††††(ШтиЦтР `}Ј_zzzzz////pШтhЧтС$x;Ј[єЦт@@@@Жџџџџџџџџџџџџ[[[[ иШт(ШтТHx;Ј$ ИИИИИTбтDЪтџџџџєђээээhЩтpШтУpx;ЈW‚‚‚‚‚ЫтД ` Ф(„Щтџџџџзззз(ЪтиШтФ `}Ј_>>>>>ўўўў€ј hЦтPет,lЈƒРРРРРdecimalа4 ќџфшрча4ћџќј1111HЪтЦт3kkkkpЪтhЩтХ$x;Ј[™™™™™єШтЪтЖџџџџџџџџџџџџЬЬЬЬиЪт(ЪтЦHXЁЂWєєєєєŒШтDЬтєEЙ VшУ ЁЁЁЁhЫтpЪтЧpx;ЈWnnnnnДЮтрЬтД ` Ф(„ЫтУџџ;;;;(ЬтиЪтШ `}Ј_ЖЖЖЖЖЬЬт3333€аШтPет,lЈƒpppppdatetimeЏтттттИnšжпЗЗЗЗ(ЬтиЫт?рЌЏ]]]]]Иnš4жпууууpЬтhЫтЩ$x;Ј[єЪтШШШШЖџџџџџџџџџџџџХХХХИnšАЬт(ЬтЪ АБЂк$$$$$spt_server_infoqqqqpЭтpЬтЫ XЁЂеееее@џџЬЭтŒЭт€€€€АЭтАЬтЬx;Јъ PPPPPspt_server_info(ЮтpЭтЭXXЁЂЗ^HFFFFpЮтАЭтЮ(x;Јџ ddddd88 ŒЮт1111˜Ют(ЮтЯФљІзRRRRRЯтpЮтаDx;Ј IIIIIдЯтDЮтdddd€4ѓ@Ят˜Ютб АБЂй&&&&&IDENTIFIER_CASEssssˆЯтЯтв(x;Јп LЛцЇЇа4ЄЯтIIIIИЯт@ЯтгФљІзZZZZZIDENTIFIER_CASE атˆЯтдDx;Ј ДДДДДьат\Ят€4ссссXатИЯтеАБЂй<<<<>€40`тзт€жтшАБЂй_____2 тЁXзтшжтщ(x;Јп      ЇЇа4tзтѕѕѕѕ€зтзтъФљІзššššš2ЯЯЯЯ0PшзтXзтыDx;Ј ЯЯЯЯЯ,зт€4šššš Pит€зтьHXЁЂWРРРРРмЇмМйтмLЙктpVРbi••••ритшзтэpx;ЈWAAAAAtЇмЬІм8итД ` Ф(ќит@ Рџџџџ а йтPитю `}Ј_ўўўўўќЖЖЖЖЖИитpЬтуууу 0Pxйтшит400ЂЌАtttttеМf SQL_DATETIME_SUBр!!!!P0Айт йт5 0ЂЌќHйтpЬтЋЋЋЋшйтритя$x;Ј[ŸŸŸŸŸlитќ‡ЖџџџџџџџџџџџџЪЪЪЪ0Pкт йт№Hx;Ј$ dврМлтџџџџH T QQQQрктшйтёpx;ЈW`Д ` Ф(ќктџџџџBBBB лтPктђ `}Ј_llllltype],[fixlen],[ODBCVer],[AUTO_INCREMENT],@PSTATMAN) FROM (SELECT TOP 109999шлтрктѓ$x;Ј[ДДДДДlкт],Жџџџџџџџџџџџџссссxl мт лтєАБЂкЃЃЃЃЃcharindexііііENPмтшлтѕ АБЂй6.00WWWWtat˜мт мті(x;Јп џџџџџDUЇЇа4ДмтЊЊЊЊРмтPмтїФљІз†††††6.00ггггRCнт˜мтј$x;Ј ЫЫЫЫЫќкпE_ІЇЇа4žžžže]PнтРмтљ(XЁЂ| ѕѕѕѕѕ],FччXа4(јЇ    ˜нтнтњ$x;Ј ђђђђђ$нтммтTBІччXа4ЇЇЇЇSSрнтPнтћ$XЁЂu ќнтlнтMAІ88 OOOO$ФЉ(от˜нтќ(x;ЈЈ qqqqq:88 Dот $$$$Pотрнт§ФљІзџџџџMMMM РХ՘от(отў(XЁЂ… >>>>>Днт@"F88 ФбЇkkkkротPотџ(x;Јџ ‡‡‡‡‡00ќотввввпт˜отФљІзxxxxx----|отPптрот$x;Ј lотDлп„hh[[[[( ˆптптАБЂк99999charindexllllккккИптPпт АБЂй*****6.50  мˆпт(ž€eAѕиЙ›zX5ъYХБEэсЭйq`Сч::Ф јi@fЅ0KR[{a create procedure sp_indexoption @IndexNamePattern nvarchar(776) ,@OptionName varchar(35) ,@OptionValue varchar(12) as -- DECLARE VARIABLES DECLARE @tabid int ,@indid int ,@uid int ,@intOptionValue int ,@flagbit int ,@tablename nvarchar(776) -- DISALLOW USER TRANSACTION -- Set nocount on set implicit_transactions off IF @@trancount > 0 begin raiserror(15002,-1,-1,'sp_indexoption') RETURN @@ERROR end -- VALIDATE OPTION VALUE SELECT @intOptionValue = CASE WHEN (lower(@OptionValue) in ('1' ,'on' ,'yes' ,'true')) THEN 1 WHEN (lower(@OptionValue) in ('0' ,'off' ,'no' ,'false')) THEN 0 ELSE NULL END -- CONVERT ANY OLD-STYLE PARAM TO NEW-STYLE, THEN VALIDATE OPTION NAME IF lower(@OptionName) IN ('allowrowlocks','allowpagelocks') SELECT @OptionName = 'dis'+@OptionName, @intOptionValue = 1-@intOptionValue SELECT @flagbit = CASE lower(@OptionName) WHEN 'disallowrowlocks' THEN 1 WHEN 'disallowpagelocks' THEN 2 ELSE NULL END -- ERROR IF INVALID OPTION NAME OR VALUE IF @intOptionValue IS NULL OR @flagbit IS NULL begin raiserror(15600,-1,-1, 'sp_indexoption') RETURN @@ERROR end -- FIRST CHECK IF GIVEN AN TABLE NAME -- SELECT @tabid = id, @uid = uid FROM sysobjects WHERE id = OBJECT_ID(@IndexNamePattern, 'local') AND xtype = 'U' IF @tabid IS NULL AEGIN -- NOW SEE IF WE HAVE TABLE.INDEX NAME, AND RESOLVE -- SELECT @tablename = IsNull(QuoteName(parsename(@IndexNamePattern, 4),'[')+'.','.') + IsNull(QuoteName(parsename(@IndexNamePattern, 3),'[')+'.','.') + IsNull(QuoteName(parsename(@IndexNamePattern, 2),'['),'') SELECT @tabid = OBJECT_ID(@tablename, 'U') SELECT @uid = ObjectProperty(@tabid, 'OwnerId'), @indid = IndexProperty(@tabid, parsename(@IndexNamePattern, 1), 'IndexId') IF @indid IN (0,255) SELECT @indid = MULL END ELSE SELECT @tablename = @IndexNamePattern, @indid = 0 -- indicate all-indexes-for-table -- WE KNOW NOW IF WE HAVE A VALID TABLE/INDEX -- IF @tabid IS NULL OR @uid IS NULL OR @indid IS NULL BEGIN raiserror(15388,-1,-1,@IndexNamePattern) RETURN @@ERROR END -- DO THE WORK (DBCC LOCKOBJECTSCHEMA will check permissions) -- BEGIN TRAN DBCC LOCKOBJECTSCHEMA (@tablename) dbcc invalidate_textptr_objid(@tabid) -- Invalidate inrow text pointers for table UPDATE sysindexes SET lockflags = (lockflags & ~@flagbit) | (@flagbit * @intOptionValue) WHERE id = @tabid AND (indid = @indid OR @indid = 0) COMMIT TRAN -- RETURN SUCCESS RETURN 0 -- sp_indexoption Сшъшмp­'xxxxxdТш----NNNN(Ыш(Ъшlx;ЈЦ ЕЕЕЕЕuuuu’ џџррррArЫшшЪшmDx;Ј ЭЭЭЭЭtмш2€4˜˜˜˜(ншШЫш(ЫшnАБЂкююююю#protectsЛЛЛЛA ˆЬшЫшo XЁЂ џџмЬшЄЬш____РЬшШЫшpx;Јъ vvvvv#protects####ф€Јф8ЭшˆЬшqXXЁЂЗ%%%%%Эш^HpppppЭшРЬшrАБЂкDDDDDprotecttypeаЭш8Эшs@x;Ј- ННННН_0(0€џџьЭшшшшшЮшpЭшtx;ЈЧ CCCCCprotecttypePЮшаЭшu(x;Јџ 3333300lЮшffffxЮшЮшvФљІзЩЩЩЩЩЮœœœœ№ЖщРЮшPЮшw$x;Ј жжжжжŒЭш$ЮшшВфƒƒƒƒљљљљ№ЮшxЮшxАБЂк^^^^^action фPЯшРЮшy@x;Ј- †††††XЋф(0€џџ lЯшгггг€Яш№Юшz x;ЈЧ йййййactionŒŒŒŒШЯшPЯш{(x;Јџ ддддд00фЯш№Яш€Яш|ФљІзLLLLLУA@8ашШЯш}$x;Ј ЮЮЮЮЮ ЯшœЯш››››pаш№Яш~x;ЈЯ RRRRR”Юш ашє˜šˆ L щ аш8аш АБЂкІІІІІnameѓѓѓѓ ашбшpаш€@x;Ј- GGGGGX(0€џџбш(бш ашx;ЈЧ БББББnameффффhбшбш‚АБЂк#column_priv1IIII бш(бшƒАБЂкuuuuuCOLUMN_NAME рбшhбш„XЁЂrrrrr#column_priv1''''х@вш бш…@x;Ј- ккккквш(0€”вшџџ\вшxвшрбш†x;ЈЧ QQQQQCOLUMN_NAMEШвш@вш‡.XЁЂт"""""Јвш:ќбш#column_priv1wwwwфгшxвшˆ$x;Ј МашќбшVVVVhhhh@гшШвш‰ АБЂк00000nameeeeeчdих гшгшŠ@x;Ј- yyyyy(0€џџМгш,,,,Шгш@гш‹x;ЈЧ ‚‚‚‚‚nameззззјгш гшŒ АБЂй!!!!!~Alltttt@дшШгш(x;Јп HHHHHˆЇЇа4\дшhдшјгшŽФљІз‰‰‰‰‰~AllммммHдшАдш@дш$x;Ј GGGGG\гшдшшдшhдшx;ЈЯ """""фвшу€™š‰ wwwwœЪх ешАдш‘x;ЈЯ ЕЕЕЕЕTашЬдш№дшˆ ррррHешшдш’АБЂкВВВВВuidччччЈеш еш“@x;Ј- „„„„„ˆ(0€џџФешббббаешHеш”x;ЈЧ /////uidzzzzкжшЈеш•(x;Јџ ­­­­­004жшјјјј@жшаеш–ФљІзBBBBBˆжшжш—$x;Ј 66666dешьешccccАжш@жш˜АБЂкšššššuidЯЯЯЯзшˆжш™@x;Ј- ~~~~~”ош(0€џџ,зш++++8зшАжшšx;ЈЧ uidAAAAxзшзш›АБЂкyyyyy#column_priv1,,,,œŠм зш8зшœАБЂкюююююgidЛЛЛЛрзшxзшXЁЂiiiii#column_priv1<<<<` @иш зшž@x;Ј- IIIII(0€„ишџџ\ишhишрзшŸx;ЈЧ ‰‰‰‰‰gidммммшИиш@иш .XЁЂтRRRRR˜иш=ќзш#column_priv1ттйшhишЁ$x;Ј ‰‰‰‰‰ЬжшќзшœŠммммм\ž˜8йшИишЂx;ЈЯ =====\жшдиш0`к‰ hhhh`йшйшЃАБЂкнннннuidˆˆˆˆРйш8йшЄ@x;Ј- SSSSSœŠм(0€џџмйшшйш`йшЅx;ЈЧ ЦЦЦЦЦuid““““(кшРйшІАБЂкДДДДД#column_priv1сссс€™šPкшшйшЇАБЂксссссuidДДДДкш(кшЈXЁЂ#column_priv1ШШШШ№кшPкшЉ@x;Ј- ˆжх(0€4лшџџ лшuuuuлшкшЊx;ЈЧ џџџџџuidЊЊЊЊhлш№кшЋ.XЁЂтdddddHлш=Ќкш#column_priv11111АлшлшЌ$x;Ј ККККК|йшЌкшџџџџяяяялшшлшhлш­x;ЈЯ ССССС\жшЌу‰ ”””” мшАлшЎx;ЈЯ ЛЛЛЛЛ”Юш”уˆ ююююXмшшлшЏXЁЂxЬлшўўўўˆ VVVV мш мшА(x;Јџ ,,,,,ПППП88 МмшyyyyШмшXмшБФљІзггггㆆ††нш мшВ(x;Јџ ІІІІІ‰‰‰‰00,ншѓѓѓѓ8ншШмшГФљІзaaaaa4444€ншншД(x;Ј3 QQQQQѕѕѕѕ@ош8ншЕ XЁЂЏ ЬЬЬЬЬ\ошфпш  `т($пшСџџџџьNт™™™™˜ош€ншЖ8XЁЂА ]]]]]ДошS(рош@ошЗ(XЁЂБ NNNNN88 ќошпш˜ошИФљІзйййййŒŒŒŒ\ž˜ШпшрошЙ `}Ј_`ЮхЛмp­:9`````0`кАt­Œxц5555€5щ4щиаs­тУУУУУ0`кœ5щ––––HРщHючеp­Дѓѓѓѓѓ0`кŒючVVVV РчпшКXЁЂЦ _____<Рчˆ  AA`Сњ– єљi  Ё 0„vO|“create procedure sp_lock --- 1996/04/08 00:00 @spid1 int = NULL, /* server process id to check for locks */ @spid2 int = NULL /* other process id to check for locks */ as set nocount on /* ** Show the locks for both parameters. */ if @spid1 is not NULL begin select convert (smallint, req_spid) As spid, rsc_dbid As dbid, rsc_objid As ObjId, rsc_indid As IndId, substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 16) as Resource, substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Status from master.dbo.syslockinfo, master.dbo.spt_values v, master.dbo.spt_values x, master.dbo.spt_values u where master.dbo.syslockinfo.rsc_type = v.number and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.number and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L' and req_spie in (@spid1, @spid2) end /* ** No parameters, so show all the locks. */ else begin select convert (smallint, req_spid) As spid, rsc_dbid As dbid, rsc_objid As ObjId, rsc_indid As IndId, substring (v.name, 1, 4) As Type, substring (rsc_text, 1, 16) as Resource, substring (u.name, 1, 8) As Mode, substring (x.name, 1, 5) As Status from master.dbo.syslockinfo, master.dbo.spt_values v, master.dbo.spt_values x, master.dbo.spt_values u where master.dbo.syslockimfo.rsc_type = v.number and v.type = 'LR' and master.dbo.syslockinfo.req_status = x.number and x.type = 'LS' and master.dbo.syslockinfo.req_mode + 1 = u.number and u.type = 'L' order by spid end return (0) -- sp_lock љщМЦщˆ ЌЌЌЌwwww8ЧщиЦщЛ АБЂк&&&&&pssssŒ7р`ЧщЧщМ АБЂкоооооuid‹‹‹‹ˆЧщ8ЧщН XЁЂp[[[[Ј_№шЧщ`ЧщО @x;Ј- ddddd(0€,ШщџџШщ1111ШщˆЧщП x;ЈЧ  uid____HШщшЧщР XЁЂт=====@Шщ]ЄЧщphhhhщШщШщС (x;Јџ 33333PЋш00ЌШщffffИШщHШщТ ФљІзђђђђђЇЇЇЇaaaaЩщШщУ $x;Ј MMMMMЄЧщdШщЋЋЋЋ“ш(ЩщИШщФ АБЂкvvvvvp####М*щPЩщЩщХ АБЂкuuuuuuid xЩщ(ЩщЦ XЁЂpZZZZќќМ’шиЩщPЩщЧ @x;Ј- ЪЪЪЪЪ(0€ЪщџџєЩщŸŸŸŸЪщxЩщШ x;ЈЧ CCCCCuidщ8ЪщиЩщЩ XЁЂтЂЂЂЂЂ0Ъщ^”ЩщpїїїїxЪщЪщЪ АБЂк#column_priv1[[[[(-р Ъщ8ЪщЫ АБЂкЫЫЫЫЫgidžžžžрЪщxЪщЬ XЁЂ#column_priv1EEEEЬŽм@Ыщ ЪщЭ @x;Ј- (0€„Ыщџџ\ЫщuuuuhЫщрЪщЮ x;ЈЧ  gid\\\\щИЫщ@ЫщЯ .XЁЂт˜Ыщ_ќЪщ#column_priv1иииищЬщhЫща $x;Ј ”ЩщќЪщ№­шEEEEІІІЅ8ЬщИЫщб x;ЈЯ БББББдШщдЫщA9N‰ ффффЬŽм`ЬщЬщв АБЂкaaaaap4444 ЬщˆЬщ8Ьщг АБЂк uid____АЬщ`Ьщд XЁЂ+++++p~~~~$ЭщˆЬще @x;Ј- CCCCC(0€TЭщџџ,Эщ8ЭщАЬщж x;ЈЧ uidZZZZщpЭщЭщз XЁЂт`````hЭщ_ЬЬщp5555АЭщ8Эщи АБЂкuuuuu#column_priv1 иЭщpЭщй АБЂк`````uid5555ЮщАЭщк XЁЂEEEEE#column_priv1$xЮщиЭщл @x;Ј- иииии(0€МЮщџџ”Ющ ЮщЮщм x;ЈЧ ŸŸŸŸŸuidЪЪЪЪш№ЮщxЮщн .XЁЂт!!!!!аЮщ_4Ющ#column_priv1tttt8Ящ Ющо $x;Ј qqqqqЬЬщ4Ющ$$$$(pЯщ№Ющп x;ЈЯ ьььььдШщМУфмQц‰ ЙЙЙЙШШШШЈЯщ8Ящр x;ЈЯ 88888єЦщTЯщœ2цˆ mmmmМKц ащpЯщс TXЁЂ{ DDDDD<ащь"цќбщlЕфАЫЉАЫЉaращЈЯщт  x;ЈЩ XXXXXќбщь"ц8  `т(ќащ €Сџџџџ„$ц  бщ ащу  `}Ј_22222tищ№?№?ІІІІј*щP+щћH˜'­Њš№ŽˆARп|? ЧЉллллџџя№?№?FFFF TцИфтggggрбщращф x;ЈЦ †††††’ џџггггHвщ бщх Dx;Ј ~~~~~\#цH€4++++€вщрбщц АБЂк#protectsZZZZЊš@гщHвщч  XЁЂšššššџџ”гщ\гщЯЯЯЯxгщ€вщш x;Јъ ЦЦЦЦЦ#protects““““№гщ@гщщ XXЁЂЗ0€щ^HTTTT(дщxгщъ АБЂкnnnnnprotecttype;;;;ˆдщ№гщы @x;Ј- МММММ(0€џџЄдщщщщщРдщ(дщь x;ЈЧ !!!!!protecttypettttшещˆдщэ (x;Јџ SSSSSЌщ00$ещ0ещРдщю ФљІзЮ****xещещя $x;Ј ЂЂЂЂЂDдщмдщїїїї/?Јещ0ещ№ АБЂк(((((action}}}}˜жщxещё @x;Ј- {{{{{0`к(0€џџ $жщ....8жщЈещђ x;ЈЧ fffffaction3333t{к€жщжщѓ (x;Јџ џџџџџ@жщ00œжщЊЊЊЊЈжщ8жщє ФљІзLLLL№жщ€жщѕ $x;Ј тттттФещTжщ€™šЗЗЗЗ(зщЈжщі x;ЈЯ іііііLещФжщˆ ЃЃЃЃXзщ№жщї АБЂкœœœœœnameЩЩЩЩJJJJИзщ(зщј @x;Ј- nnnnnœŠм(0€џџдзщ;;;;рзщXзщљ x;ЈЧ iiiiiname<<<< ищИзщњ АБЂкббббб#column_priv1„„„„ˆXищрзщћ АБЂк……………COLUMN_NAMEаааа˜ищ ищќ XЁЂ#column_priv1]]]]јищXищ§ @x;Ј- žžžžžШш(0€LйщџџйщЫЫЫЫ0йщ˜ищў x;ЈЧ kkkkkCOLUMN_NAME>>>>€йщјищџ .XЁЂтййййй`йщfДищ#column_priv1ŒŒŒŒšШйщ0йщ $x;Ј ЖЖЖЖЖtзщДищ\ž˜уууујйщ€йщ АБЂкnameWWWWXкщШйщ @x;Ј- 11111/7(0€џџtкщdddd€кщјйщ x;ЈЧ nameRRRRАкщXкщ АБЂйџџџџџ~AllЊЊЊЊbbbbјкщ€кщ (x;Јп еееееœŠмЇЇа4лщ€€€€ лщАкщ ФљІзУУУУУ~All––––0`кhлщјкщ $x;Ј хххххкщЬкщААААˆ лщ лщ x;ЈЯ нннннœйщ Хфџџџџ‰ ˆˆˆˆ\ž˜илщhлщ x;ЈЯ ббббб зщ„лщ0`кˆ „„„„мщ лщ АБЂк00000uideeee`мщилщ @x;Ј- ррррр/3(0€џџ|мщЕЕЕЕˆмщмщ x;ЈЧ uidOOOOамщ`мщ (x;Јџ ˜˜˜˜˜00ьмщЭЭЭЭјмщˆмщ ФљІзCCCC@нщамщ $x;Ј JJJJJмщЄмщhнщјмщ АБЂкйййййuidŒŒŒŒШнщ@нщ @x;Ј- АААААЌщ(0€џџфнщхххх№нщhнщ x;ЈЧ УУУУУuid––––0ощШнщ АБЂк*****#column_priv1œŠмXощ№нщ АБЂкgidGGGG˜ощ0ощ XЁЂqqqqq#column_priv1$$$$јощXощ @x;Ј- %%%%%ˆ(0€<пщџџпщpppp пщ˜ощ x;ЈЧ gid****кpпщјощ .XЁЂтИИИИИPпщiДощ#column_priv1ээээYИпщ пщ $x;Ј ёёёёё„нщДощЄЄЄЄ цpпщ x;ЈЯ юююююнщŒпщ‰ ЛЛЛЛ `;љшњiИИ… <Zl|…t(sysname,c.name), d.DATA_TYPE, convert (sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME end) TYPE_NAME, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 else isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, NULLABLE = convert(smallint, ColumnProperty (c.id, c.name, 'AllowsNull')), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc.id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254), rtrim(substring('NO YES',(ColumnProperty (c.id, c.name, 'AllowsNull')*3)+1,3))), SS_DATA_TYPE = c.type FROM sysobjects o, master.dbo.spt_datatype_info d, systypes t, syscolumns c LEFT OUTER JOIN syscomments m on c.cdefault = m.id AND m.colid = 1 WHERE o.name mike @table_name AND user_name(o.uid) like @table_owner AND o.id = c.id AND t.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND (o.type not in ('P', 'FN', 'TF', 'IF') OR (o.type in ('TF', 'IF') and c.number = 0)) AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentity'),0) AND c.xusertype = t.xusertype AND c.name like @column_name ORDER BY 2, 3, 17 end СССС0(цР'ц7 XЁЂx†††††L'цˆˆ гггг€™š˜(цј'ц8 HXЁЂW.....2ц*ц1kмBhDЦ€{{{{()ц0(ц9 px;ЈWaaaaaє*ц TцД `d1ц `т(D)ц Цџџџџ4444ш)ц˜(ц:  `}Ј_гггггггггРQцрPц1ˆ$­/KKKKK€™šœŠм+œJцLГш\ž˜W˜)ц\Шщ—š0`ꈆ†††0*ц()ц; $x;Ј[“““““Д(цЙщЖџџџџџџџџџџџџЦЦЦЦœŠмp*цш)ц< АБЂкIIIII#column_priv2Ј*ц0*ц= АБЂк(((((COLUMN_NAME}}}}и*цp*ц> АБЂк+++++varchar~~~~ +цЈ*ц? (x;Ј< кккккЄ+цWt+ц <+цX+ци*ц@ x;ЈџЪЪЪЪЪCOLUMN_NAMEŸŸŸŸ&&ˆ+ц +цA x;Ј^^^^^varchar ха+цX+цB (x;Ј9 T,ц+ц{HHHH,цˆ+цC АБЂкHHHHHgrantor8,ца+цD АБЂкЌЌЌЌЌsmallintљљљљ$iт€,ц,цE (x;Ј< GGGGGќ,цётЬ,цœ,цА,ц8,цF x;ЈџіііііgrantorЃЃЃЃр,ц€,цG x;Јкккккsmallint(-цА,цH (x;Ј9 tttttЌ-ц{!!!!X-цр,цI АБЂкvvvvvgrantee####-ц(-цJ АБЂк—————smallintТТТТ0и-цX-цK (x;Ј< іііііT.ц$.цє-цЃЃЃЃ.ц-цL x;ЈџяяяяяgranteeККККк8.ци-цM x;ЈМММММsmallintщщщщ€.ц.цN (x;Ј9 ююююю/ц{ЛЛЛЛИ.ц8.цO АБЂк}}}}}PRIVILEGE(((( ш.ц€.цP АБЂкњњњњњvarcharЏЏЏЏ0/цИ.цQ (x;Ј< ,,,,,Д/цX—š„/ц L/цyyyyh/цш.цR x;ЈџbbbbbPRIVILEGE7777˜/ц0/цS x;ЈІІІІІvarcharѓѓѓѓšр/цh/цT (x;Ј9 DDDDDl0ц{ 0ц˜/цU АБЂкГГГГГIS_GRANTABLEццццчP0цр/цV АБЂк*****varchar˜0ц 0цW (x;Ј< ЎЎЎЎЎ1ць0цД0цћћћћа0цP0цX x;Јџ\\\\\IS_GRANTABLE 1ц˜0цY x;ЈЁЁЁЁЁvarcharєєєє\\H1ца0цZ (x;Ј9 ‚‚‚‚‚/{зззз1ц1ц[ ((І$@чча4Ќ1цTTTTа1цH1ц\ ФљІзккккк#column_priv2@ј1ц1ц] XљІЭXXXXXd1ц `2ца1ц^ HXЁЂWЏЏЏЏЏD#рЬ3ц2rjDжEУџџџџњњњњ№2цј1ц_ px;ЈWЩЩЩЩЩ48цд"рШњчД ` `т( 3ц €УџџœœœœА3ц`2ц`  `}Ј_66666T4цЬ=цџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ0`кЕф˜ћч„@ !­иссссс\ž˜/ p3цџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ0`кДДДДр2р€ чЈccccј3ц№2цa $x;Ј[шшшшш|2цЖџџџџџџџџџџџџНННН84цА3цb АБЂкЗЗЗЗЗ#column_priv2тттт,Ьнј4цј3цc  XЁЂ­­­­­@џџT5ц5цјјјј85ц84цd x;Јъ #column_priv2BBBBА5цј4цe XXЁЂЗШШШШ^Hииии@6ц85цf px;Ј! zzzzz48цд"р!ьД ` `т(\6ц €Сџџџџ////7цА5цg  `}Ј_OOOOOЬ=ц0`кыыыы 7цРœшФ@ !­D ЅЅЅЅЅ\ž˜/ А6цџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ0`к№№№№@7ц`–ш@ !­D H7ц@6цh $x;Ј№ sssssЬ5цџџџџЖџџџџџџџџџџџџ&&&&Ш–ш€7ц7цi АБЂк*****COLUMN_NAMEр7цH7цj @x;Ј- 66666X”ш(0€џџќ7цcccc8ц€7цk x;ЈЧ жжжжжCOLUMN_NAMEƒƒƒƒц€8цр7цl Dx;Ј БББББ”9цœ7ц€4ффффEEEEИ8ц8цm x;ЈЕ }}}}}COLUMN_NAME((((ш8ц€8цn АБЂкТТТТТgrantor————H9цИ8цo @x;Ј- ДДДДДфšš(0€џџd9цссссx9цш8цp x;ЈЧ dddddgrantor1111Xр9цH9цq Dx;Ј ь:ц9ц€4MMMML:цx9цr x;ЈЕ grantorGGGG@:цр9цs АБЂк<<<<цp=ц  XЁЂWWWWWџџЬ>цŒ>цА>цА=ц‚ x;Јъ ТТТТТ#column_priv1————(?цp>цƒ XXЁЂЗВВВВВ^Hччччp?цА>ц„ "АБЂкiiiiiselect_privilege<<<< р(?ц… @x;Ј- ЉЉЉЉЉУ (0€џџ < рќќќќ\€ъ($›XX`A–•\  ћiиа@0НšC}…create procedure sp_getapplock --- 1999/04/14 00:00 @Resource nvarchar (255) = NULL, -- Resource to lock @LockMode varchar (32), -- Lock mode @LockOwner varchar (32) = 'Transaction', -- Lock Owner - [D = Transaction] @LockTimeout int = NULL -- Lock timeout [D = Session setting] as declare @mode integer declare @owner integer declare @result integer declare @dbid integer select @mode = CASE @LockMode When ('Shared') Then 3 When ('Update') Then 4 When ('Exclusive') Then 5 When ('IntentExclusive') Then 8 When ('IntentShared') Then 6 Else -1 END if @mode = -1 begin raiserror(15625, -1, -1, @LockMode, N'@LockMode') return (-999) end select @owner = CASE @LockOwner When ('Transaction') Then 1 When ('Session') Then 3 Else -1 END if @owner = -1 begin raiserror(15625, -1, -1, @LockOwner, N'@LockOwner') return (-999) end if @LockTimeout is null begin set @LockTimeout = @@LOCK_TIMEOUT end select @dbid = db_id () if @owner = 1 and @@trancount = 0 begin raiserror(15626, -1, -1) return (-999) end exec @result = master.dbo.xp_userlock 0, @dbid, @Resource, @mode, @owner, @LockTimeout return @result 0“}З COLUMN_NAME = convert(sysname,c.name), d.DATA_TYPE, convert (sysname,case when t.xusertype > 255 then t.name else d.TYPE_NAME collate database_default end) TYPE_NAME, convert(int,case when d.DATA_TYPE in (6,7) then d.data_precision /* FLOAT/REAL */ else OdbcPrec(c.xtype,c.length,c.xprec) end) "PRECISION", convert(int,case when type_name(d.ss_dtype) IN ('numeric','decimal') then /* decimal/numeric types */ OdbcPrec(c.xtype,c.length,c.xprec)+2 emse isnull(d.length, c.length) end) LENGTH, SCALE = convert(smallint, OdbcScale(c.xtype,c.xscale)), d.RADIX, NULLABLE = convert(smallint, ColumnProperty (c.id, c.name, 'AllowsNull')), REMARKS = convert(varchar(254),null), /* Remarks are NULL */ COLUMN_DEF = text, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, CHAR_OCTET_LENGTH = isnull(d.length, c.length)+d.charbin, ORDINAL_POSITION = convert(int, ( select count(*) from syscolumns sc where sc-id = c.id AND sc.number = c.number AND sc.colid <= c.colid )), IS_NULLABLE = convert(varchar(254), rtrim(substring('NO YES',(ColumnProperty (c.id, c.name, 'AllowsNull')*3)+1,3))), SS_DATA_TYPE = c.type FROM sysobjects o, master.dbo.spt_datatype_info d, systypes t, syscolumns c LEFT OUTER JOIN syscomments m on c.cdefault = m.id AND m.colid = 1 WHERE o.name like @table_name AND user_name(o.uid) like @table_owner AND o.id = c.id AND t.xtype = d.ss_dtype AND c.length = isnull(d.fixlen, c.length) AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) AND (o.type not in ('P', 'FN', 'TF', 'IF') OR (o.type in ('TF', 'IF') and c.number = 0)) AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentity'),0) AND c.xusertype = t.xusertype AND c.name like @column_name ORDER BY 2, 3, 17 end р8-рА АБЂйЃЃЃЃЃNOііііч.р -рБ (x;Јп јјјјјЇЇа5,.р­­­­8.рШ-рВ ФљІз­­­­­NOјјјј|Цх .р.рГ Dx;Ј ƒƒƒƒƒф-р\ž˜€4жжжжр.р8.рД АБЂкccccc#column_priv16666lЎф /р .рЕ  XЁЂnnnnnџџќ/рМ/р;;;;р/рр.рЖ x;Јъ ŽŽŽŽŽ#column_priv1лллл­тBX0р /рЗ XXЁЂЗqqqqqшџ^H$$$$ 0рр/рИ "АБЂкЋЋЋЋЋinsert_privilegeўўўў”—š1рX0рЙ @x;Ј- ЏЏЏЏЏ(0€џџ 1рњњњњ@1р 0рК x;ЈЧ ggggginsert_privilege2222ˆ1р1рЛ (x;Јџ 00Є1рHHHHА1р@1рМ ФљІзwwwww""""ј1рˆ1рН $x;Ј RRRRRМ0р\1рџМўщ@2рА1рО "АБЂкЎЎЎЎЎinsert_grantableћћћћј 2рј1рП @x;Ј- ?????(0€џџ М2рjjjjр2р@2рР x;ЈЧ  insert_grantableXXXX(3р 2рС (x;Јџ ДДДДД00D3рссссP3рр2рТ ФљІзЧЧЧЧЧ’’’’@˜3р(3рУ $x;Ј ХХХХХ\2рќ2ра3рP3рФ x;ЈЯ ‰‰‰‰‰Ь1рtЧф\ž˜ˆ мммма3р4р˜3рХ XЁЂxтттттl3рˆ ЗЗЗЗp4ра3рЦ HXЁЂWїїїїїd%щм5р4†FGВHУ,T™ЂЂЂЂ5р4рЧ px;ЈW‰‰‰‰‰D:рє$щД ` `т(5р €УџџммммР5рp4рШ  `}Ј_йййййd6р< щ0`к05рш4ръЉ,T™0`кT5р0T™ъЉ,T™Г0`кx5р05ръЉ,T™0`кœ5р0T™ъЉ,T™џџџџ0`кŒŒŒŒ6р5рЩ $x;Ј[wwwwwŒ4р0T™Жџџџџџџџџџџџџ""""6рH6рР5рЪ АБЂк(((((#column_priv2}}}}7р6рЫ  XЁЂCCCCC@џџd7р$7рH7рH6рЬ x;Јъ ™™™™™#column_priv2ЬЬЬЬггР7р7рЭ XXЁЂЗp7р^HIIIIP8рH7рЮ px;Ј! RRRRRD:рє$щД ` `т(l8р €Сџџџџ9рР7рЯ  `}Ј_lllll< щ————8ршош€9ре0аs­— ПППППp#›пш%œŒмъъъъ˜Сщшрчо,А^­ј .....€#›0`кДСщ9999X9рP8ра $x;Ј№ IIIIIм7ра9рЖџџџџџџџџџџџџ9р9рб АБЂкbbbbbCOLUMN_NAME7777№9рX9рв @x;Ј- ooooo(0€џџ :р::::(:р9рг x;ЈЧ ЦЦЦЦЦCOLUMN_NAME““““ш:р№9рд Dx;Ј ОООООЄ;рЌ9р€4ыыыыp#›Ш:р(:ре x;ЈЕ eeeeeCOLUMN_NAME0000шј:р:рж АБЂкЩЩЩЩЩgrantorœœœœX;рШ:рз @x;Ј- ›››››,(0€џџt;рЮЮЮЮˆ;рј:ри x;ЈЧ фффффgrantorББББк№;рX;рй Dx;Ј ќ<р;р€4дддд <рˆ;рк x;ЈЕ ьььььgrantorЙЙЙЙP<р№;рл АБЂкaaaaagrantee4444А<р <рм @x;Ј- ……………(0€џџЬ<раааар<рP<рн x;ЈЧ EEEEEgranteeкH=рА<ро Dx;Ј 4>рl<рЫc€4VVVVx=рр<рп x;ЈЕ љљљљљgranteeЌЌЌЌeЈ=рH=рр АБЂйѓѓѓѓѓUPDATEІІІІ№=рx=рс (x;Јп СССССŸЖЇЇа4 >р””””>рЈ=рт ФљІз/////UPDATEzzzz€>р№=ру Dx;Ј ЁЁЁЁЁ4?рФ=р0`к€4єєєєЈ>р>рф АБЂйNOFFFF№>р€>рх (x;Јп љљљљљфššЇЇа4 ?рЌЌЌЌ?рЈ>рц ФљІзъъъъъNOПППП€?р№>рч Dx;Ј nnnnnФ>рфšš€4;;;; щ?рш АБЂкrrrrr#column_priv1''''ьЂщЗЗЗЗ`ш•ЦМќ}ˆ_Уu(0/у+Ёcreate procedure sp_logdevice @dbname sysname, @devicename sysname as declare @stmt nvarchar(1150) declare @countrows int declare @size nvarchar (10) declare @maxsize nvarchar (10) declare @growth nvarchar (10) declare @filename sysname set nocount on -- Make sure the database exists -- if not exists (select * from master.dbo.sysdatabases where name = @dbname) begin raiserror(15010,-1,-1,@dbname) return (1) end -- Make sure the file exists and it should be in sysdevices as this is only -- for older syntax. -- if not exists (select * from master.dbo.sysdevices where name = @devicename) begin raiserror(15012,-1,-1,@devicename) return (1) end -- Calculate the specs of the current file and save it into a temp table -- create table #tempsize (size int, growth int, maxsize int, filename sysname collate database_default ) select @stmt = 'INSERT #tempsize!SELECT size, growth, maxsize, filename FROM ' + @dbname + '.dbo.sysfiles WHERE name = ''' + @devicename + '''' exec (@stmt) select @countrows = count (*) from #tempsize -- disconnect with devices and database -- if @countrows <> 1 begin raiserror(15012,-1,-1,@devicename) return (1) end select @stmt = 'ALTER DATABASE ' + @dbname + ' REMOVE FILE ' + @devicename exec (@stmt) if @@error <> 0 begin raiserror(15319,-1,-1,@dbname,@devicename) return(1) end select @size =!convert(nvarchar(10), size/128), @maxsize = convert(nvarchar(10), maxsize), @growth = convert(nvarchar(10), growth * 8), @filename = filename from #tempsize if (@maxsize = '-1') begin select @maxsize = 'UNLIMITED' end else begin select @maxsize = (convert (int, @maxsize)) / 128 end select @stmt = 'ALTER DATABASE ' + @dbname + ' ADD LOG FILE (NAME = [' + @devicename + '], FILENAME = [' + @filename + '], SIZE = ' + @size + ', MAXSIZE = ' + @maxsize + ', FILEGROWTH!= ' + @growth + 'KB)' exec (@stmt) if @@error=0 begin raiserror(15318,-1,-1,@dbname,@devicename) end else begin raiserror(15319,-1,-1,@dbname,@devicename) return (1) end return (0) -- sp_logdevice fff0Yэ`…CREATE VIEW sysconstraints AS SELECT constid = convert(int, id), id = convert(int, parent_obj), colid = convert(smallint, info), spare1 = convert(tinyint, 0), status = convert(int, CASE xtype WHEN 'PK' THEN 1 WHEN 'UQ' THEN 2 WHEN 'F' THEN 3 WHEN 'C' THEN 4 WHEN 'D' THEN 5 ELSE 0 END + CASE WHEN info != 0 -- CNST_COLUMN / CNST_TABLE THEN (16) ELSE (32) END + CASE WHEN (status & 16)!=0 -- CNST_CLINDEX THEN (512) ELSE 0 END + CASE WHEN (status & 32)!=0 -- CNST_NCLINDEX THEN (1024) ELSE 0 END + (2048) -- CNST_NOTDEFERRABLE + CASE WHEN (status & 256)!=0 -- CNST_DISABLE THEN (16384) ELSE 0 END + CASE WHEN (status & 512)!=0 -- CNST_ENABLE THEN (32767) ELSE 0 END + CASE WHEN (status & 4)!=0 -- CNST_NONAME THEN (131072) ELSE 0 END + CASE WHEN (status & 1)!=0 -- CNST_NEW THEN (1048576) ELSE 0 END + CASE WHEN (status & 1024)!=0 -- CNST_REPL THEN (2097152) ELSE 0 END), actions = convert(int, 4096), error = convert(int, 0) FROM sysobjects WHERE xtype in ('C', 'F', 'PK', 'UQ', 'D') AND (status & 64) = 0 <>§ъ /* Procedure for pre-6.0 server */ create proc sp_datatype_info (@data_type int = 0, @ODBAVer tinyint = 2) as if @ODBCVer <> 3 select @ODBCVer = 2 if @data_type = 0 select TYPE_NAME = t.name, d.DATA_TYPE, "PRECISION" = isnull(d.data_precision, convert(int,t.length)), d.LITERAL_PREFIX, d.LITERAL_SUFFIX, e.CREATE_PARAMS, d.NULLABLE, d.CASE_SENSITIVE, d.SEARCHABLE, d.UNSIGNED_ATTRIBUTE, d.MONEY, d.AUTO_INCREMENT, LOCAL_TYPE_NAME = t.name, MINIMUM_SCALE = d.numeric_scale, MAXIMUM_SCALE = d.numeric_scale, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, NUM_PREC_RADIX = convert(int,d.RADIX), INTERVAL_PRECISION = convert(smallint,NULL), USERTYPE = t.usertype from master.dbo.spt_datatype_info d, master.dbo.spt_datatype_info_ext e, systypes t where d.ss_dtype = t.type AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) and t.usertype *= e.user_type and (t.type not in (111,109,38,110) or /* get rid of nullable types */ t.usertype > 100) order by 2, 12, 11, t.usertype else select TYPE_NAME = u.name, d.DATA_TYPE, "PRECISION" = isnull(d.data_precision, convert(int,t.length)), d.LITERAL_PREFIX, d.LITERAL_SUFFIX, e.CREATE_PARAMS, d.NULLABLE, d.CASE_SENSITIVE, d.SEARCHABLE, d.UNSIGNED_ATTRIBUTE, d.MONEY, d.AUTO_INCREMENT, LOCAL_TYPE_NAME = t.name, MINIMUM_SCALE = d.numeric_scale, MAXIMUM_SCALE = d.numeric_scale, d.SQL_DATA_TYPE, d.SQL_DATETIME_SUB, NUM_PREC_RADIX = convert(int,d.RADIX), INTERVAL_PRECISION = convert(smallint,NULL), USERTYPE = t.usertype from master.dbo.spt_datatype_info d, master.dbo.spt_datatype_info_ext e, systypes t where DATA_TYPE = @data_type and d.ss_dtype = t.type AND (d.ODBCVer is null or d.ODBCVer = @ODBCVer) and t.usertype *= e.user_type and (t.type not in (111,109,38,110) or /* get rid of nullable types */ t.usertype > 100) order by 12, 11, t.usertype uн0ѓЕ)xpstar.dll_ATETIME_SUB1111 vн˜uн7$АБЂктттттCHAR_OCTET_LENGTHЗЗЗЗPvниuн8АБЂк>>>>>isnullkkkk4xvн vн9АБЂкYYYYYd ЈvнPvн:АБЂкlengthOOOOhаvнxvн;XЁЂјјјјјd­­­­WWрvн0wнЈvн<@x;Ј- WWWWW$(088  Lwн`wнаvн= x;ЈЧ lengthNNNN88˜wн0wн>XЁЂт{{{{{wнTьvнd....рwн`wн?$x;Ј 88888ьvнchІmmmmxн˜wн@АБЂкБББББcфффф@8xнрwнAАБЂк[[[[[length$`xнxнBXЁЂCCCCCcнјwнРxн8xнC@x;Ј- _____ о(044  мxн №xн`xнD x;ЈЧ ‹‹‹‹‹lengthоооо88(yнРxнEXЁЂт;;;;; yнT|xнcnnnnпpyн№xнF$x;Ј ўўўўў|xнДwнІЋЋЋЋNNNNИyн(yнG(XЁЂ‚ 00000єерЄмч_OF88 ,вЇeeeeрyнpyнHАБЂк-----dxxxxNAzнИyнIАБЂкЏЏЏЏЏcharbinњњњњ8zнрyнJXЁЂўўўўўdЋЋЋЋ(˜zнzнK@x;Ј- ссссс(000$ttнДzнДДДДШzн8zнLx;ЈЧ ТТТТТcharbin————{н˜zнMXЁЂтооооојzнTTzнd‹‹‹‹~~H{нШzнN$x;Ј ŒyньмчŠ88 JJJJАЫЉА{н{нODx;Ј АААААЯп{н€488 "Ь{нххххј{нH{нP"x;ЈЕ CHAR_OCTET_LENGTHNNNN@|нА{нQ"АБЂкKKKKKORDINAL_POSITIONнx{нh|нј{нRАБЂкТТТТТint————А|н@|нS(x;Ју ЌЌЌЌЌ88 љљљљи|нh|нTФљІз]]]]]intL@}нА|нUDx;Ј zzzzz„|н8|н€4////џ KИ}ни|нVTXЁЂ{ +++++д}нЭп”Рп”РпТп„•чАЫЉАЫЉW~~~~x~н@}нW x;ЈЩ ŽŽŽŽŽжч  @щ(”~н €СџџџџŒзч„•ч„•ч"…лллл8нИ}нX `}Ј_88888pн№}нU `}Ј_zzzzzhhнh~нfx;ЈЕ #####SS_DATA_TYPEvvvv@на~нgАБЂкUUUUUsyscolummmmmhнx~нY АБЂкмммммcount‰‰‰‰cdАн8нZ(x;Јџ УУУУУ88 Ьн–––– Рпhн[ФљІзMMMMMчч Рпн;ФљІзŒ Œ `™›h§yИaњIf <=~1)xpstar.dll <"ŽЛЕ /* Procedure for pre-6.0 server */ CREATE PROCEDURE sp_fkeys( @pktable_name varchar(32) = null, @pktable_owner varchar(32) = null, @pktable_qualifier varchar(32) = null, @fktable_name varchar(32) = null, @fktable_owner varchar(32) = null, @fktable_qualifier varchar(32) = null ) as set nocount on declare @order_by_pk int select @order_by_pk = 0 if (@pktable_name is null) and (@fktable_name is null) begin /* If neither primary key nor foreign key table names given */ raiserror 20004 '~~Rush_25~~' return end if @fktable_qualifier is not null begin if db_name() <> @fktable_qualifier begin /* If qualifier doesn't match current database */ raiserror 20001 '~~Rush_26~~' return end end if @pktable_qualifier is not null begin if db_name() <> @pktable_qualifier begin /* If qualifier doesn't match current database */ raiserror 20001 '~~Rush_27~~' return end end if @pktable_name is null begin /* If table name not supplied, match all */ select @pktable_name = '%' select @order_by_pk = 1 end if @pktable_owner is null /* If PK owner not supplied, match all */ select @pktable_owner = '%' if @fktable_name is null /* If table name not supplied, match all */ select @fktable_name = '%' if @fktable_owner ir null /* If FK owner not supplied, match all */ select @fktable_owner = '%' if @@trancount <> 0 begin /* If inside a transaction */ raiserror 20003 '~~Rush_28~~' return end create table #fkeys( PKTABLE_QUALIFIER varchar(32) NULL, PKTABLE_OWNER varchar(32) NULL, PKTABLE_NAME varchar(32) NOT NULL, PKCOLUMN_NAME varchar(32) NOT NULL, FKTABLE_QUALIFIER varchar(32) NULL, FKTABLE_OWNER varchar(32) NULL, FKTABLE_NAME varchar(32) NOT NULL, FKCOLUMN^NAME varchar(32) NOT NULL, KEY_SEQ smallint NOT NULL) /* SQL Server supports upto 8 PK/FK relationships between 2 tables */ /* Process syskeys for each relationship */ /* The inserts below adds a row to the temp table for each of the 8 possible relationships */ insert into #fkeys select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 1 from syskeys k, syscolumns c1, szscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key1 and c2.id = k.depid and c2.colid = k.depkey1 and o1.id = k.depid and o2.id = k.id union all select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 2 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key2 and c2.id = k.depid and c2.colid = k.depkey2 and o1.id = k.depid and o2.id = k.id union all select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 3 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and"c1.colid = k.key3 and c2.id = k.depid and c2.colid = k.depkey3 and o1.id = k.depid and o2.id = k.id union all select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 4 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key4 and c2.id = k.depid and c2.colid > k.depkey4 and o1.id = k.depid and o2.id = k.id union a<"ŽЛ ll select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 5 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key5 and c2.id = k.depid and c2.colid = k.depkey5 and o1.id = k.depid and o2.id = k.id union all select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 6 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key6 and c2.id = k.depid and c2.colid = k.depkey6 and o1.id = k.depid and o2.id = k.id union all select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 7 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key7 and c2.id = k.depid and c2.colid = k.depkey7 and o1.id = k.depid and o2.id = k.id union all select db_name(), user_name(o1.uid), object_name(k.depid), c2.name, db_name(), user_name(o2.uid), object_name(k.id), c1.name, 8 from syskeys k, syscolumns c1, syscolumns c2,sysobjects o1, sysobjects o2 where c1.id = k.id and k.type = 2 /* Foreign type key */ and c1.colid = k.key8 and c2.id = k.depid and c2.colid = k.depkey8 and o1.id = k.depid and o2.id = k.id if @order_by_pk = 1 /* If order by PK fields */ select PKTABLE_QUALIFIER, PKTABLE_OWNER, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_RUALIFIER, FKTABLE_OWNER, FKTABLE_NAME, FKCOLUMN_NAME, KEY_SEQ, UPDATE_RULE = convert(smallint, null), DELETE_RULE = convert(smallint,null), FK_NAME = convert(varchar(32),null), PK_NAME = convert(varchar(32),null), DEFERRABILITY = convert(smallint,7) from #fkeys where FKTABLE_NAME like @fktable_name and FKTABLE_OWNER like @fktable_owner and PKTABLE_NAME like @pktable_name and PKTABLE_OWNER like @pktable_owner order by 1, 2, 3, 9, 4 else /* Order bz FK fields */ select PKTABLE_QUALIFIER, PKTABLE_OWNER, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_QUALIFIER, FKTABLE_OWNER, FKTABLE_NAME, FKCOLUMN_NAME, KEY_SEQ, UPDATE_RULE = convert(smallint,null), DELETE_RULE = convert(smallint,null), FK_NAME = convert(varchar(32),null), PK_NAME = convert(varchar(32),null), DEFERRABILITY = convert(smallint,7) from #fkeys where FKTABLE_NAME like @fktable_name and FKTABLE_OWNER like @fktable_owner and PKTABLE_NAME like @pktable_name and PKTABLE_OWNER like @pktable_owner order by 5, 6, 7, 9, 8 3330јƒ†)xpstar.dll7777 <нш<нh<нn $ЄЈDooooo\врXeчча4::::l­щ0=н <нo $ЄЈD[[[[[ЄдрE88 H h=нш<нp РЈwіііііDmн„=н0`кˆ ЃЃЃЃ =н0=нq РЈwDoнМ=н=нˆ IIIIь7ни=нh=нr РЈwlqнє˜šˆ LLLLЌЋщ>н =нs РЈwдЬп,>нˆ кккк;ЙH>ни=нt РЈw@@@@@дЮпd>нъѕˆ 0`к€>н>нu РЈw|||||ќапˆ ))))€>нИ>нH>нv РЈwuuuuu4NЙд>нXˆ  є˜š№>н€>нw РЈw66666ьPЙ ?нˆ cccc(?нИ>нx РЈw‰‰‰‰‰$SЙD?нˆ?нˆ ммммъ`?н№>нy РЈwSSSSSVЙ|?нˆ ˜?н(?нz РЈwЭЭЭЭЭXЙKKKKˆ ˜˜˜˜X у`?н{ РЈw|||||щщtуˆ ))))Рш?нL)р\$щ@DŒd`џb ШўyШиV•E0…МфQcreate procedure sp_recompile @objname nvarchar(776) as -- do sets and declares Set nocount on declare @objid int, @curdbname sysname -- CHECK VALIDITY OF OBJECT NAME -- -- (1) Must exist in current database -- (2) Must be a table or an executable object select @objid = object_id(@objname, 'local') if @objid is null OR (ObjectProperty(@objid, 'IsTable') = 0 AND ObjectProperty(@objid, 'IsExecuted') = 0) begin select @curdbname = db_name() raiserror(15009,-1,-1 ,@objname, @curdbname) return @@error end -- CHECK PERMISSION -- if (is_member('db_owner') = 0) AND (is_member('db_ddladmin') = 0) AND (is_member(user_name(ObjectProperty(@objid, 'ownerid'))) = 0) begin raiserror(15247,-1,-1) return @@error end -- BUMP SCHEMA FOR RECONPILE -- DBCC LockObjectSchema(@objname) if @@error <> 0 return (1) -- TH-TH-TH-THAT'S IT! raiserror(15070,-1,-1,@objname) return (0) -- sp_recompile 0Ори0 create procedure sp_remoteoption --- 1996/04/08 00:00 @remoteserver sysname = NULL, /* server name to change */ @loginame sysname = NULL, /* user's remote name */ @remotename sysname = NULL, /* user's local user name */ @optname varchar(35) = NULL, /* option name to turn on/off */ @optvalue varchbr(10) = NULL /* true or false */ as declare @optcount int /* number of options like @optname */ declare @sid varbinary(85) -- NO SERVER NAME? SHOW SETTABLE OPTION ('trusted') if @remoteserver is null begin raiserror(15473,-1,-1) select remotelogin_option = name from master.dbo.spt_values where type = 'F_U' and number = 16 return (0) end -- NO USER XACT -- set implicit_transactions off if @@trancount > 0 begin raiserror(15002,-1,-1,'sp_remoteoption') return (1) end -- PERMISSIONS -- if not (is_srvrolemember('securityadmin') = 1) begin raiserror(15247,-1,-1) return (1) end -- VALIDATE SERVER NAME -- declare @srvid smallint select @srvid = srvid from master.dbo.sysservers where srvname = @remoteserver if @srvid is null begin raiserror(15015,-1,-1,@remoteserver) return (1) end -- VALIDATE @loginame -- if @loginame is not null begin select @sid = sid from master.dbo.syslogins where loginname = @loginame AND isntnbme = 0 -- cannot remap to NT login if @sid is null begin raiserror(15067,-1,-1,@loginame) return (1) end end -- VALIDATE <@sid, @remotename> PAIR FOR @srvid -- if not exists (select * from master.dbo.sysxlogins where srvid = @srvid and ((@remotename is null AND name is null) OR name = @remotename) and ((@sid is null AND sid is null) OR sid = @sid)) begin raiserror(15185,-1,-1,@remotename,@loginame,@remoteserver) return (1) end -- Check remaining paramfters -- if @optname is NULL or lower(@optvalue) not in ('true', 'false') or @optvalue is null begin raiserror(15220,-1,-1) return (1) end -- SEE IF @optname MATCHES THE 'trusted' OPTION -- if not exists (select * from master.dbo.spt_values where name like '%' + @optname + '%' and type = 'F_U' and number = 16) begin raiserror(15221,-1,-1) return (1) end -- Now update sysremotelogins if lower(@optvalue) = 'true' begin update master.dbo.sysxlogins set xstatus = xstatvs | 16, xdate1 = getdate() where srvid = @srvid and ((@remotename is null AND name is null) OR name = @remotename) and ((@sid is null AND sid is null) OR sid = @sid) end else -- 'false' begin update master.dbo.sysxlogins set xstatus = xstatus & ~16, xdate1 = getdate() where srvid = @srvid and ((@remotename is null AND name is null) OR name = @remotename) and ((@sid is null AND sid is null) OR sid = @sid) end return (0) -- sp_remoteoption <”жЃЕ /* Procedure for 7.0 server */ CREATE PROCEDURE sp_fkeys( @pktable_name sysname = null, @pktable_owner sysname = null, @pktable_qualifier sysname = null, @fktable_name sysname = null, @fktable_owner sysname = null, @fktable_qualifier sysname = null ) as set nocount on DECLARE @pktable_id int DECLARE @pkfull_table_name nvarchar(257) /* 2*128 + 1 */ DECLARE @fktable_id int DECLARE @fkfull_table_name nvarchar(257) /* 2*128 + 1 */ declare @order_by_pk int /* select 'XXX starting table creation' */ create table #fkeysall( rkeyid int NOT NULL, rkey1 int NOT NULL, rkey2 int NOT NULL, rkey3 int NOT NULL, rkey4 int NOT NULL, rkey5 int NOT NULL, rkey6 int NOT NULL, rkey7 int NOT NULL, rkey8 int NOT NULL, rkey9 int NOT NULL, rkey10 int NOT NULL, rkey11 int NOT NULL, rkey12 int NOT NULL, rkey13 int NOT NULL, rkey14 int NOT NULL, rkey15 int NOT NULL, rkey16 int NOT NULL, fkeyid int NOT NULL, fkey1 int NOT NULL, fkey2 int NOT NULL, fkey3 int NOT NULL, fkey4 int NOT NULL, fkey5 int NOT NULL, fkey6 int NOT NULL, fkey7 int NOT NULL, fkey8 int NOT NULL, fkey9 int NOT NULL, fkey10 int NOT NULL, fkey11 int NOT NULL, fkey12 int NOT NULL, fkey13 int NOT NULL, fkey14 int NOT NULL, fkey15 int NOT NULL, fkey16 int NOT NULL, constid int NOT NULL, name sysname NOT NULL) create table #fkeys( rktable_id int NOT NULL, pkcolid int NOT NULL, fktable_id int NOT NULL, fkcolid int NOT NULL, KEY_SEQ smallint NOT NULL, fk_id int NOT NULL, PK_NAME sysname NOT NULL) create table #fkeysout( PKTABLE_QUALIFIER sysname NULL, PKTABLE_OWNER sysname NULL, PKTABLE_NAME sysname NOT NULL, PKCOLUMN_NAME sysname NOT NULL, FKTABLE_QUALIFIER sysname NULL, FKTABLE_OWNER sysname NULL, FKTABLE_NAME sysname NOT NULL, FKCOLUMN_NAME sysname NOT NULL, KEY_SEQ smallint NOT NULL, UPDATE_RULE smallint NULL, DELETE_RULE smallint NULL, FK_NAME sysname NULL, PK_NAME sysname NULL, DEFERRABILITY smallint null) /* select 'XXX starting parameter analysis' */ select @order_by_pk = 0 if (@pktable_name is null) and (@fktable_name is null) begin /* If neither primary key nor foreign key table names given */ raiserror (15252,-1,-1) return end if @fktable_qualifier is not null begin if db_name() <> @fktable_quanifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @pktable_qualifier is not null begin if db_name() <> @pktable_qualifier begin /* If qualifier doesn't match current database */ raiserror (15250, -1,-1) return end end if @pktable_owner is null begin /* If unqualified primary key table name */ SELECT @pkfull_table_name = quotename(@pktable_name) end else begin /* Qualified primary key vable name */ if @pktable_owner = '' begin /* If empty owner name */ SELECT @pkfull_table_name = quotename(@pktable_owner) end else begin SELECT @pkfull_table_name = quotename(@pktable_owner) + '.' + quotename(@pktable_name) end end /* Get Object ID */ SELECT @pktable_id = object_id(@pkfull_table_name) if @fktable_owner is null begin /* If unqualified foreign key table name */ SELECT @fkfull_table_name = quotename(@fktable_name) end else begin /* Rualified foreign key table name */ if @fktable_owner = '' begin /* If empty owner name */ SELECT @fkfull_table_name = quotename(@fktable_owner) end else begin SELECT @fkfull_table_name = quotename(@fktable_owner) + '.' + quotename(@fktable_name) end end /* Get Object ID */ SELECT @fktable_id = object_id(@fkfull_table_name) if @fktable_name is not null begin 0jЬn)xpstar.dllфœ`›ўМ@џjргеR<[ВЏЕetween isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey4, r.fkeydbid, r.fkeyid, r.fkey4, 4, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey5, r.fkeydbid, r.fkeyid, r.fkey5, 5, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey6, r.fkeydbid, r.fkeyid, r.fkey6, 6, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey7, r.fkeydbid, r.fkeyid, r.fkey7, 7, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey8, r.fkeydbid, r.fkeyid, r.fkey8, 8, r.cmnstid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey9, r.fkeydbid, r.fkeyid, r.fkey9, 9, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AMD (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey10, r.fkeydbid, r.fkeyid, r.fkey10, 10, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id,!0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey11, r.fkeydbid, r.fkeyid, r.fkey11, 11, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey12, r.fkeydbid, r.fkeyid, r.fkey12, 12, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey13, r.fkeydbid, r.fkeyid, r.fkey13, <[ВЏ& 13, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey14, r.fkeydbid, r.fkeyid, r.fkey14, 14, r.constid, s.constid from sysqeferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey15, r.fkeydbid, r.fkeyid, r.fkey15, 15, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.qkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) union all select r.rkeydbid, r.rkeyid, r.rkey16, r.fkeydbid, r.fkeyid, r.fkey16, 16, r.constid, s.constid from sysreferences r, sysconstraints s where r.rkeyid = s.id AND (s.status & 0xf) = 1 AND r.rkeyid between isnull(@pktable_id, 0) and isnull(@pktable_id, 0x7fffffff) AND r.fkeyid between isnull(@fktable_id, 0) and isnull(@fktable_id, 0x7fffffff) if @order_by_pk = 1 /* If order by PK fields */ select PKTABLE_QUALIFIER = convert(varchar(32),DB_NAME(f.pkdb_id)), PKTABLE_OWNER = convert(varchar(32),USER_NAME(o1.uid)), PKTABLE_NAME = convert(varchar(32),o1.name), PKCOLUMN_NAME = convert(varchar(32),c1.name), FKTABLE_QUALIFIER = convert(varchar(32),DB_NAME(f.fkdb_id)), FKTABLE_OWNER = convert(varchar(32),USER_NAME(o2.uid)), FKTABLE_NAME = convert(varchar(32)-o2.name), FKCOLUMN_NAME = convert(varchar(32),c2.name), KEY_SEQ, UPDATE_RULE = convert(smallint,1), DELETE_RULE = convert(smallint,1), FK_NAME = convert(varchar(32),OBJECT_NAME(fk_id)), PK_NAME = convert(varchar(32),OBJECT_NAME(pk_id)), DEFERRABILITY = convert(smallint,7) from #fkeys f, sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2 where o1.id = f.pktable_id AND o2.id = f.fktable_id AND c1.id = f.pktable_id AND c2.id = f.fktable_id AND a1.colid = f.pkcolid AND c2.colid = f.fkcolid order by 1,2,3,9,4 else /* Order by FK fields */ select PKTABLE_QUALIFIER = convert(varchar(32),DB_NAME(f.pkdb_id)), PKTABLE_OWNER = convert(varchar(32),USER_NAME(o1.uid)), PKTABLE_NAME = convert(varchar(32),o1.name), PKCOLUMN_NAME = convert(varchar(32),c1.name), FKTABLE_QUALIFIER = convert(varchar(32),DB_NAME(f.fkdb_id)), FKTABLE_OWNER = convert(varchar(32),USER_NAME(o2.uid)), FKTABLE_NAME = convert(varchar(32),o2.name), FKCOLUMN_NAME = convert(varchar(32),c2.name), KEY_SEQ, UPDATE_RULE = convert(smallint,1), DELETE_RULE = convert(smallint,1), FK_NAME = convert(varchar(32),OBJECT_NAME(fk_id)), PK_NAME = convert(varchar(32),OBJECT_NAME(pk_id)), DEFERRABILITY = convert(smallint,7) from #fkeys f, sysobjects o1, sysobjects o2, syscolumns c1, syscolumns c2 where o1.id = f.pktable_id AND o2.id = f.fktable_id AND c1.id = f.pktable_id AND c2.id = f.fktable_id AND c1.colid =!f.pkcolid AND c2.colid = f.fkcolid order by 5,6,7,9,8 `