type d'un champ mysql

Le
antoine
Bonjour,

Dans une base de données MySQL,
quel type donner pour le champ = adresse IP
(nombres séparés par des points)
varchar, bigint . ?

Merci.

antoine

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Francois Boisson
Le #18369191
Le Mon, 12 Jan 2009 13:40:23 +0100
a écrit:

Bonjour,

Dans une base de données MySQL,
quel type donner pour le champ = adresse IP
(nombres séparés par des points)
varchar, bigint .... ?



Personnellement varchar.(16)...

François Boisson

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Johan Dindaine
Le #18369171
------=_Part_70359_24298365.1231767244914
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

je dirais VARCHAR(19) si tu stockes sous la forme 233.233.233.233 ou
varchar(16) si tu stockes comme cela 233233233233 mais dans le second case
assure toi bien de préfixer les petit nombre par zero. exemple 2330220042 51
pour 233.22.4.251

2009/1/12 Francois Boisson
Le Mon, 12 Jan 2009 13:40:23 +0100
a écrit:

> Bonjour,
>
> Dans une base de données MySQL,
> quel type donner pour le champ = adresse IP
> (nombres séparés par des points)
> varchar, bigint .... ?

Personnellement varchar.(16)...

François Boisson

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact






------=_Part_70359_24298365.1231767244914
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

je dirais VARCHAR(19) si tu stockes sous la forme 233.233.233.233 ou varcha r(16) si tu stockes comme cela 233233233233 mais dans le second case assure toi bien de préfixer les petit nombre par zero. exemple 233022004251 pou r 233.22.4.251<br>
<br>

Personnellement varchar.(16)...<br><br>François Boisson<br>
<div>
<div></div>
&quot;Reply-To:&quot; <br></div></div></blockquote></div><br>

------=_Part_70359_24298365.1231767244914--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Alex Perso
Le #18369181
Francois Boisson a écrit :
Le Mon, 12 Jan 2009 13:40:23 +0100
a écrit:

Bonjour,

Dans une base de données MySQL,
quel type donner pour le champ = adresse IP
(nombres séparés par des points)
varchar, bigint .... ?



Personnellement varchar.(16)...



J'ai eu le problème ce matin: pour ipv6, il faut un varchar de 39
(32char + 7: ) et pour ipv4 15 chars.

Alex


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
antoine
Le #18370101
> varchar 15 16 19 39 ...



Il s'agit d'adresses IP (IPV4) enregistrées avec les points :
A.B.C.D

varchar (255) serait-il une erreur ?

antoine

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Franck Delage
Le #18370701
a écrit :
| Il s'agit d'adresses IP (IPV4) enregistrées avec les points :
| A.B.C.D
|
| varchar (255) serait-il une erreur ?
|

Pourquoi 255 ???

Tu as au maximum 12 chiffres plus les points, varchar(15) est
suffisant. En mettre plus surchargerait ta base.

--
Franck Delage
Création et hébergements de sites web
www.web82.net

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Johan Dindaine
Le #18370871
------=_Part_71757_16945541.1231780640557
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

ce n'est pas une erreur en soit de mettre VARCHAR(255) car Mysql ne va pas
utiliser plus de caractere que necessaire dans les fichiers de données ma is
pour le faire rigoureusement on doit se limite a ce qui est réellement
nécessaire.

Concernant les adresse IP, il y en a de deux sorte IPV4 c'est une suite de 4
allant de 0 a 255 séparé par trois points (ex: une adresse privée de classe
C 192.168.123.256 soit 4x3 + 3) soit 15 characteres.

Il y a aussi les adresse IPV6 (http://fr.wikipedia.org/wiki/IPv6) Il s'agit
d'adresse d'au maximum 8 bloques de 4 caractere separés par 7 doubles poi nts
soit (8*4 + 7) 39 caharacteres.
Donc le maximum etant un VARCHAR(39) je me limiterais a un VARCHAR939) si t u
joues avec des adresse IPV6 ou un VARCHAR(15) si tu ne manipule que du IPV4 .

