<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlserver.ro/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Articole</title><link>http://sqlserver.ro/forums/22/ShowForum.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Microsoft Technet Romania - SQL Server 2008 - Elemente noi in Transact-SQL</title><link>http://sqlserver.ro/forums/thread/4982.aspx</link><pubDate>Sun, 18 May 2008 18:37:52 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4982</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4982.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=4982</wfw:commentRss><description>&lt;A href="http://sqlserver.ro/r.ashx?J"&gt;Microsoft Technet Romania - SQL Server 2008 - Elemente noi in Transact-SQL&lt;/A&gt;</description></item><item><title>Microsoft Technet Romania - SQL Server 2008 – Backup Compression </title><link>http://sqlserver.ro/forums/thread/4580.aspx</link><pubDate>Mon, 07 Apr 2008 19:21:51 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4580</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4580.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=4580</wfw:commentRss><description>&lt;A href="http://sqlserver.ro/r.ashx?D"&gt;SQL Server 2008 – Backup Compression&lt;/A&gt;</description></item><item><title>Descoperirea partitiilor pas cu pas</title><link>http://sqlserver.ro/forums/thread/376.aspx</link><pubDate>Mon, 16 Oct 2006 08:31:17 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:376</guid><dc:creator>ggciubuc</dc:creator><slash:comments>4</slash:comments><comments>http://sqlserver.ro/forums/thread/376.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=376</wfw:commentRss><description>&lt;p align="center" class="MsoNormal" style="text-align:center;"&gt;Descoperirea
partitiilor pas cu pas&lt;/p&gt;





&lt;p class="MsoNormal" style="text-indent:0.25in;"&gt;&amp;nbsp;&lt;br /&gt;Partitiile sunt mecanismul prin
care in SQL 2005 se pot distribui date ale unui tabel pe mai multe
filegroup-uri pe baza unui criteriu de impartire. Beneficiile utilizarii
acestuia sunt mari , lista lor o gasiti sigur prin MSDN (aici Cristi Lefter sau
altcineva dintre dvs. ma puteti ajuta cu un link catre astfel de resurse).&lt;br /&gt;In continuare vi se va desfasura
un film al incercarilor mele facute pentru testarea acestui mecanism. Daca este
prost sau mai trebuie imbunatatit, dumneavoastra o puteti spune, insa sigur
puteti trece de la postura de spectator la cea de regizor, masinist, sunetist,
cascador sau ce mai vreti &amp;hellip;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Folosesc
aceeasi baza de date &amp;ldquo;chioara&amp;rdquo; facuta candva intr-un articol. Citind
&amp;ldquo;scenariul&amp;rdquo; oferit de Books Online aflu ca trebuie facuta o functie pentru
partitie:&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;&amp;nbsp;CREATE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;FUNCTION&lt;/span&gt;
[myRangePF1]&lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:gray;"&gt;)&lt;/span&gt; &lt;span style="color:blue;"&gt;AS&lt;/span&gt; &lt;span style="color:blue;"&gt;RANGE&lt;/span&gt; &lt;span style="color:gray;"&gt;LEFT&lt;/span&gt; &lt;span style="color:blue;"&gt;FOR&lt;/span&gt; &lt;span style="color:blue;"&gt;VALUES&lt;/span&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt; 100&lt;span style="color:gray;"&gt;,&lt;/span&gt; 1000&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;br /&gt;Aceasta se numeste &amp;ldquo;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;myRangePF1&amp;rdquo; si imparte datele in 4
partitii :&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Partitia 1 intregi pana la borna 1 (inclusiv 1 pentru ca
apare LEFT)&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Partitia 2 intregi intre 1 si 100 inclusiv&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Partitia 3 intregi intre 100 si 1000 inclusiv&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Partitia 4 intregi peste 1000&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;(daca as fi folosit RIGHT in loc de LEFT am fi avut de
exemplu&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;Partitia 3 intregi intre 100 inclusiv si 1000)&lt;/span&gt;&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;Mai departe trebuie sa fac o asociere intre aceste
zone unde se vor duce datele si filegroup-uri. Pentru asta construiesc intai 4
filegroupuri test1fg, test2fg, test3fg, test4fg si generez o schema de partitie
care face asocierea:&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;CREATE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;SCHEME&lt;/span&gt;
[myRangePS1] &lt;span style="color:blue;"&gt;AS&lt;/span&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt;
[myRangePF1] &lt;span style="color:blue;"&gt;TO&lt;/span&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;[test1fg]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [test2fg]&lt;span style="color:gray;"&gt;,&lt;/span&gt;
[test3fg]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [test4fg]&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Acuma bucataria e gata, mai trebuie sa pun un tabel sa se
foloseasca de aceste lucruri; tabelul creat mai jos face ca pe baza coloanei
&amp;ldquo;clasa&amp;rdquo; sa se faca impartirea datelor:&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;USE
&lt;img src="http://sqlserver.ro/emoticons/emotion-13.gif" alt="Angel" /&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;CREATE
TABLE [dbo].[test](&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[id] [int] IDENTITY(1,1) NOT NULL,&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[nume] [varchar](50) COLLATE
SQL_Latin1_General_CP1_CI_AS NULL,&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[clasa] [int] NULL&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;)
ON [myRangePS1]([clasa])&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;SET
ANSI_PADDING OFF&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Mai departe
ma joc inserand o multime de date in tabelul nostru&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;declare&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; @i &lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;declare&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; @nume1 &lt;span style="color:blue;"&gt;varchar&lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;20&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;set&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; @i&lt;span style="color:gray;"&gt;=&lt;/span&gt;0&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;while&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; @i&lt;span style="color:gray;"&gt;&amp;lt;&lt;/span&gt;2000&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;begin&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;set&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; @i&lt;span style="color:gray;"&gt;=&lt;/span&gt;@i&lt;span style="color:gray;"&gt;+&lt;/span&gt;1&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;set&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; @nume1&lt;span style="color:gray;"&gt;=&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;Gigi&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;+&lt;/span&gt;&lt;span style="color:fuchsia;"&gt;cast&lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;@i &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:blue;"&gt;varchar&lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;4&lt;span style="color:gray;"&gt;))&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;INSERT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;INTO&lt;/span&gt; &lt;img src="http://sqlserver.ro/emoticons/emotion-13.gif" alt="Angel" /&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray;"&gt;.&lt;/span&gt;[test]&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;[nume]&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;[clasa]&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;VALUES&lt;/span&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;@nume1&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;@i&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;end&lt;/span&gt;&lt;/p&gt;



