<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Database &amp; Co.</title>
        <link>http://blogs.ugidotnet.org/netTools/category/274.aspx</link>
        <description>Database &amp; Co.</description>
        <language>it-IT</language>
        <copyright>Davide Mauri</copyright>
        <managingEditor>info@davidemauri.it</managingEditor>
        <generator>Subtext Version 1.9.5.176</generator>
        <item>
            <title>Mr. Hibernate sui Database Relazionali: un post di rara bellezza</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/05/25/mr-hibernate-sui-database-relazionali.aspx</link>
            <description>&lt;p&gt;Direttamente da Gavin King (Mr. Hibernate, l'amico di Janky &lt;a title="" href="/nettools/admin/EditPosts.aspx#"&gt;&lt;img alt="" border="0" src="http://www.davidemauri.it/emoticone/appagato.gif" /&gt;&lt;/a&gt;) un post che la dice lunga, molto lunga:&lt;/p&gt;
&lt;strong&gt;"In Defence of RDBMS" &lt;br /&gt;
&lt;/strong&gt;&lt;a href="http://blog.hibernate.org/cgi-bin/blosxom.cgi/2007/05/23"&gt;http://blog.hibernate.org/cgi-bin/blosxom.cgi/2007/05/23&lt;/a&gt;
&lt;p&gt;Il post è piuttosto lungo, e quindi riporto solo due estratti di quanto scritto da Gavin. Li riporto perchè sono concetti che chi mi conosce sa che difendo da sempre....anche quando sembravano essere controcorrente, e venivano tacciati come "vecchi e superati", ma ora che è passata la moda si riscoprono e tornano alla luce del sole...Bene, meglio tardi che mai!&lt;/p&gt;
&lt;p&gt;Sulla centralità e sulla vita dei database:&lt;/p&gt;
&lt;p&gt;"&lt;em&gt;[...] data and data models last longer than applications, longer even than programming languages. Data is shared between many applications in an enterprise, and they are not all written in Java.&lt;/em&gt;"&lt;/p&gt;
&lt;p&gt;Mi sembrano parole conosciute....;-); Sui database legacy:&lt;/p&gt;
&lt;p&gt;"&lt;em&gt;Data management professionals need to start treating their data models and database schemas as ongoing projects of real value to the organization, which need constant ongoing maintainence and evolution. They need to stop treating a legacy schema as some immutable holy text handed down by God.&lt;/em&gt;"&lt;/p&gt;
&lt;p&gt;Che è qualcosa che continuo a dire da anni, in barba a chi sostiene (a torto) che un db "non si può toccare". Nulla è immutabile: certo modificare un db è molto più costoso che modificare un'applicazione - e quindi è bene disegnare lo schema correttamente fin dall'inizio, seguendo le regole di normalizzazione senza remore - ma è possibile!&lt;/p&gt;
&lt;p&gt;Per chiudere il post riporto anche un pezzo di un altro autorevole blog (&lt;a href="http://sqlservercode.blogspot.com/2007/05/object-databases-suck-rdmbss-rock.html"&gt;http://sqlservercode.blogspot.com/2007/05/object-databases-suck-rdmbss-rock.html&lt;/a&gt;):&lt;/p&gt;
&lt;p&gt;"&lt;em&gt;And remember the latest version of Nhibernate &lt;strong&gt;DOES&lt;/strong&gt; support stored procedures! No more wizard generated SQL that is hard to debug because you don't know what it looks like.&lt;/em&gt;"&lt;/p&gt;
&lt;p&gt;I due post sono semplicemente da stampare ed incorniciare.&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/79256.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/05/25/mr-hibernate-sui-database-relazionali.aspx</guid>
            <pubDate>Fri, 25 May 2007 10:08:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/79256.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/05/25/mr-hibernate-sui-database-relazionali.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/79256.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/79256.aspx</trackback:ping>
        </item>
        <item>
            <title>SQL Conference 2007</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/04/24/76400.aspx</link>
            <description>&lt;P&gt;L'anno scorso &amp;#232; piaciuta cosi tanto che cosi anche quest'anno si replica. Sto parlando della &lt;A href="http://www.sqlconference.it/"&gt;SQL Conference 2007&lt;/A&gt;, che si terr&amp;#224; a Milano presso la sede Microsoft dal 12 al 14 giugno.&lt;/P&gt;
&lt;P&gt;Quest'anno la conferenza viene proposta in 3 giorni, in forte collaborazione con Microsoft ed il team di sviluppo stesso di SQL Server, con la quale abbiamo stretto e rinnovato l'amicizia nell'appena trascorso MVP Summit.&lt;/P&gt;
&lt;P&gt;Per quanto mi riguarda mi occuper&amp;#242; di due sessioni:&lt;/P&gt;
&lt;P&gt;&lt;A title="SQL Server 2005: analisi prestazioni e ottimizzazione" href="http://www.sqlconference.it/sessioni.aspx#C314" target=_self&gt;C314 - SQL Server 2005: analisi prestazioni e ottimizzazione&lt;/A&gt;&lt;BR&gt;&lt;A title="SMO: Server Management Objects" href="http://www.sqlconference.it/sessioni.aspx#C316" target=_self&gt;C316 - SMO: Server Management Objects&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;la prima &amp;#232; un evergreen e non ha bisogno di presentazioni, la seconda invece &amp;#232; dedicata ad una tecnologia non molto conosciuta ma invece davvero notevole che permette di automatizzare SQL Server (ed il resto dei suoi componenti) in modo davvero impressionante. Vi consiglio vivamente di seguirla, sono sicuro che scoprirete cose molto interessanti!&lt;/P&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/76400.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/04/24/76400.aspx</guid>
            <pubDate>Tue, 24 Apr 2007 05:59:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/76400.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/04/24/76400.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/76400.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/76400.aspx</trackback:ping>
        </item>
        <item>
            <title>Articoli MSDN in italiano</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/04/11/75227.aspx</link>
            <description>&lt;P&gt;I vari articoli MSDN scritti in italiano dai vari MVP (e non) sono ora disponibili, oltre che nei rispettivi Developer Center, anche in questa comoda lista:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/italy/msdn/risorsemsdn/community/mvp/articles.mspx"&gt;http://www.microsoft.com/italy/msdn/risorsemsdn/community/mvp/articles.mspx&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/75227.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/04/11/75227.aspx</guid>
            <pubDate>Wed, 11 Apr 2007 16:41:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/75227.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/04/11/75227.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/75227.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/75227.aspx</trackback:ping>
        </item>
        <item>
            <title>Generare dati di test</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/04/09/75059.aspx</link>
            <description>&lt;P&gt;Un interessante sito dove &amp;#232; possibile generare dati di test, utile sia ai possesori di VS DB PRO (almeno fino a quando non ci sar&amp;#224; una pi&amp;#249; ampia scelta di Data Generators) sia, ovviamente, a chi non ne &amp;#232; in possesso.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.benjaminkeen.com/software/data_generator/"&gt;http://www.benjaminkeen.com/software/data_generator/&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/75059.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/04/09/75059.aspx</guid>
            <pubDate>Mon, 09 Apr 2007 18:46:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/75059.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/04/09/75059.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/75059.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/75059.aspx</trackback:ping>
        </item>
        <item>
            <title>Database Unit Test Whitepaper</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/03/19/73292.aspx</link>
            <description>&lt;p&gt;E' stato pubblicato un interessante documento sull'utilizzo degli Unit Test in un database:&lt;/p&gt; &lt;p&gt;&lt;a title="http://msdn2.microsoft.com/en-us/library/bb381703(VS.80).aspx" href="http://msdn2.microsoft.com/en-us/library/bb381703(VS.80).aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb381703(VS.80).aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/73292.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/03/19/73292.aspx</guid>
            <pubDate>Mon, 19 Mar 2007 19:55:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/73292.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/03/19/73292.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/73292.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/73292.aspx</trackback:ping>
        </item>
        <item>
            <title>SQL Server 2005 Developer Guidelines - Parte 2</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/02/26/71785.aspx</link>
            <description>&lt;p&gt;E' stato pubblicato il mio secondo articolo sulle &lt;em&gt;Development Guidelines&lt;/em&gt; per lo sviluppo di un database. Questo articolo, in realtà, può essere letto da chiunque, anche da chi non usa SQL Server. &lt;/p&gt; &lt;p&gt;Perchè può essere letto da chiunque? Perchè si parla di progettazione di un database, di normalizzazione,&amp;nbsp;dell'utilizzo dei NULL di utilizzo delle stored procedure.&lt;/p&gt; &lt;p&gt;Tutti concetti che migliorano lo sviluppo dei database &lt;em&gt;e quindi&lt;/em&gt; anche delle soluzioni basate a SQL Server.&lt;/p&gt; &lt;p&gt;Concetti che sono &lt;em&gt;vitali&lt;/em&gt; per utilizzare al meglio un RDBMS della complessità e della potenza di SQL Server, e che invito pertanto tutti a leggere e rileggere e - soprattutto - a condividere, non solo con altre persone tecniche ma anche con project manager, project leaders e via dicendo. Chissa che questo non aiuti ad &lt;a href="http://blogs.ugidotnet.org/nettools/archive/2007/02/19/71163.aspx"&gt;evitare quello di cui parlavo nel post di qualche giorno fa&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;L'integrità dei dati è importante...anzi&amp;nbsp;&lt;em&gt;è la cosa più importante&lt;/em&gt;, da preservare ad ogni costo: è&amp;nbsp;ora di capirlo, tecnici e non. Soprattutto questi ultimi dovrebbero fare due calcoli: scopriranno ben presto che ogni violazione dell'integrità è "monetarizzabile" e rappresenta un costo MOLTO ALTO alle voci "manutenzione ordinaria", "manutenzione straordinaria" e "soddisfazione del cliente". :-)&lt;/p&gt; &lt;p&gt;Buona lettura!&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.microsoft.com/italy/msdn/risorsemsdn/sql/sql2.mspx" href="http://www.microsoft.com/italy/msdn/risorsemsdn/sql/sql2.mspx"&gt;http://www.microsoft.com/italy/msdn/risorsemsdn/sql/sql2.mspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;PS&lt;/p&gt; &lt;p&gt;Per l'occasione ho riabilitato i commenti, sperando che non ritorni la solita ondata di spam...:-(&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/71785.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/02/26/71785.aspx</guid>
            <pubDate>Mon, 26 Feb 2007 21:39:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/71785.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/02/26/71785.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/71785.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/71785.aspx</trackback:ping>
        </item>
        <item>
            <title>[Quasi-OT] Radio 24, il programma "Al Vostro Posto" e i Database </title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/02/19/71163.aspx</link>
            <description>&lt;P&gt;Sto ascoltando in questo momento il programma "Al vostro posto" di Radio 24. Tralasciando il tema della puntata del programma, la cosa che mi preme sottolineare &amp;#232; come il responsabile dell'ATM intervistato dalla Radio abbia ancora la concezione di idee che i dati scambiati dall'ATM ed i suoi partner siano su "dischetti" (testuali parole). Rabbrividisco. &lt;/P&gt;