N.B: désolé pour mon erreur de calcul de ce matin- On était lundi mat in tout
de meme

2009/1/12 Franck Delage
a écrit :
| Il s'agit d'adresses IP (IPV4) enregistrées avec les points :
| A.B.C.D
|
| varchar (255) serait-il une erreur ?
|

Pourquoi 255 ???

Tu as au maximum 12 chiffres plus les points, varchar(15) est
suffisant. En mettre plus surchargerait ta base.

--
Franck Delage
Création et hébergements de sites web
www.web82.net

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact






------=_Part_71757_16945541.1231780640557
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

<div class="gmail_quote">

<div>&nbsp;</div>

<div>&nbsp;</div>


<div>&nbsp;</div>
<div>
<div></div>
<div class="Wj3C7c"><br>
suffisant. En mettre plus surchargerait ta base. <div>
<div></div>
&quot;Reply-To:&quot; <br></div></div></blockquote></div></div></div><br></div><br>

------=_Part_71757_16945541.1231780640557--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
François Boisson
Le #18371501
Le Mon, 12 Jan 2009 13:34:04 +0000
"Johan Dindaine"
je dirais VARCHAR(19) si tu stockes sous la forme 233.233.233.233 ou
varchar(16) si tu stockes comme cela 233233233233 mais dans le second case
assure toi bien de préfixer les petit nombre par zero. exemple 233022004251
pour 233.22.4.251



4*3 + 3 = 15 + 1 de précaution car on ne se refait pas (le 0 final peut
être, je ne me souviens plus...)

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Stephane Bortzmeyer
Le #18373341
On Mon, Jan 12, 2009 at 05:05:54PM +0100,
a message of 17 lines which said:

Il s'agit d'adresses IP (IPV4) enregistrées avec les points :
A.B.C.D



Drôle d'idée d'utiliser la forme texte, d'autant plus qu'elle est mal
normalisée en IPv4 (A.B.C.D n'est pas la seule notation
possible). Pourquoi ne pas plutôt stocker la forme binaire, qui permet
des comparaisons et du masquage ?


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Stephane Bortzmeyer
Le #18373331
On Mon, Jan 12, 2009 at 01:40:23PM +0100,
a message of 19 lines which said:

Dans une base de données MySQL,



<troll date="lundi">PostgreSQL, outre qu'elle a tout en mieux, a le type "Adresse IP"
depuis longtemps, ce qui permet de faire des recherches comme « toutes
les adresses dans le réseau 192.0.128.0/25 »...</troll>

quel type donner pour le champ = adresse IP



Il y a justement eu une excellente discussion sur l'excellent site
StackOverflow à ce sujet :

http://stackoverflow.com/questions/420680/how-to-store-ipv6-compatible-address-in-a-relational-database

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Sylvain Sauvage
Le #18373601
Stephane Bortzmeyer, lundi 12 janvier 2009, 23:21:23 CET
[…]
> Il s'agit d'adresses IP (IPV4) enregistrées avec les points :
> A.B.C.D

Drôle d'idée d'utiliser la forme texte, d'autant plus qu'elle
est mal normalisée en IPv4 (A.B.C.D n'est pas la seule notation
possible).



Ça dépend, si c’est « suffisant » ( p.ex. si on ne fait pas
grand-chose avec).

Pourquoi ne pas plutôt stocker la forme binaire,
qui permet des comparaisons et du masquage ?



Oui, ça prend un joli entier 32 bits. (Donc 4 fois moins de
place.)

En revanche, ça coince pour y inclure aussi les adresses IPv6.
Et, là, on arrive à des solutions affreuses (blobesques) ou à  
ajouter des champs (pour le type p.ex.) (et peut-être des tables
pour conserver un bon niveau de normalisation).
Faut voir les besoins et les bénéfices…

--
Sylvain Sauvage

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Publicité
Poster une réponse
Anonyme