<?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>Point2Zero &#187; SQL</title>
	<atom:link href="http://www.point2zero.net/blog/category/code/sql/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.point2zero.net/blog</link>
	<description>Bring to you Information Technology</description>
	<lastBuildDate>Tue, 23 Mar 2010 11:17:35 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>MySQL : A quoi sert ci dans utf8_general_ci ?</title>
		<link>http://www.point2zero.net/blog/2009/10/13/mysql-a-quoi-sert-ci-dans-utf8_general_ci/</link>
		<comments>http://www.point2zero.net/blog/2009/10/13/mysql-a-quoi-sert-ci-dans-utf8_general_ci/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 14:10:03 +0000</pubDate>
		<dc:creator>ChoiZ</dc:creator>
				<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.point2zero.net/blog/?p=899</guid>
		<description><![CDATA[
			
				
			
		
Vous avez sans doute déjà travaillé avec des bases de données tel que MySQL, PostgreSQL ou autre...
Lors de l'utilisation d'une base MySQL on créer des tables. Dans ces tables nous créons différents champs.
Par exemple sur mon site je veux faire un système d'authentification, je vais donc créer une table "login" avec dedans mes utilisateurs et [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.point2zero.net%2Fblog%2F2009%2F10%2F13%2Fmysql-a-quoi-sert-ci-dans-utf8_general_ci%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.point2zero.net%2Fblog%2F2009%2F10%2F13%2Fmysql-a-quoi-sert-ci-dans-utf8_general_ci%2F&amp;source=Point2Zero+%5BBlog%5D&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>Vous avez sans doute déjà travaillé avec des bases de données tel que MySQL, PostgreSQL ou autre...</p>
<p>Lors de l'utilisation d'une base MySQL on créer des tables. Dans ces tables nous créons différents champs.</p>
<p>Par exemple sur mon site je veux faire un système d'authentification, je vais donc créer une table "login" avec dedans mes utilisateurs et mots de passe par exemple.</p>
<p>Lors de la création de la table vous avez plusieurs choix déjà le nombre de colonnes pour savoir le nombre de champs :<br />
<img class="alignleft size-medium wp-image-900" title="colonnes" src="http://www.point2zero.net/blog/wp-content/uploads/2009/10/Capture-d’écran-2009-10-13-à-15.42.29-300x34.png" alt="colonnes" width="300" height="34" /><br />
<br class="clear" /></p>
<p>Dans notre cas 3 :<br />
L'id, L'identifiant, Le mot de passe.</p>
<p>Ensuite pour chaque champs nous devons indiquer :<br />
- Un nom (id, login, pass)<br />
- Un type (int, varchar, text etc...)<br />
- La taille ou La valeur par exemple 255 pour un varchar ou par exemple ("yes", "no") si on fait un enum et qu'on veut une réponse prédéfinie<br />
- L'interclassement :</p>
<p>Il comprend :</p>
<p>-&gt; le jeu de caractère (ASCII, UTF8, LATIN1 etc...)<br />
-&gt; l'interclassement ou collation (Swedish, French ...)<br />
-&gt; le "_ci" ou "_cs".</p>
<p>A quoi sert l'interclassement ? Lorsque l'on utilise ORDER BY l'interclassement va en fonction de la langue ordonner différemment les résultats. Donc ça peut être très utile !</p>
<p>Alors qu'est ce que le fameux "_ci", "_cs" "_bin" ?<br />
"_ci" pour Case Insensitive,<br />
"_cs" pour Case Sensitive<br />
"_bin" pour Binaire.</p>
<p>Voici les enregistrements dans ma table :</p>
<pre class="brush: sql;">
id login pass
1 ChoiZ 123456
2 choiz azerty
3 cHOIz 654321
4 CHOIZ AzertY
5 test test
</pre>
<p>Imaginons que vous vouliez sélectionner le champ login dans votre table, si il est en "_ci" :</p>
<pre class="brush: sql;">SELECT password FROM users WHERE login=&quot;ChoiZ&quot;</pre>
<pre class="brush: sql;">SELECT password FROM users WHERE login=&quot;choiz&quot;</pre>
<p>retournerons les mêmes résutats soit :<br />
Pour le premier et le second cas les colonnes : </p>
<pre class="brush: sql;">
1 ChoiZ 123456
2 choiz azerty
3 cHOIz 654321
4 CHOIZ AzertY
</pre>
<p>En revanche si "_cs" est utilisé :</p>
<pre class="brush: sql;">SELECT password FROM users WHERE login=&quot;ChoiZ&quot;</pre>
<p>cette requette retournera uniquement la premiere ligne soit : </p>
<pre class="brush: sql;">
1 ChoiZ 123456
</pre>
<pre class="brush: sql;">SELECT password FROM users WHERE login=&quot;choiz&quot;</pre>
<p>cette requette retournera uniquement la seconde ligne soit : </p>
<pre class="brush: sql;">
2 choiz azerty
</pre>
<p>J'espère que ce billet vous sera utile dans vos futurs développements.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.point2zero.net/blog/2009/10/13/mysql-a-quoi-sert-ci-dans-utf8_general_ci/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
