Vous n'êtes pas identifié(e).
Pages : 1
Bonjour
Voila je travaille sur un sujet de stage MDM pour Mobile Device Management; dans se cas de figure je suis en train de essayer de normaliser la basse de donnée. pour La déclaration d’IMEI (International Mobile Equipment Identity)
Je doits faire :
1-CREATE TABLE imei( IMEI varchar(15) NOT NULL );
2-rechercher un type telle-que « Types de données isn »
3- CREATE TYPE imei AS ( TAC varchar(8), SNR varchar(6), CR varchar(1) ) ;
4- CREATE DOMAIN imei AS varchar(15)
CHECK (VALUE ~* E ' d {2} \ . \\d {2}\ . \\d {2}\ . \\d {2}\ . \\d {2}\ . \\d {2}\ . \\d {2}\ . \\d {1}' );
Quelle option choisir ou autre solution ???
systeme ubuntu 12.04 sur VM et postgres 9.1
~100 appareil mobile
INFORMATION : L'IMEI est composé de 15 chiffres (14 chiffres utiles + 1 chiffre de contrôle). Depuis le 1eravril 2004, il contient les informations suivantes :
Le Type Allocation Code (TAC) fourni par l'autorité de certification. Il est codé sur huit chiffres, les deux premiers chiffres désignant le code pays où le mobile a été immatriculé.
Le numéro de série (SNR) de fabrication de cet appareil, codé sur six chiffres.Le chiffre de contrôle servant de somme de contrôle sur les 14 autres chiffres.
MERCI D'AVANCE
Dernière modification par MôMö13 (10/05/2013 12:43:41)
Hors ligne
Je ne sais pas si ça correspond exactement à ce que vous voulez mais PostgreSQL dispose d'un module isn. Voir http://docs.postgresql.fr/9.2/isn.html pour les détails.
Guillaume.
Hors ligne
non pas vraiment j'ai déjà utiliser pour la gestion de bibliothèque , pour la gestion des code bar et référencement des livre. dans mon cas c' pour l'IMEI c' est similaire mais pour la gestion des mobile.
je vous savoir comment les géré et normaliser , c'est pour se la que j'ai mes les 4 options, je suit novice en bdd
merci
Hors ligne
Le plus performant sera sans doute :
CREATE DOMAIN D_IMEI
AS CHAR(15) --> pas de VARCHAR !
CONSTRAINT CK_IMEI CHECK (CAST(VALUE AS DECIMAL(15,0)) > 0
AND CHARACTER_LENGTH(LTRIM(VALUE)) = 15);;
CREATE TABLE T_IMEI
(IMEI D_IMEI);
Tests :
Bon :
INSERT INTO T_IMEI VALUES ('123456789012345');
Faux et levée d'une exception :
INSERT INTO T_IMEI VALUES ('12345678901234')
Taille incorrecte.
INSERT INTO T_IMEI VALUES ('12345678901234a')
Lettre incorrecte.
INSERT INTO T_IMEI VALUES (' 23456789012345')
Blanc devant
Mais si pour vous les 3 zones de l'IMEI devront être requêtées séparément, alors mieux vaut atomiser dès le départ en 3 colonnes et vous pouvez faire une vue donnant la concaténation.
A +
Dernière modification par SQLpro (12/05/2013 18:30:31)
Frédéric Brouard, alias SQLpro, ARCHITECTE DE DONNÉES, Expert langage SQL
Le site sur les SGBD relationnel et langage SQL : http://sqlpro.developpez.com/
Modélisation de données, conseil, expertise, audit, optimisation, tuning, formation
* * * * * Enseignant CNAM PACA, ISEN Toulon, CESI Aix en Provence * * * * *
Hors ligne
merci beaucoup pour l'aide que vous m'avez apporte
bonne soirée
cordialement
Hors ligne
Pages : 1