&lt;P&gt;Ma la cosa che mi fa ancora pi&amp;#249; rabbrividire &amp;#232; che ogni volta che qualche responsabile di qualche societ&amp;#224; viene intervistato riguardo a qualche disguido di comunicazione con il cliente finale (di qualsiasi tipo, dalla notifica del pagamento di un multa - come nel caso che sto ascoltando - alla produzione di bollette) il problema &amp;#232; sempre "informatico"...i dati sono tanti...blah blah blah...il sistema &amp;#232; complesso...blah blah blah...insomma, le solite scuse.&lt;/P&gt;
&lt;P&gt;E' davvero ridicolo che oggi, Anno di Grazia 2007, si sentano ancora queste cose. Dal 1970 &amp;#232; possibile creare database che sono perfettamente in grado di assicurare l'impossibilit&amp;#224; dell'accadimento di situazioni non coerenti, preservando &lt;EM&gt;l'integrit&amp;#224; dei dati, &lt;/EM&gt;che &amp;#232; la cosa che viene puntualmente a mancare nelle situazioni in cui si trovano i suddetti "problemi informatici".&lt;/P&gt;
&lt;P&gt;Basterebbe avere dabatase &lt;EM&gt;decenti&lt;/EM&gt; per avere un&amp;nbsp;sistemi&amp;nbsp;che non possono perdere dati, non possono dare e ricervere informazioni incoerenti n&amp;#232; possono&amp;nbsp;"dimenticarsi" di un cliente. Quando ci metteremo a sviluppare sistemi che non &lt;EM&gt;creano problemi&lt;/EM&gt; ma&lt;EM&gt;&amp;nbsp;li risolvono...&lt;/EM&gt;anche&lt;EM&gt; imponendo &lt;/EM&gt;rigide e ferree regole di integrit&amp;#224; dei dati? Per applicazioni ancora non ci sono "regole", per i database si. Perch&amp;#232; non iniziare ad applicare almeno quelle? I nostri dati saranno sicuramente pi&amp;#249; al sicuro, e noi con essi.&lt;/P&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/71163.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/02/19/71163.aspx</guid>
            <pubDate>Mon, 19 Feb 2007 18:17:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/71163.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/02/19/71163.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/71163.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/71163.aspx</trackback:ping>
        </item>
        <item>
            <title>La Grande Novit&amp;agrave; - Solid Quality Learning Italia</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/01/23/68274.aspx</link>
            <description>&lt;P&gt;Finalmente - e con grande, grandissima gioia - posso rendere pubblica la notizia che per me rappresenta un importantissimo passo avanti nel mio futuro professionale.&lt;/P&gt;
