<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog SQL d&#039;un développeur Microsoft. &#187; Programmation</title>
	<atom:link href="https://blog.developpez.com/ylarvor/pcategory/programmation/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/ylarvor</link>
	<description>SQL or No-SQL !</description>
	<lastBuildDate>Sat, 04 Jun 2016 19:39:50 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Mon serveur SQL est trop long à répondre : Comment changer le Timeout de mon applicatif C# ?</title>
		<link>https://blog.developpez.com/ylarvor/p5021/programmation/c/timeout</link>
		<comments>https://blog.developpez.com/ylarvor/p5021/programmation/c/timeout#comments</comments>
		<pubDate>Fri, 11 Jan 2008 11:41:29 +0000</pubDate>
		<dc:creator><![CDATA[ylarvor]]></dc:creator>
				<category><![CDATA[C#]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Lorsque l&#8217;on travaille avec asp.net 2.0 et une base de données comme sql serveur 2005, il arrive que le serveur de bases de données n&#8217;ait pas le temps de répondre à la connexion car les 30 secondes du time out se sont écoulées. Pour éviter cela, faites cela : Dim cmd As SqlCommand = SConnAloes.CreateCommand() [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Lorsque l&rsquo;on travaille avec asp.net 2.0 et une base de données comme sql serveur 2005, il arrive que le serveur de bases de données n&rsquo;ait pas le temps de répondre à la connexion car les 30 secondes du time out se sont écoulées. Pour éviter cela, faites cela :</p>
<p>Dim cmd As SqlCommand = SConnAloes.CreateCommand()<br />
cmd.CommandText = SqlAnalyseInfLMR<br />
cmd.CommandType = CommandType.Text<br />
cmd.CommandTimeout = 300000<br />
Dim da As SqlDataAdapter = New SqlDataAdapter(cmd)<br />
da.Fill(DTAnalyseInfLMR)</p>
<p>Il existe deux types de time out à gérer : connection.timeout et command.timeout</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comment se connecter à SQL Server depuis le connexionstring de C# ?</title>
		<link>https://blog.developpez.com/ylarvor/p6526/programmation/c/quelques_precisions_sur_le_site_http_www</link>
		<comments>https://blog.developpez.com/ylarvor/p6526/programmation/c/quelques_precisions_sur_le_site_http_www#comments</comments>
		<pubDate>Mon, 06 Oct 2008 19:42:48 +0000</pubDate>
		<dc:creator><![CDATA[ylarvor]]></dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Securite]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Comment remplir la chaîne de connection se trouvant dans la chaîne connectionstring de votre fichier web.config en asp.net ? vous avez deux possibilités 1 &#8211;  la connection dite standard, pour un serveur de base de données accessible par un compte SA / mot de passe. Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword; Dans datasource, vous devez saisir l&#8217;adresse [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Comment remplir la chaîne de connection se trouvant dans la chaîne connectionstring de votre fichier web.config en asp.net ? </p>
<p>vous avez deux possibilités </p>
<p><span id="more-66"></span> </p>
<p>1 &#8211;  <strong>la connection dite standard</strong>, pour un serveur de base de données accessible par un compte SA / mot de passe.</p>
<p>Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;</p>
<p>Dans datasource, vous devez saisir l&rsquo;adresse IP de votre machine pour un serveur SQL par défaut.</p>
<p>Pour une instance nommée, vous pouvez saisir MonServeur\MonInstance</p>
<p>Dans initial catalog, vous nommez la base de données que vous accédez par défaut: par exemple AdventuresWorks.</p>
<p>Dans User Id, vous saisissez SA.</p>
<p>Dans Password, vous saisissez le mot de passe administrateur.</p>
<p>Bon, concernant le compte de connexion ( login et compte utilisateur ), j&rsquo; ai volontairement simplifié pour vous aider à comprendre mais en réalité, vous devez utiliser un compte utilisateur défini pour votre base uniquement avec des droits spécifiques sur chaque objet ou au moins un rôle dbreader pour une base en lecture seule et un login associé à ce seul compte.</p>
<p>2 &#8211; <strong>la connection dite windows</strong>, pour un serveur accessible depuis un compte administrateur windows</p>
<p>Si votre serveur est configuré en connection windows, c&rsquo;est à dire qu&rsquo;il n&rsquo;y a pas d&rsquo;utilisateur sql serveur mais une connection sous couverture du compte windows</p>
<p>la chaine est la suivante :</p>
<p>Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;</p>
<p>Datasource indique toujours l&rsquo;adresse IP de votre serveur pour un serveur par défaut, et pour une instance nommée, vous rajoutez 192.168.0.87\nomInstance</p>
<p>Initial catalog pointe sur la base par défaut, ici adventuresworks. </p>
<p>Quand au troisième paramètre, il indique qu&rsquo; il n&rsquo; y a pas de compte SA mais une connection basée sur le compte windows de l&rsquo; utilisateur.</p>
<p>Si vous êtes un utilisateur débutant de .net, j&rsquo;espère que ce complément à l&rsquo;excellent quoique complexe site www.connectionstring.com vous aidera. </p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quand utilise t&#8217;on du code .NET embarqué dans SQL Server 2005 ?</title>
		<link>https://blog.developpez.com/ylarvor/p6846/programmation/c/etude_de_performance_du_code_net_embarqu_2005</link>
		<comments>https://blog.developpez.com/ylarvor/p6846/programmation/c/etude_de_performance_du_code_net_embarqu_2005#comments</comments>
		<pubDate>Fri, 28 Nov 2008 19:40:02 +0000</pubDate>
		<dc:creator><![CDATA[ylarvor]]></dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[SQL Server 2005]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Comme vous le savez déjà, depuis SQL Server 2005, Microsoft a mis en place l&#8217; utilisation du langage .NET dans SQL Server. Etudions par un simple exemple les performances ? Quand devrons-nous utiliser quand même ce SQLCLR ? 1 Etude des performances. 1.1 Matériel. L&#8217; étude de Rudi Bruchez sur .net avec SQL Server paru [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Comme vous le savez déjà, depuis SQL Server 2005, Microsoft a mis en place l&rsquo; utilisation du langage .NET dans SQL Server. Etudions par un simple exemple les performances ? Quand devrons-nous utiliser quand même ce SQLCLR ?</p>
<p>  <span id="more-28"></span>
<p><strong>1 Etude des performances.</strong></p>
<p><strong>1.1 Matériel.</strong></p>
<p>L&rsquo; étude de Rudi Bruchez sur .net avec SQL Server paru sur Developpez.com.</p>
<p>Un portable moyen de gamme.</p>
<p>Visual Studio 2008 express.</p>
<p>SQL Server 2005 developper.</p>
<p>Une table Arbre[primary key identity, NOM(varchar[25]) contenant 200 000 lignes.</p>
<p><strong>1.2 Requête SQL.</strong></p>
<p>La requête SQL : SELECT NOM FROM Arbre; pour 200 000 lignes Arbre N°Identity.</p>
<p>Durée d&rsquo; exécution sur le manager : 7 secondes. </p>
<p><strong>1.3 Procédure stockée SQL.</strong></p>
<p>CREATE PROCEDURE ListeNomsArbres AS SELECT NOM FROM Arbre;   <br />GO</p>
<p>Durée d&rsquo; exécution sur le manager : 7 secondes.</p>
<p><strong>1.3 Procédure SQLCLR.</strong></p>
<p>La procédure reprend la commande SQL mais l&rsquo; encapsule dans du code .NET chargé dans l&rsquo; SQLOS de Sql Server.</p>
<p>using System.Data;   <br />using System.Data.SqlClient;    <br />using System.Data.SqlTypes;    <br />using Microsoft.SqlServer.Server; </p>
<p>public class StoredProcedures   <br />{    <br />    [Microsoft.SqlServer.Server.SqlProcedure]    <br />    public static void GetArbreFromCTIFL()    <br />    {    <br />        try    <br />        {    <br />            using (SqlConnection cn = new SqlConnection(&laquo;&nbsp;context connection=true&nbsp;&raquo;))    <br />            {    <br />                cn.Open();    <br />                string sql = @&nbsp;&raquo;SELECT NOM    <br />                                FROM ARBRE&nbsp;&raquo;;    <br />                SqlCommand cmd = new SqlCommand(sql, cn);    <br />                SqlContext.Pipe.Send(cmd.ExecuteReader());    <br />            }    <br />        }    <br />        catch (Exception e)    <br />        {    <br />            SqlPipe pipe = SqlContext.Pipe;    <br />            pipe.Send(&laquo;&nbsp;erreur d&rsquo;execution&nbsp;&raquo;);    <br />            pipe.Send(e.Message);    <br />            pipe.Send(e.StackTrace);    <br />        }    <br />    }    <br />}</p>
<p>Après mise en place sur le server suivant les indication de rudib.</p>
<p>L&rsquo; exécution de la procédure prend 17 secondes.</p>
<p><strong>Le temps d&rsquo; exécution est donc bien plus lent, le double.</strong></p>
<p><strong>2 Peux on utiliser le SQLCLR ?</strong></p>
<p>D&rsquo; abord,du point de vue de SQL Server, Il suffit de créer un Assembly pointant sur le répertoire C:\ du serveur et contenant la librairie .net compilée. L&rsquo; Assembly crée, la procédure devient très simple à déclarer.</p>
<p>D&rsquo; après &laquo;&nbsp;Administrating SQL Server&nbsp;&raquo;, le SQLCLR répond à des problématiques de communication de SQL Server avec son environnement non conventionnels ( exemple : mail, sms&#8230; )</p>
<p>Autre cas d&rsquo; usage du SQLCLR, les traitements algorithmiques lourds, portant sur quelques lignes, en mode pas à pas.</p>
<p>Autre cas d&rsquo; utilisation du SQLCLR, le calcul complexe, à partir de données que l&rsquo; on souhaite mettre à disposition dans une procédure stockée.</p>
<p><a href="http://blog.developpez.com/mikedavem/p7285/sql-server-2005/clr/title-123/#more7285" target="new">lien sur un article de mike daven sur le CLR.</a></p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comment formater une valeur numérique ou une date SQL server en C# ?</title>
		<link>https://blog.developpez.com/ylarvor/p6581/programmation/c/formatage_d_une_valeur_numerique_ou_une</link>
		<comments>https://blog.developpez.com/ylarvor/p6581/programmation/c/formatage_d_une_valeur_numerique_ou_une#comments</comments>
		<pubDate>Tue, 14 Oct 2008 18:57:19 +0000</pubDate>
		<dc:creator><![CDATA[ylarvor]]></dc:creator>
				<category><![CDATA[C#]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[La question est fréquente sur le forum de développez.net\SQL serveur, un utilisateur souhaite savoir comment, et rarement quand, formater une date, un chiffre. D&#8217; abord, la question quand ? Le SGBD gère des données brutes et l&#8217; affichage ne doit pas le concerner. Inutile donc de chercher avec complication à formater à l&#8217; intérieur du [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>La question est fréquente sur le forum de développez.net\SQL serveur, un utilisateur souhaite savoir comment, et rarement quand, formater une date, un chiffre.<br />
<span id="more-67"></span><br />
D&rsquo; abord, la question quand ?</p>
<p>Le SGBD gère des données brutes et l&rsquo; affichage ne doit pas le concerner. Inutile donc de chercher avec complication à formater à l&rsquo; intérieur du SGBD, aucune méthode n&rsquo; existe en interne. Dans le SGBD, vous pouvez changer les types au gré de vos calculs mais vous devez rester le plus standard possible en matière d&rsquo; affichage. De toute façon, les données passeront d&rsquo; abord par un applicatif ou un rapport pour être affichée, l&rsquo; affichage se fera alors au dernier moment.</p>
<p>Maintenant, abordons la question intéressante de ce sujet : comment ?</p>
<p>Nous travaillerons en C#.</p>
<p>Formatage d&rsquo; un nombre.</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Double myDouble = 1234567890; <br />
String myString = myDouble.ToString( &quot;(###) ### - ####&quot; ); <br />
// The value of myString is &quot;(123) 456 – 7890&quot;. <br />
&nbsp;<br />
int &nbsp;MyInt = 42; <br />
MyString = MyInt.ToString( &quot;My Number = #&quot; ); <br />
// In the U.S. English culture, MyString has the value: &nbsp;<br />
// &quot;My Number = 42&quot;.</div></div>
<p>( extrait de MSDN )</p>
<p>Comme vous pouvez le voir, le type double et int possèdent une méthode ToString(param) qui permet de définir un affichage particulier. Le 0 s&rsquo;affichera toujours, le # affichera le nombre, le &lsquo; sépare les milliers.</p>
<p>Formatage d&rsquo; une date.</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">DateTime MyDate = new DateTime(2000, 1, 1, 0, 0, 0); <br />
String MyString = MyDate.ToString(&quot;dddd - d - MMMM&quot;); <br />
// In the U.S. English culture, MyString has the value: &nbsp;<br />
// &quot;Saturday - 1 - January&quot;. <br />
MyString = MyDate.ToString(&quot;yyyy gg&quot;); <br />
// In the U.S. English culture, MyString has the value: &quot;2000 A.D.&quot;.</div></div>
<p>( extrait de MSDN )</p>
<p>De la même manière, que pour le type double, le type datetime possède une méthode ToString(param) qui permet de spécifier le format de la date. Le dddd affichera le jour, le MM affichera le mois sur 2 chiffres, le yyyy affichera l&rsquo;année.</p>
<p>Maintenant, quand vous entendrez SQL Pro dire &laquo;&nbsp;Un SGBD ne fait pas de cosmétique&nbsp;&raquo;, vous saurez comment gérer le problème, à condition évidemment de choisir comme langage le c#.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