&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;&amp;nbsp;&lt;/span&gt;Pentru a vedea ce date am si unde le am apelez la functia &lt;span style="font-size:10pt;font-family:'Courier New';color:fuchsia;"&gt;PARTITION&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:gray;"&gt;.&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;myRangePF1&lt;span style="color:gray;"&gt;(&lt;/span&gt;clasax&lt;span style="color:gray;"&gt;) &lt;/span&gt;&lt;/span&gt;care da partitia unde se depun datele ce fac
parte din clasa &amp;ldquo;clasax&amp;rdquo;, si, prin interogarea urmatoare&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;USE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; a &lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;SELECT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:fuchsia;"&gt;$PARTITION&lt;/span&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;myRangePF1&lt;span style="color:gray;"&gt;(&lt;/span&gt;clasa&lt;span style="color:gray;"&gt;)&lt;/span&gt; &lt;span style="color:blue;"&gt;AS&lt;/span&gt; &lt;span style="color:blue;"&gt;Partition&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:fuchsia;"&gt;COUNT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:gray;"&gt;(*)&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;AS&lt;/span&gt;
[COUNT] &lt;span style="color:blue;"&gt;FROM&lt;/span&gt; dbo&lt;span style="color:gray;"&gt;.&lt;/span&gt;test&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;GROUP&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;BY&lt;/span&gt; &lt;span style="color:fuchsia;"&gt;$PARTITION&lt;/span&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;myRangePF1&lt;span style="color:gray;"&gt;(&lt;/span&gt;clasa&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;ORDER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;BY&lt;/span&gt; &lt;span style="color:blue;"&gt;Partition&lt;/span&gt; &lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Rezulta
un numar de date ca in tabelul urmator :&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:gray;"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;Partition&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;COUNT&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-----------
-----------&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;1&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;2&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;99&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;3&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;900&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;4&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1000&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;(4 row(s)
affected)&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:gray;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;De asemenea pentru a vedea &amp;ldquo;icrele&amp;rdquo; depuse in partitia
numarul 3 se poate lansa&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;select&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:gray;"&gt;*&lt;/span&gt; &lt;span style="color:blue;"&gt;from&lt;/span&gt; dbo&lt;span style="color:gray;"&gt;.&lt;/span&gt;test&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;where&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:fuchsia;"&gt;$partition&lt;/span&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;myrangepf1&lt;span style="color:gray;"&gt;(&lt;/span&gt;clasa&lt;span style="color:gray;"&gt;)=&lt;/span&gt;3&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Cu partitiile se pot face urmatoarele operatii:&lt;/p&gt;

&lt;ul style="margin-top:0in;"&gt;&lt;li class="MsoNormal"&gt;Switching&lt;/li&gt;&lt;li class="MsoNormal"&gt;Merging&lt;/li&gt;&lt;li class="MsoNormal"&gt;Splitting&lt;/li&gt;&lt;/ul&gt;

&lt;p class="MsoNormal" style="margin-left:0.25in;"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal" style="margin-left:0.25in;"&gt;Daca ultimele 2 sunt un pic mai
transparente(merging=unire a 2 partitii, splitting=descompunere a unei
partitii) haideti sa vedem ce inseamna switching:&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Iata ce date avem pe partitia nr 2&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;select&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:gray;"&gt;*&lt;/span&gt; &lt;span style="color:blue;"&gt;from&lt;/span&gt; test&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;where&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:fuchsia;"&gt;$PARTITION&lt;/span&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;myrangepf1&lt;span style="color:gray;"&gt;(&lt;/span&gt;clasa&lt;span style="color:gray;"&gt;)=&lt;/span&gt;2&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;id&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;nume&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;clasa&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-----------
-------------------------------------------------- -----------&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;2&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Gigi2&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;3&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Gigi3&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;hellip;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;100&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Gigi100&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;100&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;(99 row(s)
affected)&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Creez un nou tabel test2 identic cu test in filegroupul
test2fg, si inserez un rand oarecare in tabel dupa care pornesc switching:&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;TABLE&lt;/span&gt;
test SWITCH &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; 2 &lt;span style="color:blue;"&gt;TO&lt;/span&gt; test2 &lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;Msg 4905,
Level 16, State 1, Line 1&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;ALTER TABLE SWITCH statement failed. The target table
&amp;#39;a.dbo.test2&amp;#39; must be empty.&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Asta inseamna ca test2 trebuie sa fie gol pentru a face
switching.&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Sterg acel rand si relansez comanda de switching, apoi vad
ce date sunt pe aceasta partitie:&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;id&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;nume&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;clasa&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-----------
-------------------------------------------------- -----------&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;(0 row(s)
affected)&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Asta inseamna ca prin switching datele de pe partitia
initiala sunt pierdute.&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Si ca sa nu fiu dator cu celelalte operatii:&lt;/p&gt;





&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;FUNCTION&lt;/span&gt;
myRangePF1&lt;span style="color:gray;"&gt;()&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;MERGE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;RANGE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;100&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Da urmatoarele rezultate:&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;Partition&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;COUNT&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-----------
-----------&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;1&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;2&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;999&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;3&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1000&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;(3 row(s)
affected)&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Asta inseamna ca partitiile 2 si 3 s-au unit (99 + 900), iar
&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;FUNCTION&lt;/span&gt;
myRangePF1&lt;span style="color:gray;"&gt;()&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;SPLIT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;RANGE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;500&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Ne da &lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;Msg 7707,
Level 16, State 1, Line 1&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;The
associated partition function &amp;#39;myRangePF1&amp;#39; generates more partitions than there
are file groups mentioned in the scheme &amp;#39;myRangePS1&amp;#39;.&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Oops !&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Dupa
cateva cautari aflu ca trebuia sa mai am un filegroup disponibil asa ca il
construiesc si pe &lt;span style="font-size:10pt;font-family:'Courier New';"&gt;test5fg&lt;/span&gt; , modific schema cu &lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;SCHEME&lt;/span&gt;
myRangePS1 &lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt;NEXT USED test5fg&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;astfel ca partitia sa recunoasca noul filegroup dupa care
comanda de splitare functioneaza corect.&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;The
End&lt;/p&gt;</description></item><item><title>Microsoft TechNet Romania -  Integrarea PowerShell cu SQL Server 2008  </title><link>http://sqlserver.ro/forums/thread/4332.aspx</link><pubDate>Sun, 09 Mar 2008 15:01:19 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4332</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/4332.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=4332</wfw:commentRss><description>&lt;P&gt;&amp;nbsp;&lt;FONT face=Verdana&gt;&lt;A href="http://sqlserver.ro/r.ashx?8"&gt;Integrarea PowerShell cu SQL Server 2008&lt;/A&gt;&lt;/FONT&gt;&amp;nbsp; &lt;/P&gt;</description></item><item><title>SQL Server 2008 - inovatii in domeniul securitate</title><link>http://sqlserver.ro/forums/thread/3918.aspx</link><pubDate>Fri, 01 Feb 2008 12:21:35 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3918</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/3918.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=3918</wfw:commentRss><description>&lt;A href="http://sqlserver.ro/r.ashx?3"&gt;Microsoft Romania TechNet - SQL Server 2008 - inovatii in domeniul securitate&lt;/A&gt;</description></item><item><title>Business Intelligence in SQL Server 2008</title><link>http://sqlserver.ro/forums/thread/3792.aspx</link><pubDate>Sat, 19 Jan 2008 19:28:02 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3792</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3792.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=3792</wfw:commentRss><description>Articol publicat pe site-ul Microsoft Romania: &lt;A href="http://sqlserver.ro/r.ashx?4"&gt;Business Intelligence in SQL Server 2008&lt;/A&gt;</description></item><item><title>Functionalitati noi in SQL Server 2008 (living document)</title><link>http://sqlserver.ro/forums/thread/2326.aspx</link><pubDate>Wed, 25 Jul 2007 15:30:08 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:2326</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/2326.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=2326</wfw:commentRss><description>&lt;UL&gt;
&lt;LI&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;FONT face=Verdana&gt;Transparent data encryption&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;External key management &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Data Auditing&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Hot Add CPU&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;Transparent failover for Database Mirroring&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;Automatic recovery from page corruption &lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;Log stream compression (Database Mirroring)&lt;/B&gt;&lt;/P&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;FONT face=Verdana&gt;Declarative Management Framework&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;FONT face=Verdana&gt;Server Group Management&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;Streamlined installation&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;Enterprise System Management&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;Performance Data Collection&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;System Analysis&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;Data compression&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Resource Governor&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Query Optimization Modes&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Entity&amp;nbsp;Data Model&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;Language Integrated Query (LINQ)&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;FONT face=Verdana&gt;Visual Entity Designers&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;FONT face=Verdana&gt;Entity Aware Adapters&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;FONT face=Verdana&gt;SQL Server Change Tracking&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;Synchronized Programming Model&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;Visual Studio Support&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;SQL Server Conflict Detection&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;FileStream data type&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Integrated Full-Text Search&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;Sparse columns&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;B&gt;&lt;FONT face=Verdana&gt;Large user-defined types&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Date/Time Data types&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;LOCATION data type&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;SPATIAL data type&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/LI&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-bidi-font-style:italic;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-bidi-font-style:italic;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;FONT face=Verdana&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="mso-ansi-language:EN-CA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-bidi-font-family:'Times New Roman';mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Data compression&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Backup compression&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Partitioned table parallelism&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Star join query optimizations&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Resource Management&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Grouping Sets&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Change Data Capture&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;MERGE SQL statement &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Scalable Integration Services&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;SQL Server Integration Services (SSIS) pipeline improvements&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;SSIS persistent lookups&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Analysis scale and performance&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Block computations&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Writeback&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Enterprise Reporting Engine&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Better scale-out configuration&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Internet report deployment&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Manage the reporting infrastructure&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Report Builder enhancements&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Built-in forms authentication&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Report Server application embedding&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;Office integration&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;TABLIX&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;In plus:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;FORCESEEK table hint&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;T-SQL Row Constructors&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;&lt;FONT face=Verdana&gt;New Dynamic Management Views&lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;tab-stops:center 223.0pt;"&gt;Visual designer, and add nodes to a peer-to-peer replication configuration without stopping system activity&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;Performance Studio to troubleshoot, tune, and monitor&lt;/LI&gt;
&lt;LI&gt;Table-valued parameters&lt;/LI&gt;
&lt;LI&gt;Table-valued constructors&lt;/LI&gt;
&lt;LI&gt;One&amp;nbsp;statement variable declaration/assignment, increment operators&lt;/LI&gt;
&lt;LI&gt;HierarchyID data type&lt;/LI&gt;
&lt;LI&gt;Large User Defined Aggregates&lt;/LI&gt;
&lt;LI&gt;New versions of ODBC driver, OLE DB provider, and ADO.NET data provider&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN class=searchword&gt;SQL&lt;/SPAN&gt;CE Version 3.5&lt;/FONT&gt; 
&lt;DIV&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/SPAN&gt;
&lt;P class=Text style="MARGIN:3pt 0in;"&gt;&amp;nbsp;Alte Facilitati neconfirmate oficial:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;"&gt;Intellisense&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=Text style="MARGIN:3pt 0in;"&gt;Debug in SSMS&amp;nbsp; &lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;</description></item><item><title>Episodul nr. 4 : "Arborii si cowboy-ii"</title><link>http://sqlserver.ro/forums/thread/143.aspx</link><pubDate>Fri, 22 Sep 2006 12:14:09 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:143</guid><dc:creator>ggciubuc</dc:creator><slash:comments>5</slash:comments><comments>http://sqlserver.ro/forums/thread/143.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=143</wfw:commentRss><description>&lt;DIV class=Section1&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Din seria “Microsoft SQL Server 2005 in actiune”&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;Astazi episodul nr. 4 :&lt;/P&gt;
&lt;P align=center class=MsoNormal&gt;&lt;SPAN&gt;"Arborii si cowboy-ii"&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;O productie “Admindate &amp;amp; Inf, &lt;SPAN&gt;&lt;A href="http://www.diadmin.ro/"&gt;www.diadmin.ro&lt;/A&gt;” , 2006&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Scenariul si regia Gheorghe Ciubuc&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Personaje principale:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Alejandro Morientes – DBA in firma “Los capshunares” cu activitati principale in agricultura, undeva in Spania, langa Madrid, anul de gratie 2006.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Pedro Garcia – patronul firmei, 50 de ani .&lt;/SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Maria-Elena Adochitei – romanca,bunaciunea nr. 1 nascuta la Vaslui, aici printre capsuni.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Miguel Morales – unu din managementul firmei si actionar al ei.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Consuela Cervantes – bunaciunea nr. 2, secretara dl. Pedro Garcia.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal&gt;Pedro Garcia(cu telefonul in mana)”Alejandro, vino pana la mine in birou”&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Alejandro Morientes(baiguind)&lt;/SPAN&gt;” &lt;SPAN&gt;Da, Sefu’,&amp;nbsp; imediat&lt;/SPAN&gt;”&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Alejandro urca cu inima cat un purice pana la biroul sefului de la etajul 1 care este langa secretariat.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;Consuela:”Alejandro, mi amor, ce-i cu tine…”&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Alejandro&lt;/SPAN&gt;&lt;SPAN&gt;:”Uite ma cheama seful, ce o avea cu mine, nu cumva…”&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;Consuela:”Stai draga linistit, probleme cu Uniunea Europeana, acu’ ca o sa-i bage si pe romani si pe bulgari…”&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Alejandro(bagand capul pe usa): “Traiti’ Sefu&amp;nbsp;”&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;Pedro Garcia:”Ce-i ma cu tine? “(Alejandro se albi ca varul)”te-am chemat de o juma’ de ora !”&lt;/P&gt;
&lt;P class=MsoNormal&gt;Alejandro(sufland usurat):”Sefu, a trebuit sa downloadez….”&lt;/P&gt;
&lt;P class=MsoNormal&gt;Pedro Garcia:”Bine, bine. Uite care-i problema : vreau sa mi se prezinte o situatie in care sa vad sefii cu subalternii pe ferme, sa stiu si eu care-i sef si care grajdar. Noi avem toti oamenii bagati in calculator, nu?&lt;/P&gt;
&lt;P class=MsoNormal&gt;Alejandro:”Da, sefu, ma gandesc…”&lt;/P&gt;
&lt;P class=MsoNormal&gt;Pedro Garcia:”Pai munceste nu gandeste!”&lt;/P&gt;
&lt;P class=MsoNormal&gt;Alejandro(ranjind cu subinteles):”Sigur, facem si d’astea.Sefu, ma duc pe jos sa pregatesc. Cred ca o sa folosesc &lt;B&gt;CTE&lt;/B&gt;-uri”.&lt;/P&gt;
&lt;P class=MsoNormal&gt;Pedro Garcia:”Cu ce vrei numai sa rezolvi!”&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Dupa un timp Alejandro, prezenta situatia sefului. Iata cum a facut:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Datele sunt inregistrate in baza de date astfel&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;ID(cod angajat)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nume (Nume angajat)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IDM(Codul sefului acestui angajat)&lt;/SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;(Primele randuri arata astfel)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;12123&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Pedro Garcia&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Null&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;23411&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Miguel Morales&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12123&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;….&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;(Null inseamna ca Pedro Garcia nu are sef – e normal, doar e patronul!)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Mai departe, foloseste &lt;/SPAN&gt;&lt;SPAN&gt;common table expression (CTE)- o structura care permite cautari recursive pe aceasi tabela &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;USE Ferma;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;GO&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;WITH Ierarhie (IDM, ID, Nume, Nivel)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;-- “Ierarhie” este numele structurii&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;AS&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;-- Definesc inceputul ierarhiei(de unde se pleaca, radacina)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT IDM,ID,Nume,0 as Nivel&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from dbo.emp&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE IDM IS NULL&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; UNION ALL&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;-- Definesc recursivitatea&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT e.IDM, e.ID, e.Nume,Nivel + 1&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM dbo.emp AS e&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; INNER JOIN Ierarhie AS d&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;-- astfel scot angajatii care au sef(e.IDM) exact codul managerului selectat(d.ID)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ON e.IDM = d.ID&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;-- Instructiunea care executa CTE-ul(Common Table BLOCKED EXPRESSION&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;SELECT IDM as CodSef, ID as CodAngajat, Nume as NumeAngajat, Nivel&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;FROM Ierarhie&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;GO&lt;/SPAN&gt;&lt;/P&gt;
&lt;P align=center class=MsoNormal&gt;&lt;SPAN&gt;SFARSIT&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Regia&amp;nbsp;………………………………………………………………..Ciubuc Gheorghe&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Scenariul(dupa un document Microsoft)……………………....………Ciubuc Gheorghe&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Producator………………………………………………………….. Ciubuc Gheorghe&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=center class=MsoNormal&gt;&lt;SPAN&gt;O productie Admindate &amp;amp; Inf, &lt;A href="http://www.diadmin.ro"&gt;www.diadmin.ro&lt;/A&gt;”&lt;/SPAN&gt;&lt;/P&gt;
&lt;P align=center class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=center class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=center class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;</description></item><item><title>Clauza FOR XML</title><link>http://sqlserver.ro/forums/thread/432.aspx</link><pubDate>Thu, 19 Oct 2006 07:57:53 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:432</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/432.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=432</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Clauza&amp;nbsp;FOR XML &lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Clauza &lt;em&gt;FOR XML&lt;/em&gt; pentru instructiunea &lt;em&gt;SELECT &lt;/em&gt;a fost introdusa in SQL Server 2000 si permite generarea de xml dintr-un&lt;span&gt;&amp;nbsp; &lt;/span&gt;set de randuri. In SQL Server 2005 clauza este imbunatatita printre noutati fiind:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;directiva TYPE &amp;ndash; care permite returnarea rezultatului generat de interogarea &lt;em&gt;FOR XML&lt;/em&gt; in formatul xml &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;directiva ELEMENTS pentru modul RAW &lt;span&gt;&amp;nbsp;&lt;/span&gt;- valoarea fiecarei coloane este mapata folosind un sub-element al elementului &amp;lt;row&amp;gt; (SQL Server 2000 folosind atribute) &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;specificarea unui nume pentru elementul &amp;lt;row&amp;gt; &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;suport pentru valorile NULL &amp;ndash; coloanele cu valori NULL pot genera &lt;em&gt;empty elements&lt;/em&gt; (elemente vide) cu atribututul &lt;em&gt;xsi:nil&lt;/em&gt; prin specificarea optiunii XSINIL&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;generare schema &amp;ndash; o data cu rezultatele interogarii se poate genera si o schema XSD pentru acestea folosind cuvantul cheie &lt;em&gt;XMLSCHEMA&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;modul PATH &amp;ndash; permite specificarea numelor coloanelor folosind sintaxa similara limbajului &lt;em&gt;XPATH&lt;/em&gt; pentru maparea valorilor generate in atribute, elemente etc.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemple:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;USE AdventureWorks;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;--exemplu directiva TYPE&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT ContactID AS Id_Contact, &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FirstName AS Prenume, LastName AS Nume&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM Person.Contact&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FOR XML AUTO, TYPE;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- exemplu directiva ELEMENTS&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT ProductModelID AS Id_Model, Name AS Nume&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM Production.ProductModel&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FOR XML RAW, ELEMENTS;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- specificare nume pentru &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- elementul &amp;lt;row&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT ProductModelID AS Id_Model, Name AS Nume&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM Production.ProductModel&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FOR XML RAW (&amp;#39;ProductModel&amp;#39;);&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- suport pentru valorile NULL &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT ProductID AS Id_Produs, Name AS Nume, Color AS Culoare&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM Production.Product&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FOR XML RAW, ELEMENTS XSINIL;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- modul PATH&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT ProductModelID AS &amp;quot;@Id_Produs&amp;quot;,&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Name AS Nume&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM Production.ProductModel&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FOR XML PATH;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Iar si iar despre baze de date de tip “snapshot”</title><link>http://sqlserver.ro/forums/thread/336.aspx</link><pubDate>Thu, 12 Oct 2006 11:40:49 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:336</guid><dc:creator>ggciubuc</dc:creator><slash:comments>5</slash:comments><comments>http://sqlserver.ro/forums/thread/336.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=336</wfw:commentRss><description>&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;Asa cum o si spune numele, o astfel
de baza de date creeaza o imagine instantanee, statica&lt;span&gt;&amp;nbsp; &lt;/span&gt;a unei baze de date utilizator (nu si de
sistem). Astfel ca incarcarea adusa de interogari intensive poate fi
echilibrata prin utilizarea acesteia.&lt;/p&gt;

&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;Tehnica pe care sistemul o
foloseste la redarea datelor are numele &amp;ldquo;copy-on-write&amp;rdquo;. Iata cum merg
lucrurile: initial sistemul construieste un schelet gol (un fisier &amp;ldquo;sparse&amp;rdquo;)
care face trimitere la paginile de date originale; pe masura ce paginile bazei
de date se modifica , ca urmare a unui update pe un tabel de exemplu , acestea
se copiaza in fisierul sparse astfel ca la o interogare a bazei de date
snapshot se pot folosi date de pe baza de date originala dar si din fisierul
&amp;ldquo;sparse.&amp;rdquo;.&lt;/p&gt;

&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;Iata cum arata comanda de creare a
unei astfel de baze de date :&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;&amp;nbsp;CREATE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; a_Snapshot1248 &lt;span style="color:blue;"&gt;ON&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:gray;"&gt;(&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;NAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;a&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:blue;"&gt;FILENAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt;N&lt;span style="color:red;"&gt;&amp;#39;D:\Microsoft Learning\2779\Teste\A_1248.ss&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;AS&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; SNAPSHOT &lt;span style="color:blue;"&gt;OF&lt;/span&gt; a&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;unde &amp;ldquo;a &amp;rdquo; este baza de date
originala , &amp;ldquo;D:\&amp;rdquo; este o partitie neaparat NTFS lansata numai pe o editie &amp;ldquo;Enterprise&amp;rdquo; a SQL 2005.&lt;/p&gt;

&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;Mai departe se poate pune problema
invers: pot reface baza de date a folosind un snapshot?&lt;/p&gt;

&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;Da, in comanda de restaurare se
prevede si o astfel de optiune. Inainte de a va prezenta un astfel de exemplu
mai fac un lucru, pentru a impusca 2 iepuri dintr-o data si anume adaug bazei
de date inca un fisier de log .&lt;/p&gt;



&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;Comanda &lt;span style="font-size:10pt;font-family:'Courier New';color:blue;"&gt;restore&lt;/span&gt;&lt;span style="font-size:10pt;font-family:'Courier New';"&gt; &lt;span style="color:blue;"&gt;database&lt;/span&gt; a &lt;span style="color:blue;"&gt;from&lt;/span&gt;
database_snapshot&lt;span style="color:gray;"&gt;=&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;a_Snapshot1248&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal" style="text-indent:0.5in;"&gt;reface baza de date &amp;ldquo;a&amp;rdquo; exact ca in
momentul crearii snapshot-ului, inlaturand si fisierul de log de adineaori.&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Database Snapshots</title><link>http://sqlserver.ro/forums/thread/341.aspx</link><pubDate>Thu, 12 Oct 2006 13:20:17 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:341</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/341.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=341</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Database Snapshots&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;strong&gt;Database Snapshots&lt;/strong&gt; ofera posibilitatea de a obtine rapid o imagine consistenta si read-only a unei baze de date.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Aceasta facilitate nu inlocuieste o strategie de backup/restore fiind un mecanism pentru protectie impotriva erorilor generate de aplicatii sau utilizatori.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Se poate folosi&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;pentru obtinerea unei baze de raportare&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;ca baza de test&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;ca metoda complementara de recuperare a datelor &lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;SQL 20005 foloseste un mecanism de tip&lt;span&gt;&amp;nbsp; &lt;/span&gt;copiere la scriere pentru a implementa un snapshot. Aceasta implementare a avut ca scop principal performanta deoarece la crearea unui snapshot exista doar unul sau mai multe fisiere goale iar paginile de date sunt copiate doar daca sunt modificate.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Cand o pagina este modificata pentru prima data in baza de date sursa , este copiata si in database snapshot-ul creat, iar modificarile ulterioare sunt ignorate.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;La citirea din database snapshot, paginile nemodificate vor fi citite din baza de date sursa iar paginile modificate vor fi citite din database snapshot.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Pentru crearea unui snapshot cu numele snapshot_name se foloseste sintaxa:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;CREATE DATABASE snapshot_name&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;ON&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;(&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;NAME=logical_file_name&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;FILENAME=&amp;#39;os_file_name&amp;#39;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;) [,...n]&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;AS SNAPSHOT OF source_database_name[;]&lt;/span&gt;&lt;/p&gt;</description></item><item><title>Imbunatatirea performantei cuburilor OLAP in Analysis Services 2000</title><link>http://sqlserver.ro/forums/thread/631.aspx</link><pubDate>Mon, 30 Oct 2006 11:23:35 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:631</guid><dc:creator>cubeman</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/631.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=631</wfw:commentRss><description>&amp;nbsp; &lt;p align="center" class="MsoNormal"&gt;&lt;strong&gt;&lt;font size="2"&gt;Imbunatatirea performantei cuburilor OLAP in Analysis Services 2000&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="center" class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Cind vorbim despre&lt;span&gt;&amp;nbsp; &lt;/span&gt;performanta cuburilor OLAP, ne referim in principal la urmatoarele 2 aspecte:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;1. Performanta la procesarea cuburilor &lt;/p&gt;&lt;p class="MsoNormal"&gt;2. Performanta la interogarea cuburilor de catre utilizatori.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;Pentru inceput, precizez ca exemplele din acest document au fost construite pe baza demonstrativa FoodMart livrata impreuna cu Analysis Services 2000.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;&lt;span&gt;1.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span&gt;Performanta la procesarea cuburilor&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Procesarea reprezinta procesul de alimentare a cuburilor OLAP pe baza de selecturi rulate pe baza de date relationala specificata in datasource-ul bazei de date. &lt;span&gt;&amp;nbsp;&lt;/span&gt;Trebuie precizat ca procesarea unui database / cube cu optiunile Full Process / Incremental Update are ca efect generarea unui folder &lt;em&gt;Shadow&lt;/em&gt; in care practic este generata o nou baza de date cu toate fisierele aferente, iar doar in momentul terminarii procesarii (&lt;em&gt;commit transaction&lt;/em&gt;), aceasta baza de date temporara inlocuieste baza de date originala. De-a lungul procesarii unui cub utilizatorii ramin conectati, fiind deconectati temporar doar in momentul in care se face commit transaction. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;In cadrul operatiunii de procesare sint rulati &lt;span&gt;&amp;nbsp;&lt;/span&gt;urmatorii pasi:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;a.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Procesarea dimensiunilor.&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;In momentul crearii fiecarei dimensiuni , in diagrama dimensiunii au fost adaugate una sau mai multe tabele, pe baza carora au fost create level-urile dimensiunii. Dimensiunile sint construite pe baza tabelelor de referentiale.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Spre exemplu, pentru popularea dimensiunii Store este rulat urmatorul select asupra bazei de date relationale.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;SELECT DISTINCT &amp;quot;store&amp;quot;.&amp;quot;store_country&amp;quot;, &amp;quot;store&amp;quot;.&amp;quot;store_state&amp;quot;, &amp;quot;store&amp;quot;.&amp;quot;store_city&amp;quot;, &amp;quot;store&amp;quot;.&amp;quot;store_id&amp;quot;, &amp;quot;store&amp;quot;.&amp;quot;store_name&amp;quot; FROM &amp;quot;store&amp;quot;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Operatiuni similare sint rulate asupra tuturor dimensiunilor bazei de date multidimensionale, scopul acestei operatiuni fiind acela de a repopula dimensiunile pe baza celor mai recente informatii provenind din baza de date relationala.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;b.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Procesarea Partitiilor&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;Datele fiecarui cub sint stocate in una sau mai multe partitii, care contin de fapt inregistrarile, stocate in format multidimensional, provenite din tabela de fapte a cubului.&lt;span&gt;&amp;nbsp; &lt;/span&gt;Dintre toti pasii executati la procesare, acest pas&lt;span&gt;&amp;nbsp; &lt;/span&gt;este, alaturi de procesarea modelelor de Data Mining ) , printre cele mai consumatoare din punctul de vedere al consumului de timp, intrucit tabelele de fapte pot contine milioane de inregistrari, numarindu-se printre tabelele cele mai mari existente la nivel de datawarehouse.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Urmatorul select a fost utilizat pentru popularea partitiei Budget_1997 a cubului Budget:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;SELECT &amp;quot;expense_fact&amp;quot;.&amp;quot;account_id&amp;quot;, &amp;quot;expense_fact&amp;quot;.&amp;quot;store_id&amp;quot;, &amp;quot;expense_fact&amp;quot;.&amp;quot;category_id&amp;quot;, &amp;quot;time_by_day&amp;quot;.&amp;quot;quarter&amp;quot;, &amp;quot;time_by_day&amp;quot;.&amp;quot;month_of_year&amp;quot;, &amp;quot;expense_fact&amp;quot;.&amp;quot;amount&amp;quot; FROM &amp;quot;expense_fact&amp;quot;, &amp;quot;time_by_day&amp;quot; WHERE (&amp;quot;time_by_day&amp;quot;.&amp;quot;the_year&amp;quot;=?) AND (&amp;quot;expense_fact&amp;quot;.&amp;quot;time_id&amp;quot;=&amp;quot;time_by_day&amp;quot;.&amp;quot;time_id&amp;quot;)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;c.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Procesarea Modelelor de Data Mining&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Pe baza inregistrarilor stocate in partitii, modelele de data mining sunt&amp;ldquo;antrenate&amp;rdquo; astfel incit sa corespunda modificarilor aparute la nivel de datawarehouse. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Supravegherea permanenta&lt;span&gt;&amp;nbsp;a &lt;/span&gt;performantei la procesare&lt;span&gt;&amp;nbsp; &lt;/span&gt;a cuburilor este una din atributiile deosebit de importante ale unui administrator OLAP, intrucit exista constringeri de timp foarte clar definite. Spre exemplu, daca importul la nivel de datawarehouse incepe la ora 01:00 AM si se termina la ora 04:00 AM, in intervalul&lt;span&gt;&amp;nbsp; &lt;/span&gt;04:00 AM&lt;span&gt;&amp;nbsp; &lt;/span&gt;- 07:30 AM toate cuburile trebuiesc procesate astfel incit, la ora 08:00 AM , atunci cind utilizatorii ajung la serviciu, toate cuburile sa fie updatate pe baza informatiilor din ziua precedenta.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Performanta la procesarea cuburilor depinde de urmatorii factori:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;I.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Setari existente la nivel de datawarehouse&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;a.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Una din optiunile extrem de importante care determina performanta la procesare este constituita de alegerea unui view sau a unei tabele ca si tabela de fapte a cubului.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;De regula se prefera alegerea unui view atunci cind informatiile necesare tabelei de fapte a unui cub provin din mai multe tabele de fapte, fiecare continind informatii diferite precum:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;i.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Vinzari&lt;span&gt;&amp;nbsp; &lt;/span&gt;de produse pe magazin&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;ii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Stoc de produse pe magazin&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;iii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Costuri de productie pentru fiecare produs&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In conditiile in care acest view este constituit din mai multe selecturi simple rulate pe fiecare dintre tabelele componente, utilizand clauza union, atunci selectul prezinta avantajul al economisirii spatiului pe disk, necesar stocarii tuturor acestor informatii.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Marele dezavantaj al folosirii view-ului pe post de tabela de fapte apare in momentul in care acesta este format din selecturi complexe, iar cubul al care foloseste aceasta tabela de fapte contine numeroase partitii. In aceste conditii, pentru procesarea fiecareia dintre partitii este necesara reconstruirea view-ului, operatiune care poate fi extrem de costisitoare ca si timp.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;b.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;In conditiile cuburilor partitionate si a utilizarii view-urilor ca si tabele de fapte ale cuburilor, se recomanda utilizarea de constrangeri pentru fiecare dintre tabelele implicate in view. Spre exemplu, daca partitiile dintr-un cub sint create utilizind criteriile&lt;span&gt;&amp;nbsp; &lt;/span&gt;Business Unit &amp;amp; Time Civil,&lt;span&gt;&amp;nbsp; &lt;/span&gt;este recomandabil ca pentru fiecare pereche Business Unit &amp;amp; Time Civil sa existe cite o tabela. In conditiile in care pentru fiecare tabela au fost definite constringeri pe aceste 2 cimpuri (ex. BUSINESS_UNIT &amp;amp; ACCOUNTING_DATE), la procesarea fiecareia dintre partitii, desi este folosit un view ca tabela de fapte, selectul propriu-zis va fi rulat doar pe tabela care indeplineste conditiile precizate mai sus, imbunatatind dramatic timpul de procesare, mai ales in cazul view-urilor care contin milioane de inregistrari.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;c.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Definirea de indecsi clustered la nivel de tabela de fapte, pentru cimpurile pentru care sint definite partitiile, intrucit aceste filtre vor fi folosite simultan la procesarea partitiilor.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;d.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Utilizarea de indecsi simpli pentru toate cimpurile de tip foreign key din tabela de fapte, intrucit aceste cimpuri sint&lt;span&gt;&amp;nbsp; &lt;/span&gt;utilizate pentru realizarea legaturii cu &lt;span&gt;&amp;nbsp;&lt;/span&gt;tabelele de referentiale.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;&lt;span&gt;II.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Setari existente la nivel de Analysis Services&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;&lt;span&gt;a.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Modul de procesare al cuburilor&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Problema unui administrator OLAP este aceea de a decide, in functie de modalitatea de&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;desfasurare a activitatii companiei si de modficarile tehnice asupra cuburilor, pentru una din cele 3 modalitati de procesare:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;i.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Incremental update &amp;ndash; sint aduse in cub doar noile inregistrari aparute la nivel de datawarehouse, fara reprocesarea agregarilor. Aceasta modalitate de procesare&lt;span&gt;&amp;nbsp; &lt;/span&gt;este cea mai rapida insa nu poate fi folosita decit in conditiile in care modificarile la nivel de datawarehouse constau doar in adaugarea de noi inregistrari, fara modificarea celor existente.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;ii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Refresh data &amp;ndash; repopuleaza tot cubul iar agregarile sint recalculate. In toata aceasta perioada utilizatorii pot interoga insa, ca si viteza de procesare, aceasta modalitate de procesare este mai lenta decit incremental update si nu poate fi folosita in cazul modificarilor de structura la nivelul cubului.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;iii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Full Process &amp;ndash; necesara in conditiile modificari structurii cubului sau a dimensiunilor. Utilizatorii pot accesa noile date doar dupa reconectarea la cub.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;&lt;span&gt;b.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Modul de procesare al dimensiunilor&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;i.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Incremental Update &amp;ndash; deosebit de utila in cazul in care in dimensiuni apar doar noi elemente, fara a fi efectuate modificari asupra elementelor existente. Spre exemplu, daca dimensiunea Products contine 10.000 de membrii si in urma importului din datawarehouse au aparut 100 de noi produse, atunci dimensiunii existente I se vor adauga doar aceste noi produse, fara a se efectua modificari asupra datelor existente. Procesarea unei dimensiuni cu Incremental Update nu atrage in mod obligatoriu si reprocesarea cubului.&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;-&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Acest tip de procesare nu poate fi totusi aplicat, spre exemplu ,in cazul in care in dimensiunea Products, pe linga noile produse adaugate s-au modificat descrieri ale produselor existente, in acest caz fiind obtinuta o eroare la procesarea dimensiunii.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;-&lt;span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;In cadrul procesarii Incrementale, agregarile existente la nivel de cub nu sint recalculate. Agregarile reprezinta totaluri precalculate, care contin valoarea intersectiei mai multor membrii ai unei dimensiuni. In momentul in care un utilizator lanseaza o interogare asupra cubului, mai intai se incearca indentificarea unei agregari existente pentru acea solicitare, iar daca acea agregare nu exista, atunci sistemul va trebui sa calculeze in momentul executiei valoarea corespunzatoare intersectiei de dimensiuni specificata de utilizator.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;ii.&amp;nbsp;&amp;nbsp;&amp;nbsp;Rebuild dimension structure&lt;span&gt;&amp;nbsp; &lt;/span&gt;- aceasta optiune permite repopularea completa a unei dimensiuni, oferind si avantajul recalcularii agregarilor. Se recomanda ca aceasta optiune sa fie utilizata in cazul unor modificari dese la nivel de datawarehouse, constind atit in adaugarea de noi date cit si in modificarea celor existente, sau la modificarea structurii dimensiunii.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Aceasta metoda de procesare este cea mai sigura, insa prezinta dezavantajul major al faptului ca dupa o astfel de procesare, toate cuburile care contin acea dimensiune sint invalidate, trebuind reprocesate cu Full Process. In toate aceasta perioada utilizatorii NU se mai pot conecta la cuburile afectate.&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;&lt;span&gt;&lt;span&gt;2.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span&gt;Performanta la interogarea cuburilor de catre utilizatori.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;a. Definirea de partitii adecvate criteriilor de selectie ale utilizatorilor&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Rolul partitiilor in performanta la interogare a cuburilor devine evident daca ne gindim la modul in care utilizatorii acceseaza datele din cuburile OLAP. Spre exemplu, pentru o companie multinationala, cu mai multe business locations distribuite in intreaga lume, cei care acceseaza datele sint controlori de gestiune. Accesele acestora sint date de regula doar pentru o anumita locatie geografica (ex. Romania), doar pentru utilizatorii din HeadQuarters fiind definite accese pe toate locatiile geografice (sau locatii de business &amp;ndash; Business Units).&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In cazul unul cub care are doar o singura partitie, orice select dat de un utilizator va avea ca rezultat parcurgerea de milioane de inregistrari, intrucit ,chiar daca cunosc de la inceput pentru ce business unit si ce perioada fiscala caut datele, sistemul nu are nici o modalitate de a individualiza inregistrarile respective fara a efectua o cautare prin toate inregistrarile cuprinse in partitia respectiva.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In conditiile in care avem partitii definite la nivel de an fiscal si de business unit, sistemul va identifica cu exactitate, in functie de selectul lansat de utilizator si de drepturile acestuia, care este partitia care trebuie interogata, restrangand&lt;span&gt;&amp;nbsp;&lt;/span&gt;astfel nr. de inregistrari care trebuie parcurse pentru a raspunde solicitarii utilizatorului.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;b. Aggregation design-ul definit la nivel de partitii&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Agregarile reprezinta unul din factorii esentiali care determina performanta la interogare a unui cub, intrucit contin stocate totaluri precalculate pentru intersectiile de dimensiuni. Totusi, calcularea agregarilor are ca efect atit cresterea timpului de procesare al cubului cit si a nevoilor de spatiu de stocare. Rolul administratorului OLAP este acela de a gasi un echilibru intre nevoile de sporire a performantei la interogare a cubului si necesitatea ca timpul de procesare al unui cub sa se incadreze in constringerile de timp definite.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In conditii normale de exploatare a cuburilor, pe masura ce volumul de date existent la nivel de datawarehouse creste, creste si timpul necesar pentru atingerea aceluiasi nr. de agregari pentru fiecare partitie in parte. Pentru prevenirea degradarii performantei la procesare, se recomanda dezvoltarea unei strategii axata pe urmatorul scenariu standard:&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Utilizatorii acceseaza cel mai frecvent date pentru anul fiscal curent &amp;amp; anul fiscal precedent, de regula avind drepturi de access doar pe anumite companii. In aceste conditii, este nevoie de un timp de raspuns foarte bun pentru cele doua perioade fiscale, intrucit acestea sint cel mai frecvent accesate, ceea ce inseamna un nr. Sporit de agregari. Pentru celelalte perioade fiscale, care sint mai rar accesate, se poate recurge la reducerea nr. de agregari.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Toata aceasta strategie are ca scop mentinerea sub control a timpului de procesare, in conditiile inbunatatirii timpului de raspuns pentru cele mai frecvente interogari ale utilizatorilor. Trebuie precizat faptul ca o astfel de strategie nu poate fi aplicata decit cuburilor partitionate, cel putin la nivel de perioada fiscala, intrucit acesta este de regula cel mai frecvent criteriu de selectie al utilizatorilor.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;strong&gt;c. Servere OLAP Regionale&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In conditiile existentei unei companii multinationale, exista mai multe locatii de unde utilizatorii se conecteaza la cuburile OLAP. Spre exemplu, daca server-ul de DataWarehouse si serverul OLAP se afla in SUA, iar numerosi utilizatori utilizatori din Europa se conecteaza la aceste cuburi OLAP, este evident ca utilizatorii din America de Nord vor fi favorizati datorita unei viteze de comunicare superioare fata de cea de care beneficiaza utilizatorii din Europa.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In astfel de situatii este recomandata utilizarea de servere OLAP regionale, care sa aduca sursa de date mai aproape de utilizatori.Astfel, un server OLAP regional in Europa rezolva, pentru utilizatorii de pe continent, problema constituita de o slaba conexiune de retea intre Europa si SUA. Cuburile vor fi procesate in fiecare noapte pe serverul OLAP de productie din SUA si replicate dupa aceea pe serverul &lt;span&gt;&amp;nbsp;&lt;/span&gt;regional din Europa, urmind ca utilizatorii din fiecare locatie geografica sa se conecteze la serverul cel mai apropiat, imbunatatind astfel radical timpul de raspuns la interogare.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;In speranta ca aceste informatii va vor fi de folos , inchei aici prezentarea legata de Imbunatatirea performantei cuburilor OLAP in Analysis Services 2000. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Spor la treaba.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Guse Nicolae&lt;/p&gt;&lt;p class="MsoNormal"&gt;Business Intelligence Engineer&lt;/p&gt;&lt;p class="MsoNormal"&gt;Ubisoft&lt;/p&gt;</description></item><item><title>Instalarea si Configurarea Analysis Services 2000</title><link>http://sqlserver.ro/forums/thread/630.aspx</link><pubDate>Mon, 30 Oct 2006 11:22:27 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:630</guid><dc:creator>cubeman</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/630.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=630</wfw:commentRss><description>&amp;nbsp; &lt;p align="center" class="MsoNormal"&gt;&lt;font size="4"&gt;Instalarea si Configurarea Analysis Services 2000&lt;/font&gt;&lt;/p&gt;&lt;p align="center" class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Analysis Services reprezinta solutia OLAP cu care Microsoft a patruns pe piata Business Intelligence. Aventura companiei in domeniu incepe in anul 1996 odata cu achizitionarea tehnologiei Panorama Online Analytical Processing, dezvoltata de compania israeliana Panorama Software.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Prima implementare a unei solutii OLAP intr-un produs Microsoft incepe cu OLAP services, integrat pentru prima data in Sql Server 7.0. Incepind cu Sql Server 2000 produsul a fost redenumit in Analysis Services iar functionalitatea sa mult extinsa. Compania a acordat deosebita atentie acestui produs , facind parte dintr-o strategie de a adduce Business Intelligence mai aproape de utilizatorii finali, acestia platind doar pretul unei licente sql server. Tocmai aceasta integrare cu sql server a avut ca rezultat ascensiunea rapida a Microsoft in domeniul Business Intelligence, la capitolul Market Share devenind lider incepind cu anul 2002 si depasind concurenti de marca precum Hyperion, Cognos sau Business Objects.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Pentru detalii suplimentare puteti consulta:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a href="http://www.olapreport.com/market.htm"&gt;http://www.olapreport.com/market.htm&lt;/a&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;I.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Versiuni Analysis Services&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;In prezent , exista mai multe versiuni de Analysis Services, strins legate de distributiile Sql Server aflate pe piata:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;a.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Analysis Services 32 bit&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;b.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Analysis Services 64 bit&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;Posibilitatile de a instala una din cele 2 versiuni sint strins legate de versiunea de server folosita. Spre exemplu , Analysis Services 64 bit nu poate fi instalat pe sisteme de operare precum Windows 2000 Server , Windows 2000 Advanced Server si Windows 2000 Datacenter, intrucit acestea sint sisteme de operare pe 32 de biti. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Limitarile Analysis Services 32 bit sint legate in primul rind de cantitatea de memorie fizica care poate fi adresata. Sub Windows 2000 Server AS2000 nu poate adresa mai mult de 2 GB de memorie fizica. Pentru depasirea acestei limitari, este necesara activarea switch-ului /3G in boot.ini, care permite AS2000 sa foloseasca pina la 3 GB de memorie RAM. Totusi, pentru activarea acestei optiuni este necesar ca sistemul de operare sa fie minim Windows 2000 Advanced. Aceasta limitare a AS2000 32 bit este datorata faptului ca acesta nu suporta Address Windowing Extensions (AWE), in ciuda faptului ca Sql Server 32 bit cu care produsul AS este integrat suporta AWE.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Este evident ca aceasta limitare impiedica folosirea AS2000 in varianta 32 bit pentru implementarea de solutii complexe, in care dimensiunea cuburilor&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;OLAP pot fi de ordinul GB. Pentru aceste cazuri este necesara utilizarea Analysis Services 64 bit impreuna cu urmatoarele sisteme de operare:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;c.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Windows Server 2003 Enterprise Edition 64 bit version -&amp;gt; permite adresarea pina a 64 GB de memorie fizica.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;d.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Windows Server 2003 Datacenter Edition 64 bit version -&amp;gt; permite adresarea pina a 512 GB de memorie fizica.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;Pentru detalii suplimentare puteti consulta:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a href="http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/anservog.mspx"&gt;http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/anservog.mspx&lt;strong&gt;&lt;span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span&gt;II.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;Tips &amp;amp; Tricks la instalarea AS 2000&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;a.&amp;nbsp;&amp;nbsp; &lt;/span&gt;Procesarea si interogarea cuburilor OLAP sint procese mari consumatoare de resurse. Din aceste considerente, precum si datorita limitarilor AS2000 in varianta 32 de bit in exploatarea memoriei disponobile, este recomandabila separarea serverului de datawarehouse de&lt;span&gt;&amp;nbsp; &lt;/span&gt;serverul OLAP. Aceasta separare va avea ca effect imbunatatirea timpului de procesare precum si reducerea timpului de rapsuns la interogarea cuburilor.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;b.&amp;nbsp;&amp;nbsp; &lt;/span&gt;Din considerente de siguranta a datelor, este recomandata instalarea Data folder-ului din Analysis Services pe o partitie separate de aceea pe care este stocat sistemul de operare.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;c.&amp;nbsp;&amp;nbsp; &lt;/span&gt;Configurarea corecta a memoriei in AS2000 este un factor extrem de important in determinarea performantei serverului OLAP. Urmatorii parametrii sint folositi pentru configurarea memoriei in AS:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;i.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Memory conservation threshold -&amp;gt; reprezinta cantitatea maxima de memorie alocata AS&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;ii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Minimum allocated memory -&amp;gt; reprezinta cantitatea minima de memorie alocata AS&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;iii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Process buffer -&amp;gt; cantitatea de memorie utilizata la procesarea cuburilor / dimensiunilor&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Un element important in gestionarea memoriei il constituie procesul cache cleaner, care incepe sa actioneze in momentul in care memoria ocupata de AS ajunge la jumatatea distantei intre minimum alocated memory si memory conservation threshold (middle point), eliminind din memoriile datele tinute in cache cele mai infrecvent folosite. &lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;Middle Point = (Memory Conservation Threshold &amp;ndash; Minimum allocated memory) / 2 +&lt;span&gt;&amp;nbsp; &lt;/span&gt;Minimum allocated memory&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;/span&gt;In momentul in care cantitatea de memorie folosita de AS depaseste cu 6.25% valoarea Memory conservation threshold, cache cleaner-ul actioneaza agresiv golind toate inregistrarile din cache ,pentru a preveni cazul in care serverul olap ar ramane fara memorie disponibila. O setare corecta a memoriei tb. Sa asigure un echilibru intre necesarul de memorie pentru functionarea normala as serverului OLAP si cantitatea de cache necesara pentru un bun timp de raspuns la interogarile utilizatorilor.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Pentru functionarea corecta a serverului OLAP este absolut necesar ca AS sa poata aloca, in orice moment, cel putin&lt;span&gt;&amp;nbsp; &lt;/span&gt;cantitatea cantitatea minima de memorie, in caz contrar aparind memory leaks. Acesta este si unul din motivele pentru care se recomanda separarea arhitecturii de datawarehouse de cea de Analysis Services pe servere diferite.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;d.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Pentru stocarea tuturor obiectelor disponibile in instanta curenta analysis services:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;i.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Server&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;1&lt;span&gt;.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Database&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;a.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Cubes&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;i.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Dimensions&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal"&gt;&lt;span&gt;1.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Levels&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;ii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Measures&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;iii.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Roles&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Este utilizat Analysis Services repository. By default, acest repository este stocata intr-o baza de date MS Access , in fisierul &lt;strong&gt;msmdrep.mdb&lt;/strong&gt;. Aceasta baza de date contine urmatoarele tabele:&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;I.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Server -&amp;gt; contine informatii referitoare la versiunea de Analysis Services curent instalata&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;II.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;OlapObjects -&amp;gt; contine layer-ul de metadata pentru toate obiectele mentionate mai sus, descrierea acestor obiecte fiind disponibila intr-un string XML.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Orice solicitare de consultare a unui obiect stocat pe serverul MS OLAP avea ca efect interogarea bazei de date repository. Aceasta baza de date este consultata insa in mod diferit de catre :&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;I.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Administratori OLAP&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;II.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Utilizatori&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Administratorii OLAP se conecteaza prin Interfata Analysis Manager, accesind baza de date in mod read / write.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Utilizatorii se conecteaza la serverul OLAP utilizind, de regula, urmatoarele tipuri de aplicatii :&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;I.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Pivot table service din Microsoft Excel&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;II.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Aplicatii de browsing a cuburilor OLAP bazate pe Microsoft Office Web Components&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;III.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Aplicatii specializate de browsing OLAP dezvoltate pe tehnologii proprietare de cate Business Objects, Cognos, etc.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Din orice aplicatie s-ar conecta acestia, accesul lor la datele din repository este strict de tip read.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Una dintre problemele tipice care apar in exploatarea Serverului Analysis Services o constituie posibilitatea de corupere a bazei de date repository, care devine susceptibila la corupere in conditiile in care un Administrator OLAP se conecteaza prin interfata Analysis Manager de pe statia locala catre serverul OLAP, iar in acest timp survin probleme de retea. Din aceste motive este recomandata programarea de operatiuni de back-up zilnice pentru baza de date access &lt;strong&gt;msmdrep.mdb&lt;/strong&gt;.&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;e.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;In Analysis Services 2000 exista posibilitatea migrarii repository-ului pe o baza de date sql server. Aceasta operatiune va avea ca efect modificarea string-ului de conectare la server, respectiv inlocuirea provider-ului Microsoft.Jet.OLEDB.4.0 cu providerul SQLOLEDB.1si pointarea catre noua baza de date. In acest fel, noua baza de date poate fi inclusa in maintenace plan-urile definite la nivel de server de baze de date.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" dir="ltr"&gt;Din pacate,&lt;span&gt;&amp;nbsp; &lt;/span&gt;migrarea repository-ului din baza de date access catre sql server nu rezolva toate problemele legate de repository. Ca urmare a unui bug intern Analysis Services, la un anumit numar de operatiuni de arhivare / restaurare de cuburi olap pe un server al carui repository este migrat pe Sql Server, tabela Server din repository este golita si este obtinuta eroarea &amp;quot;Either BOF or EOF is True, or the current record has been deleted.&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;823871"&gt;http://support.microsoft.com/default.aspx?scid=kb;en-us;823871&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;blockquote dir="ltr" dir="ltr"&gt;&lt;p class="MsoNormal" dir="ltr"&gt;&lt;span&gt;f.&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;Instalarea celei mai recente versiuni de service pack pentru Analysis Services. Cea mai recenta versiune este Service Pack 4, care rezolva o parte din problemele care au fost raportate de-a lungul timpului pentru Analysis Services 2000.&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;Pentru detalii suplimentare puteti consulta:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a href="http://support.microsoft.com/?kbid=888800"&gt;http://support.microsoft.com/?kbid=888800&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;In speranta ca aceste informatii va vor fi de folos , inchei aici prezentarea legata de Instalarea si Configurarea Analysis Services 2000. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Spor la treaba.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Guse Nicolae&lt;/p&gt;&lt;p class="MsoNormal"&gt;Business Intelligence Engineer&lt;/p&gt;&lt;p class="MsoNormal"&gt;Ubisoft&lt;/p&gt;</description></item><item><title>Pregatirea unui document XML pentru obiectul XmlDataSource</title><link>http://sqlserver.ro/forums/thread/442.aspx</link><pubDate>Thu, 19 Oct 2006 10:17:44 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:442</guid><dc:creator>ggciubuc</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/442.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=442</wfw:commentRss><description>&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Pregatirea
unui document XML pentru obiectul XmlDataSource din VisualStudio 2005&lt;/p&gt;



&lt;p class="MsoNormal"&gt;A trebuit candva sa pregatesc un document XML pentru a fi
inteles de un obiect &amp;ldquo;XmlDataSource&amp;rdquo; . Finalitatea insemna ca datele ce erau
prezentate intr-un GridView sa arate ca si cum ar fi provenit de la un tabel
normal (cu cap de tabel etc). Iata pasii urmati :&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Intr-o fereastra de query a Management Studio lansez
urmatoarea comanda, rezultatul salvandu-se in fisierul Angajat.xml&lt;/p&gt;





&lt;p class="MsoNormal"&gt;select * from(tblAngajati)&lt;/p&gt;

&lt;p class="MsoNormal"&gt;for xml auto, root (&amp;#39;Angajati&amp;#39;)&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Datele care apar in documentul xml sunt de felul urmator:&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;lt;Angajati&amp;gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&amp;#39;&amp;lt;tblAngajati IDAngajat=&amp;quot;1&amp;quot; &amp;quot; Nume=&amp;quot;Ionescu&amp;quot;
DataAngajare=&amp;quot;2006-01-05T00:00:00&amp;quot; /&amp;gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&amp;#39;&amp;lt;tblAngajati IDAngajat=&amp;quot;2&amp;quot; Nume=&amp;quot;Popescu&amp;quot;
DataAngajare =&amp;quot;2006-05-15T00:00:00&amp;quot; /&amp;gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&amp;hellip;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&amp;lt;/Angajati&amp;gt;&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&amp;nbsp;Dupa care n-ai decat sa setezi obiectul XmldataSource in
cadrul proiectului Visual Studio:&lt;/p&gt;



&lt;p class="MsoNormal"&gt;&amp;nbsp;XmlDataSource2.XPath = String.Format( _&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&amp;quot;/Angajati/[@IDDepartament=&amp;quot; &amp;amp; GridView1.SelectedValue
&amp;amp; &amp;quot;]&amp;quot;)&lt;/p&gt;GridView2.DataBind()</description></item><item><title>Tipul de date XML</title><link>http://sqlserver.ro/forums/thread/428.aspx</link><pubDate>Thu, 19 Oct 2006 07:54:03 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:428</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/428.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=428</wfw:commentRss><description>&lt;p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;strong&gt;Tipul de Date XML&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Un tip nou de date suportat de SQL Server 2005 este tipul de date &lt;em&gt;xml&lt;/em&gt;. Tipul de date &lt;em&gt;xml&lt;/em&gt; permite stocarea de documente in format xml sau fragmente de documente xml avand o dimensiune de pana la 2GB. Se pot declara variabile de tip &lt;em&gt;xml&lt;/em&gt;, se pot defini tabele cu coloane de acest tip sau se pot folosi parametrii de tip &lt;em&gt;xml&lt;/em&gt;. Optional se poate asocia o schema pentru a valida o instanta a tipului &lt;em&gt;xml&lt;/em&gt;, schema putand fi stocata in baza de date.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Pentru stocarea tipului de date &lt;em&gt;xml&lt;/em&gt; se foloseste modelul InfoSet (in care ordinea atributelor, spatiile nesemnificative, prefixele spatiilor de nume si declaratia XML nu este pastrata). Astfel in urmatorul exemplu variabilele x si y sunt echivalente din punct de vedere al modelului InfoSet insa distincte lexical.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Exemplu:&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;declare @x xml&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;declare @y xml&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;set @x = &amp;#39;&amp;lt;document nume=&amp;quot;document xml&amp;quot;&amp;gt;&amp;lt;/document&amp;gt;&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;set @y = &amp;#39;&amp;lt;document nume=&amp;quot;document xml&amp;quot;/&amp;gt;&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;select @x,@y&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Doua instante &lt;em&gt;xml&lt;/em&gt; nu pot fi comparate direct (insa poate fi convertit la un alt tip de date ca de exemplu varchar pentru a putea fi comparate). Din acest motiv nu putem defini o cheie primara sau unica pe o coloana de tip &lt;em&gt;xml&lt;/em&gt;, nu putem defini o constrangere clasica sau folosi un index clasic pentru acest tip de date.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Pentru a interoga eficient tipul de date &lt;em&gt;xml&lt;/em&gt; se foloseste limbajul integrat &lt;em&gt;XQUERY&lt;/em&gt; si se pot defini indecsi XML (diferiti de cei clasici &amp;ndash; permitand o interogare eficienta in cadrul unei instante si nu a unui set). &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Pentru modificarea datelor se foloseste instructiunea &lt;em&gt;modify&lt;/em&gt; - o extensie a limbajului &lt;em&gt;XQUERY&lt;/em&gt;. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Observatii:&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;desi se pot stoca fragmente de documente &lt;em&gt;xml&lt;/em&gt; acestea trebuie sa fie &amp;bdquo;bine formate&amp;rdquo;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;se pot defini constrangeri pe o coloana tip &lt;em&gt;xml&lt;/em&gt; folosind functii&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;se poate defini un index full-text pe o coloana tip &lt;em&gt;xml&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;se pot asocia o valoare implicita pentru o coloana de tip &lt;em&gt;xml&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;</description></item><item><title>Suport pentru XML  Schema (XSD)</title><link>http://sqlserver.ro/forums/thread/433.aspx</link><pubDate>Thu, 19 Oct 2006 07:58:25 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:433</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/433.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=433</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Suport pentru XML&lt;span&gt;&amp;nbsp; &lt;/span&gt;Schema (XSD)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Pentru a valida o instanta a tipului de date xml (o variabila sau o coloana de tip xml) pot fi folosite scheme XML. Schemele XML sunt inregistrate ca obiecte ale bazei de date prin intermediul unor colectii de scheme (fiecare definind un spatiu de nume) create cu instructiunea &lt;em&gt;CREATE XML SCHEMA COLLECTION&lt;/em&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Pentru modificarea sau stergerea unei colectii se folosesc instructiunile ALTER XML SCHEMA COLLECTION si respectiv DROP XML SCHEMA COLLECTION. Cuvinte cheie &lt;em&gt;CONTENT&lt;/em&gt; sau &lt;em&gt;DOCUMENT&lt;/em&gt; limiteaza valoarea stocata intr-o instanta la fragmente valide sau la o instanta a unui document (valoarea implicita este &lt;em&gt;CONTENT&lt;/em&gt;).&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemplu:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- creare colectie&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;CREATE XML SCHEMA COLLECTION ExempluColectie AS &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;#39;&amp;lt;schema xmlns=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&amp;lt;element name=&amp;quot;root&amp;quot; type=&amp;quot;string&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;/schema&amp;gt;&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- exemplu tabel&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;CREATE TABLE ExempluTabel (ID int,Coloana1 XML (ExempluColectie))&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- declarare variabila tip XML&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;DECLARE @v XML (DOCUMENT ExempluColectie)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- atribuire valoare&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET @v = &amp;#39;&amp;lt;root&amp;gt;&amp;lt;/root&amp;gt;&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- urmatoarea atribuire va esua &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET @v = &amp;#39;&amp;lt;radacina&amp;gt;&amp;lt;/radacina&amp;gt;&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>XQUERY</title><link>http://sqlserver.ro/forums/thread/429.aspx</link><pubDate>Thu, 19 Oct 2006 07:56:01 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:429</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/429.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=429</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;XQUERY&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;em&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;XPATH&lt;/span&gt;&lt;/em&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt; este un limbaj de interogare a documentelor XML, o interogare returnand un set de date continand noduri sau valori scalare. Datorita limitarilor &lt;em&gt;XPATH&lt;/em&gt; in cazul procesarii unor cantitati mari de date sau in cazul surselor de date multiple a fost dezvoltat limbajul &lt;em&gt;XQUERY&lt;/em&gt; care extinde &lt;em&gt;XPATH 2.0&lt;/em&gt; si preia si functionalitati din &lt;em&gt;XSLT&lt;/em&gt; (XSL Transformations &amp;ndash; limbaj folosit pentru transformari ale documentelor XML). &lt;em&gt;XQUERY&lt;/em&gt; permite interogari care includ documente multiple si este integrat in &lt;em&gt;database engine&lt;/em&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;O interogare &lt;em&gt;XQUERY&lt;/em&gt; consta in doua sectiuni principale:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;sectiunea &lt;em&gt;prolog&lt;/em&gt; &amp;ndash; optionala, folosita pentru declaratii (declararea spatiilor de nume, declararea schemelor)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;sectiunea&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;em&gt;body&lt;/em&gt; (corpul interogarii) &amp;ndash; interogarea propriu-zisa in care expresii &lt;em&gt;XQUERY&lt;/em&gt; sunt folosite pentru a specifica datele ce vor fi returnate&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;O expresie &lt;em&gt;XQUERY&lt;/em&gt; utilizeaza o cale &lt;em&gt;XQUERY&lt;/em&gt; (bazata pe limbajul &lt;em&gt;XPATH&lt;/em&gt;) pentru localizarea unui nod intr-un document xml. O cale &lt;em&gt;XQUERY&lt;/em&gt; poate fi absoluta (locatia unui nod este decrisa fata de elementul &lt;em&gt;root&lt;/em&gt;) sau relativa (fata de un nod identificat).&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemple:&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:8pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;/magazin/carte&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt; - toate elementele carte continute de elementul magazin &lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:8pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;/magazin/carte[1]&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt; &amp;ndash; primul element carte continut de elementul magazin&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemplele se bazeaza pe un document xml salvat cu numele Books.xml in directorul radacina a drive-ului C: (pentru a fi mai usor de referit).&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Books.xml&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; ?&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;magazin&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;carte categorie=&amp;quot;SQL&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;titlu&amp;gt;Functionalitati Noi In SQL Server 2005&amp;lt;/titlu&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;autori&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;autor&amp;gt;Narcis Ditiu&amp;lt;/autor&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;autor&amp;gt;Cristian Lefter&amp;lt;/autor&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;autor&amp;gt;Adrian Stoian&amp;lt;/autor&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;/autori&amp;gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;an&amp;gt;2005&amp;lt;/an&amp;gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;/carte&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;carte categorie=&amp;quot;Programare&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;titlu&amp;gt;Beginning ASP.NET 2.0 E-Commerce in C# 2005&amp;lt;/titlu&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;autori&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&amp;lt;autor&amp;gt;Cristian Darie&amp;lt;/autor&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;/autori&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;an&amp;gt;2005&amp;lt;/an&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;/carte&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;/magazin&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Specificatiile limbajului XQUERY includ instructiunile &lt;em&gt;for&lt;/em&gt;, &lt;em&gt;let&lt;/em&gt;, &lt;em&gt;order by&lt;/em&gt;, &lt;em&gt;where&lt;/em&gt; si &lt;em&gt;return&lt;/em&gt; (cunoscute sub numele de &lt;em&gt;Instructiuni FLOWR&lt;/em&gt; &amp;ndash; pronuntat &lt;em&gt;flower&lt;/em&gt;). Instructiunile &lt;em&gt;FLOWR&lt;/em&gt; sunt similare cu &lt;em&gt;SELECT&lt;/em&gt;-&lt;em&gt;FROM&lt;/em&gt;-&lt;em&gt;WHERE&lt;/em&gt; in T-SQL. Pentru exemplificare urmatorul exemplu incarca in variabila &lt;em&gt;doc&lt;/em&gt; documentul &lt;em&gt;Books.xml&lt;/em&gt; si returneaza toate titlurile cartilor publicate in anul 2005 ordonate dupa titlul acestora.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemplu:&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt; &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;let $doc := doc(&amp;#39;file:///c:/Books.xml&amp;#39;)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;for $a in $doc//magazin/carte&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;where $a/an = &amp;#39;2005&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;order by $a/titlu&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;return $a/titlu&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Rezultat:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;titlu&amp;gt;Beginning ASP.NET 2.0 E-Commerce in C# 2005&amp;lt;/titlu&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&amp;lt;titlu&amp;gt;Functionalitati Noi In SQL Server 2005&amp;lt;/titlu&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;SQL Server 2005 suporta un subset al limbajului &lt;em&gt;XQUERY&lt;/em&gt; pentru a permite interogari ale datelor de tip xml. Tipul de date xml expune urmatoarele metode:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;query() &amp;ndash; pentru a interoga o instanta a tipului de date xml&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;value() &amp;ndash; pentru a returna o valoare scalara avand un tip de date SQL&lt;span&gt;&amp;nbsp; &lt;/span&gt;(int, varchar etc)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;exists() &amp;ndash; determina existenta rezultatelor pentru o expresie &lt;em&gt;XQUERY&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;modify() &amp;ndash; folosita pentru modificari &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;nodes() &amp;ndash; folosita pentru a genera un set de randuri dintr-un document xml&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemple:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- declarare si setare variabila tip xml&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;DECLARE @myDoc XML&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT&lt;span&gt;&amp;nbsp; &lt;/span&gt;@myDoc = BulkColumn &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM OPENROWSET( Bulk &amp;#39;C:\Books.xml&amp;#39;, SINGLE_BLOB ) AS x &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- interogare folosind metoda query&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT @myDoc.query(&amp;#39;for $a in /magazin/carte&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;where $a/an = &amp;quot;2005&amp;quot;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;order by $a/@categorie&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;return $a/titlu&amp;#39;)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- returneaza valoarea atributului categorie &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- pentru prima carte&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- respectiv valoarea &amp;quot;SQL&amp;quot;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;DECLARE @Categorie VARCHAR(64)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET @Categorie =&lt;span&gt;&amp;nbsp; &lt;/span&gt;@myDoc.value(&amp;#39;(/magazin/carte/@categorie)[1]&amp;#39;, &amp;#39;varchar(64)&amp;#39; )&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT @Categorie&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>XML Data Manipulation Language</title><link>http://sqlserver.ro/forums/thread/431.aspx</link><pubDate>Thu, 19 Oct 2006 07:56:49 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:431</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/431.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=431</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;XML Data Manipulation Language&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Limbajul &lt;em&gt;XQUERY&lt;/em&gt; nu permite modificarea documentelor xml, pentru modificari folosindu-se o extensie a &lt;em&gt;XQUERY&lt;/em&gt; &amp;ndash; &lt;em&gt;XML DML&lt;/em&gt; (XML Data Manipulation Language).&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Concret&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;em&gt;XML DML&lt;/em&gt; extinde &lt;em&gt;XQUERY&lt;/em&gt; cu urmatoarele instructiuni: &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;insert &amp;ndash; pentru adaugare&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;delete &amp;ndash; pentru stergere&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt 0.25in;text-indent:-0.25in;tab-stops:list .25in;"&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&amp;sect;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;replace value of &amp;ndash; pentru modificare&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Instructiunile se pot folosi prin intermediul metodei &lt;em&gt;modify&lt;/em&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemplu:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- declarare si setare variabila tip xml&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;DECLARE @myDoc XML&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT&lt;span&gt;&amp;nbsp; &lt;/span&gt;@myDoc = BulkColumn &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;FROM OPENROWSET( Bulk &amp;#39;C:\Books.xml&amp;#39;, SINGLE_BLOB ) AS x &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- insereaza un element autor pentru al doilea&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- element carte&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET @myDoc.modify(&amp;#39;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;insert &amp;lt;autor&amp;gt;Karli Watson&amp;lt;/autor&amp;gt; &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;into (/magazin/carte/autori)[2]&amp;#39;) &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT @myDoc&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Lobby pentru varchar</title><link>http://sqlserver.ro/forums/thread/357.aspx</link><pubDate>Sat, 14 Oct 2006 07:21:33 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:357</guid><dc:creator>ggciubuc</dc:creator><slash:comments>5</slash:comments><comments>http://sqlserver.ro/forums/thread/357.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=357</wfw:commentRss><description>Lobby pentru varchar&lt;br /&gt;&lt;br /&gt;Datele de tip varchar pot fi de 2 tipuri:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;cele pentru care se precizeaza o limita de pana la 8000 caractere; acestea se vad cand pui varchar(n), cu n pana la 8000&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;cele care care sunt &amp;quot;fara limita&amp;quot; intelegandu-se aici siruri de pana la 2Gb (2,147,483,647 bytes); se marcheaza cu varchar(max).&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Mai jos vedeti niste linii de cod care verifica capacitatile varchar(max).&lt;br /&gt;////////&lt;br /&gt;declare @i as int&lt;br /&gt;set @i=0&lt;br /&gt;DECLARE @myVariable AS varchar(max)&lt;br /&gt;SET @myVariable = &amp;#39;1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890&amp;#39;&lt;br /&gt;--datalength of @myVariable is now 100&lt;br /&gt;while @i &amp;lt;=10&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;begin&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;set @i=@i+1&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;set @myvariable=@myvariable+@myvariable&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;print &amp;#39;Data length after concatenating data : &amp;#39;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;print datalength(@myvariable)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;end&lt;br /&gt;////////&lt;br /&gt;&lt;br /&gt;Iata ce rezultate da codul de mai sus cand @i este pana la 10:&lt;br /&gt;&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;200&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;400&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;800&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;1600&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;3200&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;6400&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;12800&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;25600&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;51200&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;102400&lt;br /&gt;&lt;br /&gt;Dupa a 10-a iteratie @myvariable are dimensiunea 102400.&lt;br /&gt;Daca relansam acest cod cu @i cel mult 100, computerul sta in jur de 10 minute si da urmatorul rezultat&lt;br /&gt;...&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;419430400&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;838860800&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;1677721600&lt;br /&gt;Msg 7119, Level 16, State 1, Line 11&lt;br /&gt;Attempting to grow LOB beyond maximum allowed size of 2,147,483,647 bytes.&lt;br /&gt;Data length after concatenating data : &lt;br /&gt;Msg 7102, Level 20, State 99, Line 13&lt;br /&gt;Internal Error: Text manager cannot continue with current statement. Run DBCC CHECKTABLE.&lt;br /&gt;&lt;br /&gt;Sistemul nu a mai putut face concatenarea pentru ca ar fi depasit 2,147,483,647 bytes.&lt;br /&gt;&lt;br /&gt;Concluzia este ca atunci cand manevrati siruri de caractere puteti folosi varchar, care sunt mai manevrabile decat cele de tip &amp;quot;text&amp;quot;, avand grija sa nu depasiti &amp;quot;cota&amp;quot; de spatiu distribuita.&lt;br /&gt;&lt;br /&gt;</description></item><item><title>Tipurile Varchar (MAX) si Varbinary (MAX)</title><link>http://sqlserver.ro/forums/thread/359.aspx</link><pubDate>Sat, 14 Oct 2006 08:20:39 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:359</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/359.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=359</wfw:commentRss><description>&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:10pt;font-family:Arial;"&gt;Tipurile Varchar (MAX) si Varbinary (MAX)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;SQL Server 2005 introduce argumentul &lt;em&gt;&lt;strong&gt;MAX&lt;/strong&gt;&lt;/em&gt; pentru tipurile de date &lt;strong&gt;varchar&lt;/strong&gt;, &lt;strong&gt;nvarchar&lt;/strong&gt; si &lt;strong&gt;varbinary&lt;/strong&gt;. Folosind argumentul &lt;em&gt;&lt;strong&gt;MAX&lt;/strong&gt;&lt;/em&gt; se pot stoca 2^31-1 octeti de date fata de doar 8000 in SQL Server 2000. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Avantaje:&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;posibilitatea stocarii datelor de dimensiuni mari fara a folosi tipurile de date &lt;strong&gt;&lt;em&gt;text&lt;/em&gt;,&lt;/strong&gt; &lt;em&gt;&lt;strong&gt;ntext&lt;/strong&gt;&lt;/em&gt; sau &lt;em&gt;&lt;strong&gt;image&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;posibilitatea declararii variabilelor de tip &lt;strong&gt;varchar(MAX)&lt;/strong&gt;, &lt;strong&gt;nvarchar(MAX)&lt;/strong&gt; sau &lt;strong&gt;varbinary(MAX)&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;posibilitatea folosirii acestor tipuri in cursoare&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;folosirea in interiorul unui trigger (coloanele de tip &lt;strong&gt;varchar(MAX)&lt;/strong&gt;, &lt;strong&gt;nvarchar(MAX)&lt;/strong&gt; sau &lt;strong&gt;varbinary(MAX)&lt;/strong&gt; ale unui tabel pot fi regasite in tabelele &lt;em&gt;&lt;strong&gt;inserted&lt;/strong&gt;&lt;/em&gt; si &lt;em&gt;&lt;strong&gt;deleted&lt;/strong&gt;&lt;/em&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;se pot face modificari partiale ale datelor de dimensiuni mari folosind clauza &lt;em&gt;&lt;strong&gt;.WRITE&lt;/strong&gt;&lt;/em&gt; a instructiunii &lt;em&gt;&lt;strong&gt;UPDATE&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Wingdings;"&gt;&lt;span&gt;&lt;span style="font:7pt 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;pot fi folosite functiile pentru siruri de caractere &lt;em&gt;&lt;strong&gt;COL_LENGTH&lt;/strong&gt;&lt;/em&gt;, &lt;em&gt;&lt;strong&gt;CHARINDEX&lt;/strong&gt;&lt;/em&gt;, &lt;em&gt;&lt;strong&gt;PATINDEX&lt;/strong&gt;&lt;/em&gt;, &lt;em&gt;&lt;strong&gt;LEN&lt;/strong&gt;&lt;/em&gt;, &lt;em&gt;&lt;strong&gt;DATALENGTH&lt;/strong&gt;&lt;/em&gt;, &lt;strong&gt;&lt;em&gt;SUBSTRING&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;Exemple:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;-- Exemplul 1&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:9pt;font-family:Arial;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;DECLARE @v1 VARCHAR(MAX)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;DECLARE @v2 VARCHAR(MAX)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET @v1 = &amp;#39;0123456789&amp;#39;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET @v2 = replicate(@v1,10000)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SELECT datalength(@v2)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- rezultatul va fi 100000&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- Exemplul 2&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;USE AdventureWorks;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;GO&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- inlocuieste 10 caractere &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;-- &amp;quot;components&amp;quot; devine &amp;quot;features&amp;quot;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;UPDATE Production.Document&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;SET DocumentSummary .WRITE (N&amp;#39;features&amp;#39;,28,10)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&lt;strong&gt;&lt;span style="font-size:8pt;font-family:'Courier New';"&gt;WHERE DocumentID = 3 ;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Windows Management Instrumentation</title><link>http://sqlserver.ro/forums/thread/136.aspx</link><pubDate>Fri, 22 Sep 2006 08:20:43 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:136</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/136.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=136</wfw:commentRss><description>&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;Windows Management Instrumentation&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Suportul WMI in SQL Server 2005 a fost extins si este folosit prin intermediul a doi provideri WMI:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;1.&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;B&gt;WMI provider pentru Configuration Management&lt;/B&gt; –&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;este folosit pentru configurarea serviciilor SQL si setarilor pentru retea. Surface Area Configuration si Configuration Manager sunt doua utilitare pentru configurare care folosesc WMI. Pentru utilizare sunt disponibile urmatoarele metode:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN&gt;Un limbaj de script ca VBScript, Jscript si Perl din care pot folosi Windows Query Language (WQL). WQL este un subset simplificat al SQL cu niste extensii specifice WMI.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;Prin intermediul SMO folosind obiectul &lt;I&gt;ManagedComputer&lt;/I&gt;.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;Folosind utilitarul SQL Server Configuration Manager sau consola MMC cu SQL Server WMI provider snap-in.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;2. &lt;B&gt;WMI provider pentru Server Events&lt;/B&gt; – folosit pentru a monitoriza evenimentele unei instante SQL Server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Urmatorul exemplu va utiliza &lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;o interogare WQL folosind WMI Provider pentru a enumera serviciile SQL Server. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN&gt;Pentru a rula exemplul trebuie sa executati pasii urmatori:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN&gt;Intr-un editor text gen Notepad deschideti un nou document si copiati codul specificat in exemplul de mai jos.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;Salvati documentul cu un nume de exemplu WQLQuery.vbs.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN&gt;Din linia de comanda rulati cscript WQLQuery.vbs.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;Exemplu:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;set wmi = GetObject("WINMGMTS:\\.\root\Microsoft\SqlServer\ComputerManagement")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;for each prop in wmi.ExecQuery("SELECT * FROM SqlService")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "ServiceName: " &amp;amp; prop.ServiceName&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "Description: " &amp;amp; prop.Description&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "DisplayName: " &amp;amp; prop.DisplayName&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "HostName: " &amp;amp; prop.HostName&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "ProcessId: " &amp;amp; prop.ProcessId&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "SQLServiceType: " &amp;amp; prop.SQLServiceType&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "StartMode: " &amp;amp; prop.StartMode&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "StartName: " &amp;amp; prop.StartName&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "State: " &amp;amp; prop.State&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;WScript.Echo "---------------------------------------------------------------" &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;-- Output pe calculatorul meu&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;Microsoft (R) Windows Script Host Version 5.6&lt;BR&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;SPAN&gt;ServiceName: MSFTESQL&lt;BR&gt;Description: Quickly creates full-text indexes on content and properties of structured and semi-structured data to allow fast linguistic searches on this data.&lt;BR&gt;DisplayName: SQL Server FullText Search (MSSQLSERVER)&lt;BR&gt;ErrorControl: 1&lt;BR&gt;ExitCode: 0&lt;BR&gt;HostName: MICROTRAINING&lt;BR&gt;ProcessId: 3088&lt;BR&gt;SQLServiceType: 3&lt;BR&gt;StartMode: 3&lt;BR&gt;StartName: LocalSystem&lt;BR&gt;State: 4&lt;BR&gt;------------------------------------------------------------&lt;BR&gt;ServiceName: MSSQL$SQLEXPRESS&lt;BR&gt;Description: Provides storage, processing and controlled access of data and rapid transaction processing.&lt;BR&gt;DisplayName: SQL Server (SQLEXPRESS)&lt;BR&gt;ErrorControl: 1&lt;BR&gt;ExitCode: 1077&lt;BR&gt;HostName: MICROTRAINING&lt;BR&gt;ProcessId: 0&lt;BR&gt;SQLServiceType: 1&lt;BR&gt;StartMode: 3&lt;BR&gt;StartName: NT AUTHORITY\NetworkService&lt;BR&gt;State: 1&lt;BR&gt;------------------------------------------------------------&lt;BR&gt;ServiceName: MSSQLSERVER&lt;BR&gt;Description: Provides storage, processing and controlled access of data and rapid transaction processing.&lt;BR&gt;DisplayName: SQL Server (MSSQLSERVER)&lt;BR&gt;ErrorControl: 1&lt;BR&gt;ExitCode: 0&lt;BR&gt;HostName: MICROTRAINING&lt;BR&gt;ProcessId: 1180&lt;BR&gt;SQLServiceType: 1&lt;BR&gt;StartMode: 2&lt;BR&gt;StartName: LocalSystem&lt;BR&gt;State: 4&lt;BR&gt;------------------------------------------------------------&lt;BR&gt;ServiceName: ReportServer$SQLEXPRESS&lt;BR&gt;Description: Manages, executes, renders, schedules and delivers reports.&lt;BR&gt;DisplayName: SQL Server Reporting Services (SQLEXPRESS)&lt;BR&gt;ErrorControl: 1&lt;BR&gt;ExitCode: 1077&lt;BR&gt;HostName: MICROTRAINING&lt;BR&gt;ProcessId: 0&lt;BR&gt;SQLServiceType: 6&lt;BR&gt;StartMode: 3&lt;BR&gt;StartName: LocalSystem&lt;BR&gt;State: 1&lt;BR&gt;------------------------------------------------------------&lt;BR&gt;ServiceName: SQLBrowser&lt;BR&gt;Description: Provides SQL Server connection information to client computers.&lt;BR&gt;DisplayName: SQL Server Browser&lt;BR&gt;ErrorControl: 1&lt;BR&gt;ExitCode: 0&lt;BR&gt;HostName: MICROTRAINING&lt;BR&gt;ProcessId: 1816&lt;BR&gt;SQLServiceType: 7&lt;BR&gt;StartMode: 2&lt;BR&gt;StartName: NT AUTHORITY\NetworkService&lt;BR&gt;State: 4&lt;BR&gt;------------------------------------------------------------&lt;BR&gt;ServiceName: SQLSERVERAGENT&lt;BR&gt;Description: Executes jobs, monitors SQL Server, and fires alerts, and allows automation of some administrative tasks.&lt;BR&gt;DisplayName: SQL Server Agent (MSSQLSERVER)&lt;BR&gt;ErrorControl: 1&lt;BR&gt;ExitCode: 1077&lt;BR&gt;HostName: MICROTRAINING&lt;BR&gt;ProcessId: 0&lt;BR&gt;SQLServiceType: 2&lt;BR&gt;StartMode: 3&lt;BR&gt;StartName: LocalSystem&lt;BR&gt;State: 1&lt;BR&gt;------------------------------------------------------------&lt;BR&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;</description></item><item><title>Atasarea unei baze de date</title><link>http://sqlserver.ro/forums/thread/281.aspx</link><pubDate>Mon, 09 Oct 2006 09:15:33 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:281</guid><dc:creator>ggciubuc</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/281.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=281</wfw:commentRss><description>&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Atasarea unei baze de date
&lt;P class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/o:p&gt;Atasarea (cu operatia complementara “detasarea”) &lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;unei baze de date este o procedura folosita , asa cum ii spune denumirea , pentru inserarea pe server a unei baze de date SQL Server provenita de pe alt sistem.&lt;/P&gt;
&lt;P class=MsoNormal&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Detasarea, sau mai degraba pregatirea unei baze de date pentru atasare pe alt server se poate face in 2 feluri :&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo1;tab-stops:list 1.0in;"&gt;&lt;SPAN style="FONT-FAMILY:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;SPAN style="mso-list:Ignore;"&gt;·&lt;SPAN style="FONT:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;-prin interfata, in Management Studio, right-click pe baza de date -&amp;gt; Tasks-&amp;gt;Detach…&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo1;tab-stops:list 1.0in;"&gt;&lt;SPAN style="FONT-FAMILY:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;SPAN style="mso-list:Ignore;"&gt;·&lt;SPAN style="FONT:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Se opreste serviciul SQL Server si se copiaza fisierele de date si log in locatia dorita dupa care se reporneste serviciul.&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/o:p&gt;Operatia inversa , atasarea se poate face tot in 2 feluri astfel:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo2;tab-stops:list 1.0in;"&gt;&lt;SPAN style="FONT-FAMILY:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;SPAN style="mso-list:Ignore;"&gt;·&lt;SPAN style="FONT:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Prin interfata , similar;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo2;tab-stops:45.8pt list 1.0in left 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;"&gt;&lt;SPAN style="COLOR:black;FONT-FAMILY:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol;"&gt;&lt;SPAN style="mso-list:Ignore;"&gt;·&lt;SPAN style="FONT:7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Prin lansarea comenzii “CREATE DATABASE …” de undeva dintr-un script , folosind optiunile &lt;SPAN style="COLOR:black;FONT-FAMILY:'Courier New';FONT-SIZE:13.5pt;"&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR:black;FONT-FAMILY:'Courier New';"&gt;FOR ATTACH sau FOR ATTACH_REBUILD_LOG&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;
&lt;DIV class=MsoNormal style="MARGIN-LEFT:1in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo2;tab-stops:45.8pt list 1.0in left 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sa incercam sa studiem problema atasarii unei baze de date in situatia in care ne lipsesc fisierele de log. Aceasta problema reala , a evitarii atasarii logului unei baze de date de productie care a atins dimensiuni mari si-o poate pune echipa de dezvoltare cand vrea sa aiba la dispozitie o baza de date cu date la zi.&lt;/DIV&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT:0.5in;"&gt;Construim o baza de date “chioara” test1 prin interfata, cu un singur fisier de log; o detasam rapid si modificam numele fisierului din “test1_log.ldf”&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;in “test1_log_1.ldf” simuland situatia in care acesta lipseste. Lansam comanda cu optiunea “FOR ATTACH&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="COLOR:blue;FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt;create&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt; &lt;SPAN style="COLOR:blue;"&gt;database&lt;/SPAN&gt; test1 &lt;SPAN style="COLOR:blue;"&gt;on&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR:gray;FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR:blue;FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt; &lt;SPAN style="COLOR:gray;"&gt;=&lt;/SPAN&gt;test1&lt;SPAN style="COLOR:gray;"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR:blue;"&gt;filename&lt;/SPAN&gt;&lt;SPAN style="COLOR:gray;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR:red;"&gt;'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1.mdf'&lt;/SPAN&gt;&lt;SPAN style="COLOR:gray;"&gt;)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR:blue;FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt; for&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:10pt;mso-no-proof:yes;"&gt; attach&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;Sistemul recreaza fisierul de log iar mesajul corespunzator este urmatorul:&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;"File activation failure. The physical file name "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1_log.ldf" may be incorrect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;New log file 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1_log.LDF' was created."&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;Mai departe adaugam un fisier de log la schema bazei de date si reluam operatia de mai sus simuland pierderea celor 2 fisiere de log. Mesajul care a rezultat este urmatorul :&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;"File activation failure. The physical file name "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1_log.ldf" may be incorrect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;File activation failure. The physical file name "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test2_log.ldf" may be incorrect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;The log was not rebuilt because there is more than one log file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;Msg 1813, Level 16, State 2, Line 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;Could not open new database 'test1'. CREATE DATABASE is aborted."&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;…iar baza de date “test1” nu a fost atasata.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;Avem sperante ca optiunea cealalta ne va rezolva problema:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;Asa e,&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;jocul nostru cu un singur fisier de log decurge ca mai sus insa pentru partida in care evoluam cu 2 loguri mesajul este urmatorul :&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;File activation failure. The physical file name "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1_log.ldf" may be incorrect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="mso-layout-grid-align:none;"&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;File activation failure. The physical file name "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test12_log.ldf" may be incorrect.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;New log file 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1_log.LDF' was created.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;Serverul ataseaza baza de date insa&lt;/SPAN&gt; creeaza numai un fisier de log si anume &lt;SPAN style="FONT-FAMILY:'Courier New';FONT-SIZE:8pt;mso-no-proof:yes;"&gt;'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\test1_log.LDF' . &lt;/SPAN&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;Asta face necesara realizarea unui backup full imediat al bazei de date deoarece avem o alta schema.&lt;/SPAN&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="TEXT-INDENT:0.5in;"&gt;&lt;SPAN style="mso-no-proof:yes;"&gt;In concluzie, pentru o baza de date , optiunea de atasare/detasare este o solutie buna luat in calcul, cu&amp;nbsp;atentie, asa cum am mentionat mai sus , pentru mutarea din productie la dezvoltare.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;</description></item><item><title>Manifest pentru metodologia "Agile"</title><link>http://sqlserver.ro/forums/thread/271.aspx</link><pubDate>Sat, 07 Oct 2006 06:13:55 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:271</guid><dc:creator>ggciubuc</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/271.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=271</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Manifest pentru metodologia &amp;quot;Agile&amp;quot;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mai multe personalitati din Project Management(PM) s-au adunat si au dezbatut &lt;br /&gt;o cale de iesire dintr-un impas al eficientei la care ajunsese PM clasic: s-a constatat ca numai &lt;br /&gt;17% din aplicatiile create ajung sa aiba succes relativ , adica sa fie folosite de beneficiari.&lt;br /&gt;Sau,folosind un exemplu un pic fortat: cate din optiunile Microsoft Word ajung sa fie folosite?Pentru mine ca beneficiar e posibil ca , sa zicem, 20 % din facilitatile Word sa le folosesc, restul nu-mi sunt interesante, producatorul a produs un efort suplimentar. Intr-o aplicatie particulara trebuie sa fie implementate exact acele optiuni folosite: asta scurteaza timpul de executie si beneficiarul este multumit.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Revenind, acestia au schimbat lucrurile si definind o serie de principii care modifica fundamental lucrurile&amp;nbsp; (vezi &lt;a href="http://www.agilemanifesto.org"&gt;www.agilemanifesto.org&lt;/a&gt;):&lt;/p&gt;&lt;p&gt;1)&amp;quot;Individuals and interactions over processes and tools &amp;quot; - sa asculti ce spune programatorul(creatorul/echipa), el simte si rezolva problema nu procesele si instrumentele utilizate;&lt;br /&gt;2)&amp;quot;Working software over comprehensive documentation &amp;quot; - obiectivul principal e sa mearga aplicatia nu sa rezolvi o caruta de documentatie de proiect;&lt;br /&gt;3)&amp;quot;Customer collaboration over contract negotiation &amp;quot;- sa ai alaturi de tine clientul, dincolo de stipulatiile unui contract care pot bloca proiectul&lt;br /&gt;4)&amp;quot;Responding to change over following a plan &amp;quot; - sa nu fii blocat de un plan ci sa faci modificarile in aplicatie cu tinta satisfactia beneficiarului.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ce legatura are interventia mea cu SQL-ul, bazele de date ?&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Va marturisesc ca am apucat sa aplic principiile enuntate cand am fost nevoit sa conduc un proiect de dezvoltare a unei aplicatii web-based in .Net cu acces la o baza de date SQL 2000. &lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Si a MERS !&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Am proiectat baza de date cu referire numai la informatia de care avea nevoie beneficiarul. Incercand sa fac &amp;quot;Working software&amp;quot; am pornit de la un nucleu al bazei de date care permitea functionarea aplicatiei si asigura un set minim de servicii. Ceea ce m-a determinat sa scriu acest articol este partea a 2 a principiului : &amp;quot;comprehensive documentation&amp;quot; activitate care daca este dusa la extrem mare consumatoare de energie.(Revenind la proiectul de care v-am vorbit va dati seama ca aici a intervenit e un sef care inca nu a auzit de metodologia de fata).&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;In concluzie recomand cu caldura aceste principii ale agilitatii atunci cand conduceti un proiect software.Iar daca sunteti in echipa, in interiorul ei, la carma bazelor date sau mediului de dezvoltare, deschideti ochii sefului, pentru ca astfel va fi multumit beneficiarul, dvs. pt ca aveti lucruri mai putine si clare de facut si , sigur, pentru ca pot iesi si bani mai multi din asta.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Data Definition Language (DDL) Triggers</title><link>http://sqlserver.ro/forums/thread/233.aspx</link><pubDate>Tue, 03 Oct 2006 11:11:48 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:233</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>1</slash:comments><comments>http://sqlserver.ro/forums/thread/233.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=233</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;Data Definition Language (DDL) Triggers&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;Un &lt;STRONG&gt;DDL trigger&lt;/STRONG&gt; (declansator) este activat de instructiuni tip &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;CREATE&lt;/STRONG&gt;&lt;/I&gt;, &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;ALTER&lt;/STRONG&gt;&lt;/I&gt; sau &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;DROP&lt;/STRONG&gt; &lt;/I&gt;atat la nivelul serverului cat si al unei baze de date. Poate fi folosit pentru monitorizare modificarilor intr-o baza de date, blocarea anumitor schimbari sau chiar mentinerea unor standarde de cod in definirea obiectelor. Momentan un DDL trigger este activat doar dupa executia instructiunii DDL – varianta &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;INSTEAD OF&lt;/STRONG&gt;&lt;/I&gt; (activare in loc de executia instructiunii DDL) nefiind prezenta in versiunea curenta a SQL Server 2005. Functia &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;EVENTDATA&lt;/STRONG&gt;&lt;/I&gt; poate fi folosita pentru a obtine textul complet al instructiunii executate.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;Exemplu:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;-- blocheaza instructiunea DROP TABLE&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;-- la nivelul bazei de date curente&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;CREATE TRIGGER drop_table_trigger ON DATABASE &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;FOR DROP_TABLE&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;AS &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;PRINT 'Operatie interzisa!' &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;ROLLBACK&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;&lt;FONT face=Arial&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:8pt;FONT-FAMILY:'Courier New';mso-ansi-language:RO;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Observatii:&lt;/STRONG&gt; &lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;In cazul in care folositi DDL triggers pentru audit, puteti folosi pentru acelasi scop si Notificari de Evenimente (Event Notifications). Diferenta consta in modul de lucru: sincron pentru un DDL trigger si respectiv asincron pentru notificari. 
&lt;LI&gt;DDL triggers nu functioneaza pentru anumite proceduri sistem ca de exemplu &lt;STRONG&gt;sp_rename.&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item><item><title>Conexiune Dedicata pentru Administrator</title><link>http://sqlserver.ro/forums/thread/262.aspx</link><pubDate>Fri, 06 Oct 2006 08:19:47 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:262</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>2</slash:comments><comments>http://sqlserver.ro/forums/thread/262.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=22&amp;PostID=262</wfw:commentRss><description>&lt;P&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-ansi-language:RO;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;STRONG&gt;Conexiune Dedicata pentru Administrator &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:Arial;mso-fareast-font-family:'Times New Roman';mso-ansi-language:RO;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;In cazuri deosebite cand accesul la SQL Server nu mai este posibil datorita unor probleme sau unor erori, este disponibila o conexiune pentru membrii rolului &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;sysadmin&lt;/STRONG&gt;&lt;/I&gt;, prin care se poate face diagnosticare si se pot executa interogari. Aceasta conexiune dedicata administratorului (DAC) se poate face folosind utilitarul din linie de comanda &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;sqlcmd&lt;/STRONG&gt;&lt;/I&gt; in doua modalitati - cu parametrul de administrator &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;–A&lt;/STRONG&gt;&lt;/I&gt;, sau folosind numele instantei si prefixul &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;admin:&lt;/STRONG&gt;&lt;/I&gt; spre exemplu &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;sqlcmd –Sadmin:&amp;lt;nume-instanta&amp;gt;&lt;/STRONG&gt;&lt;/I&gt;. Dealtfel se poate folosi pentru aceasta conexiune si SQL Server Management Studio Query Editor deschizand o conexiune la &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;admin:&amp;lt;nume-instanta&amp;gt;&lt;/STRONG&gt;&lt;/I&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;In mod implicit conexiunea se poate face doar de catre un client aflat pe server, dar se poate permite accesul din retea daca se configureaza optiunea &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;remote admin connections&lt;/STRONG&gt; &lt;/I&gt;cu procedura stocata &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;sp_configure&lt;/STRONG&gt;&lt;/I&gt; sau aplicatia &lt;STRONG&gt;Surface Area Configuration&lt;/STRONG&gt;. Poate exista numai o singura conexiune DAC. Este recomandata conectarea la baza de date &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;master&lt;/STRONG&gt;&lt;/I&gt; folosind comanda &lt;I style="mso-bidi-font-style:normal;"&gt;&lt;STRONG&gt;sqlcmd –A –d master&lt;/STRONG&gt;&lt;/I&gt;, si nu este posibila executia interogarilor in paralel. Aceasta conexiune nu este disponibila implicit in SQL Server 2005 Express Edition insa poate fi activata prin folosirea unui trace flag.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;Exemple:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;Pentru conectare local folosind portul standard:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;I style="mso-bidi-font-style:normal;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;&lt;STRONG&gt;sqlcmd –S 127.0.0.1,1434&lt;o:p&gt;&lt;/o:p&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;Pentru conectare prin retea:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;I style="mso-bidi-font-style:normal;"&gt;&lt;SPAN style="FONT-SIZE:9pt;FONT-FAMILY:Arial;mso-ansi-language:RO;"&gt;&lt;STRONG&gt;sqlcmd –S server_name_or_ip –U sa –P password –A&lt;o:p&gt;&lt;/o:p&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;Detalii suplimentare: &lt;A href="http://sqlserver.ro/forums/thread/91.aspx"&gt;http://sqlserver.ro/forums/thread/91.aspx&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;</description></item></channel></rss>