&lt;P&gt;Nei prossimi&amp;nbsp;giorni nascer&amp;#224; la divisione italiana di Solid Quality Learning, uno dei marchi pi&amp;#249; prestigiosi e conosciuti a livello mondiale, legato alla consulenza ed alla formazione&amp;nbsp;su prodotti Microsoft (In particolare SQL Server ma non solo). I nomi che si trovano sotto il cappello di Solid Quality Learning sono semplicemnte impressionanti: Fernando Guerrero, Kalen Delaney, Itzik Ben-Gan, Brian Moran, Peter DeBetta, Ken Spencer (per non parlare dei rappresentanti italiani)...e potrei continuare a lungo. La possibilit&amp;#224; di essere &lt;EM&gt;loro collega&lt;/EM&gt;&amp;nbsp;&amp;#232; semplicemente un sogno che diventa&amp;nbsp;realt&amp;#224;.&lt;/P&gt;
&lt;P&gt;Sogno, per di pi&amp;#249;, condiviso con due soci (ma soprattutto &lt;EM&gt;amici&lt;/EM&gt;)&amp;nbsp;davvero notevoli e preziosi: Gianluca Hotz e Andrea Benedetti condividereanno insieme a me il destino di Solid Quality Learning Italia. &lt;/P&gt;
&lt;P&gt;Destino che faremo in modo possa essere il pi&amp;#249; roseo possibile, cercando di elevare la conoscenza e l'utilizzo di SQL Server e tecnologie collegate verso pi&amp;#249; i alti standard, cercando, senza dubbio, di definirne anche di nuovi.&lt;/P&gt;
&lt;P&gt;Seguiteci -&amp;nbsp;non mancheremo di stupirvi!&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.solidqualitylearning.com"&gt;www.solidqualitylearning.com&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/68274.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/01/23/68274.aspx</guid>
            <pubDate>Tue, 23 Jan 2007 13:42:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/68274.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/01/23/68274.aspx#feedback</comments>
            <slash:comments>12</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/68274.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/68274.aspx</trackback:ping>
        </item>
        <item>
            <title>Technical Workshop dedicato a Visual Studio 2005 Team Edition for Database Professionals</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2007/01/16/67189.aspx</link>
            <description>&lt;p&gt;Come già anticipato da Lorenzo e da Simone il 21 Febbraio 2007 ci sarà un &lt;a href="http://www.microsoft.com/italy/msdn/risorsemsdn/eventi/team_ws.mspx"&gt;Technical Workshop dedicato a Visual Studio 2005 Team Edition for Database Professionals&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Insieme a Lorenzo mostrerò come l'utilizzo di VS 2005 DBPro sia una reale manna dal cielo (non per fare pubblicità lo dico seriamente) per chi sviluppa / amministra un database.&lt;/p&gt; &lt;p&gt;Non mancate!&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/67189.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2007/01/16/67189.aspx</guid>
            <pubDate>Tue, 16 Jan 2007 14:13:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/67189.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2007/01/16/67189.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/67189.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/67189.aspx</trackback:ping>
        </item>
        <item>
            <title>Riguardo l'uso delle stored procedure</title>
            <link>http://blogs.ugidotnet.org/netTools/archive/2006/11/12/54508.aspx</link>
            <description>&lt;p&gt;Sono contento che Mauro abbia &lt;a href="http://blogs.ugidotnet.org/topics/archive/2006/11/11/54457.aspx"&gt;chiarito nel dettaglio&lt;/a&gt; ciò che intendevano lui e Raf nei&amp;nbsp;post che consigliavano di non utilizzare le stored procedure.&lt;/p&gt; &lt;p&gt;Io rimango cmq della mia posizione. Non usare le stored procedure E' MALE.&lt;/p&gt; &lt;p&gt;Onde evitare flame :-) mi spiego subito.&lt;/p&gt; &lt;p&gt;Il caso descritto: "&lt;em&gt;L'uso di uno statement specifico che si preocupa di aggiornare i soli dati realmente modificati permette inoltre di gestire meglio la concorrenza ottimistica nel caso in cui, ad esempio, il client X modifichi la Ragione Sociale mentre il client Y modifichi l'indirizzo della ns entity, in un caso come questo potrebbe non avere senso gestire la concorrenza ma basterebbe semplicemente accettare le 2 modifiche che non sono "concorrenziali&lt;/em&gt;"."&amp;nbsp; sembra dimostrare che l'utilizzo di stored procedure è deleterio. &lt;/p&gt; &lt;p&gt;Se pensiamo alle stored procedure come strumento per avere performance migliori è vero.&lt;/p&gt; &lt;p&gt;Ma le stored procedure (così come le viste, come spiegherò proprio in &lt;a href="http://wpc.education.mondadori.it/SchedaSessione.asp?IdSessione=SIS231"&gt;questa sessione a WPC&lt;/a&gt;) NON SERVONO ASSOLUTAMENTE per migliorare le performance!&lt;/p&gt; &lt;p&gt;I motivi per cui si usano sono essenzialmente 2 (in ugual ordine di importanza)&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Creare un livello di astrazione logica dal database model  &lt;li&gt;Creare degli entry point verso i dati sulla qualè è possibile implementare tutta la sicurezza che si desidera&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Se non si utilizzano stored procedure si lega in modo indivisibile il database all'applicazione (e viceversa); è bene ricordare, invece, che i vari strati applicativi dovrebbero essere il più&amp;nbsp;disaccoppiati possibile. Oltre a questo fatto già di per se molto negativo ci si troverebbe a dover dare i permessi tabella per tabella (o, peggio, colonna per colonna). E' ovvio che quest'ultima opzione sarebbe un incubo da manutenere anche su db con poche decine di tabelle.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Detto ciò, c'è un'altra cosa che bisogna ricordare SEMPRE, quando si parla di database e delle problematiche ad esso legate: è PROFONDAMENTE SBAGLIATO pernsare che ad ogni applicazione corrisponda uno ed un solo database. Un database è fatto per servire&amp;nbsp;più applicazioni non solo ad una. Lasciare ad ogni sviluppatore di ogni applicazione il compito di scrivere query (o lasciarlo ad un ORM, la cosa non cambia) significa negarsi la possibilità di poter gestire correttamente la sicurezza del database, e&amp;nbsp; - nel 99% dei casi - significa anche aver un proliferare di query di impossibile gestione che rendono davvero ardua (se non quasi impossibile) ogni ottimizzazione al livello di modello, di query e &amp;nbsp;di indici. &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Altri articoli di approfondimento:&lt;/p&gt; &lt;p&gt;Superfici di contatto:&lt;/p&gt; &lt;p&gt;&lt;a title="http://blogs.ugidotnet.org/nettools/archive/2005/01/28/10041.aspx" href="http://blogs.ugidotnet.org/nettools/archive/2005/01/28/10041.aspx"&gt;http://blogs.ugidotnet.org/nettools/archive/2005/01/28/10041.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;DAL vs Stored Procedure?&lt;/p&gt; &lt;p&gt;&lt;a title="http://blogs.ugidotnet.org/nettools/archive/2005/02/01/10150.aspx" href="http://blogs.ugidotnet.org/nettools/archive/2005/02/01/10150.aspx"&gt;http://blogs.ugidotnet.org/nettools/archive/2005/02/01/10150.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/netTools/aggbug/54508.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Davide Mauri</dc:creator>
            <guid>http://blogs.ugidotnet.org/netTools/archive/2006/11/12/54508.aspx</guid>
            <pubDate>Sat, 11 Nov 2006 23:45:00 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/netTools/comments/54508.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/netTools/archive/2006/11/12/54508.aspx#feedback</comments>
            <slash:comments>9</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/netTools/comments/commentRss/54508.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/netTools/services/trackbacks/54508.aspx</trackback:ping>
        </item>
    </channel>
</rss>