Une base de données mal développé, c'est à dire aucun masque de saisie
!
Resultat : dans les champs tel, tel2, mobil1 et mobil2
les téléphones sont saisis n'importe comment
soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX
XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX
Parfois il y a plusieurs n°s dans le champs ou des séparateurs
différentsou des n°s de mobil dans les tel fixes.
J'aimerais me connecter sur la base via access puis faire une routine,
pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s
en 06 dans les champs mobil et faire le tri dans les champs qui
contiennent plusieurs n°s
bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un
fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe TROTIN [MS]
Bonjour,
Il faut utiliser la fonction REPLACE() et gérer les différents cas.
UPDATE MaTable SET MonChanmp = REPLACE(MonChamp, '/', '')
Cordialement _______________________________
Philippe TROTIN Microsoft Services France _______________________________
"Hawk" a écrit dans le message de groupe de discussion :
Bonjour,
Une base de données mal développé, c'est à dire aucun masque de saisie ! Resultat : dans les champs tel, tel2, mobil1 et mobil2 les téléphones sont saisis n'importe comment soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX Parfois il y a plusieurs n°s dans le champs ou des séparateurs différentsou des n°s de mobil dans les tel fixes. J'aimerais me connecter sur la base via access puis faire une routine, pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s en 06 dans les champs mobil et faire le tri dans les champs qui contiennent plusieurs n°s bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Merci
Bonjour,
Il faut utiliser la fonction REPLACE() et gérer les différents cas.
UPDATE MaTable SET MonChanmp = REPLACE(MonChamp, '/', '')
Cordialement
_______________________________
Philippe TROTIN
Microsoft Services France
_______________________________
"Hawk" <nospam@orange.fr> a écrit dans le message de groupe de discussion :
lpgqk39n0asjdlahr0tg27agraotj0g118@4ax.com...
Bonjour,
Une base de données mal développé, c'est à dire aucun masque de saisie
!
Resultat : dans les champs tel, tel2, mobil1 et mobil2
les téléphones sont saisis n'importe comment
soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX
XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX
Parfois il y a plusieurs n°s dans le champs ou des séparateurs
différentsou des n°s de mobil dans les tel fixes.
J'aimerais me connecter sur la base via access puis faire une routine,
pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s
en 06 dans les champs mobil et faire le tri dans les champs qui
contiennent plusieurs n°s
bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un
fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Il faut utiliser la fonction REPLACE() et gérer les différents cas.
UPDATE MaTable SET MonChanmp = REPLACE(MonChamp, '/', '')
Cordialement _______________________________
Philippe TROTIN Microsoft Services France _______________________________
"Hawk" a écrit dans le message de groupe de discussion :
Bonjour,
Une base de données mal développé, c'est à dire aucun masque de saisie ! Resultat : dans les champs tel, tel2, mobil1 et mobil2 les téléphones sont saisis n'importe comment soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX Parfois il y a plusieurs n°s dans le champs ou des séparateurs différentsou des n°s de mobil dans les tel fixes. J'aimerais me connecter sur la base via access puis faire une routine, pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s en 06 dans les champs mobil et faire le tri dans les champs qui contiennent plusieurs n°s bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Merci
Fred BROUARD
CREATE FUNCTION F_RESTRICT (@IN VARCHAR (8000), @CHARSOK VARCHAR(256)) RETURNS VARCHAR (8000) AS BEGIN -- effets de bord IF @IN IS NULL RETURN NULL IF @CHARSOK IS NULL RETURN NULL IF LEN(@IN) = 0 RETURN @IN -- initialisation DECLARE @I INTEGER DECLARE @OUT VARCHAR(8000) SET @OUT = '' -- lecture caractère par caractère SET @I =1 WHILE @I <= LEN(@IN) BEGIN IF PATINDEX('%' + SUBSTRING(@IN, @I, 1)+ '%', @CHARSOK) > 0 SET @OUT = @OUT + SUBSTRING(@IN, @I, 1) SET @I = @I + 1 END RETURN @OUT END
Utilisez cette fonction dans un UPDATE avec dans CHAROK les seuls caractères numériques de 0 à 9.
Une base de données mal développé, c'est à dire aucun masque de saisie ! Resultat : dans les champs tel, tel2, mobil1 et mobil2 les téléphones sont saisis n'importe comment soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX Parfois il y a plusieurs n°s dans le champs ou des séparateurs différentsou des n°s de mobil dans les tel fixes. J'aimerais me connecter sur la base via access puis faire une routine, pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s en 06 dans les champs mobil et faire le tri dans les champs qui contiennent plusieurs n°s bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Merci
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation *********************** http://www.sqlspot.com *************************
CREATE FUNCTION F_RESTRICT (@IN VARCHAR (8000),
@CHARSOK VARCHAR(256))
RETURNS VARCHAR (8000)
AS
BEGIN
-- effets de bord
IF @IN IS NULL
RETURN NULL
IF @CHARSOK IS NULL
RETURN NULL
IF LEN(@IN) = 0
RETURN @IN
-- initialisation
DECLARE @I INTEGER
DECLARE @OUT VARCHAR(8000)
SET @OUT = ''
-- lecture caractère par caractère
SET @I =1
WHILE @I <= LEN(@IN)
BEGIN
IF PATINDEX('%' + SUBSTRING(@IN, @I, 1)+ '%', @CHARSOK) > 0
SET @OUT = @OUT + SUBSTRING(@IN, @I, 1)
SET @I = @I + 1
END
RETURN @OUT
END
Utilisez cette fonction dans un UPDATE avec dans CHAROK les seuls
caractères numériques de 0 à 9.
Une base de données mal développé, c'est à dire aucun masque de saisie
!
Resultat : dans les champs tel, tel2, mobil1 et mobil2
les téléphones sont saisis n'importe comment
soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX
XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX
Parfois il y a plusieurs n°s dans le champs ou des séparateurs
différentsou des n°s de mobil dans les tel fixes.
J'aimerais me connecter sur la base via access puis faire une routine,
pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s
en 06 dans les champs mobil et faire le tri dans les champs qui
contiennent plusieurs n°s
bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un
fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Merci
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
CREATE FUNCTION F_RESTRICT (@IN VARCHAR (8000), @CHARSOK VARCHAR(256)) RETURNS VARCHAR (8000) AS BEGIN -- effets de bord IF @IN IS NULL RETURN NULL IF @CHARSOK IS NULL RETURN NULL IF LEN(@IN) = 0 RETURN @IN -- initialisation DECLARE @I INTEGER DECLARE @OUT VARCHAR(8000) SET @OUT = '' -- lecture caractère par caractère SET @I =1 WHILE @I <= LEN(@IN) BEGIN IF PATINDEX('%' + SUBSTRING(@IN, @I, 1)+ '%', @CHARSOK) > 0 SET @OUT = @OUT + SUBSTRING(@IN, @I, 1) SET @I = @I + 1 END RETURN @OUT END
Utilisez cette fonction dans un UPDATE avec dans CHAROK les seuls caractères numériques de 0 à 9.
Une base de données mal développé, c'est à dire aucun masque de saisie ! Resultat : dans les champs tel, tel2, mobil1 et mobil2 les téléphones sont saisis n'importe comment soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX Parfois il y a plusieurs n°s dans le champs ou des séparateurs différentsou des n°s de mobil dans les tel fixes. J'aimerais me connecter sur la base via access puis faire une routine, pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s en 06 dans les champs mobil et faire le tri dans les champs qui contiennent plusieurs n°s bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
Merci
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation *********************** http://www.sqlspot.com *************************
Pierre Goiffon
Hawk wrote:
Une base de données mal développé, c'est à dire aucun masque de saisie ! Resultat : dans les champs tel, tel2, mobil1 et mobil2 les téléphones sont saisis n'importe comment soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX Parfois il y a plusieurs n°s dans le champs ou des séparateurs différentsou des n°s de mobil dans les tel fixes. J'aimerais me connecter sur la base via access puis faire une routine, pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s en 06 dans les champs mobil et faire le tri dans les champs qui contiennent plusieurs n°s bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
En T-SQL on peut faire pas mal de choses comme on vous l'a déjà répondu. Mais ça ne suffit pas toujours... Si vous êtes un peu coincé, alors il faut appeler des expressions rationnelles, soit en développant un petit script maison (Perl, WSH en VBs ou JS, ...) soit en utilisant des transformations DTS avec Active Script.
Hawk wrote:
Une base de données mal développé, c'est à dire aucun masque de saisie
!
Resultat : dans les champs tel, tel2, mobil1 et mobil2
les téléphones sont saisis n'importe comment
soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX
XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX
Parfois il y a plusieurs n°s dans le champs ou des séparateurs
différentsou des n°s de mobil dans les tel fixes.
J'aimerais me connecter sur la base via access puis faire une routine,
pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s
en 06 dans les champs mobil et faire le tri dans les champs qui
contiennent plusieurs n°s
bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un
fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
En T-SQL on peut faire pas mal de choses comme on vous l'a déjà répondu.
Mais ça ne suffit pas toujours... Si vous êtes un peu coincé, alors il
faut appeler des expressions rationnelles, soit en développant un petit
script maison (Perl, WSH en VBs ou JS, ...) soit en utilisant des
transformations DTS avec Active Script.
Une base de données mal développé, c'est à dire aucun masque de saisie ! Resultat : dans les champs tel, tel2, mobil1 et mobil2 les téléphones sont saisis n'importe comment soit XX.XX.XX.XX.XX soit XX/XX/XX/XX/XX soit XXXXXXXXXX soit XX XX XX XX XX soit XX/XX/XX/XX/XX/XX-XX-XX-XX-XX Parfois il y a plusieurs n°s dans le champs ou des séparateurs différentsou des n°s de mobil dans les tel fixes. J'aimerais me connecter sur la base via access puis faire une routine, pour supprimer tous les ".", "/", "-", "espace" et mettre tous les n°s en 06 dans les champs mobil et faire le tri dans les champs qui contiennent plusieurs n°s bien sur quand il y a plusieurs n°s, il peut y avoir un mobil et un fixe mais pas toujours dans le bon ordre !!!
Si vous pouviez me donner une info sur comment proceder
En T-SQL on peut faire pas mal de choses comme on vous l'a déjà répondu. Mais ça ne suffit pas toujours... Si vous êtes un peu coincé, alors il faut appeler des expressions rationnelles, soit en développant un petit script maison (Perl, WSH en VBs ou JS, ...) soit en utilisant des transformations DTS avec Active Script.
Rudi Bruchez
Bonjour,
Pierre Goiffon a écrit:
Mais ça ne suffit pas toujours... Si vous êtes un peu coincé, alors il faut appeler des expressions rationnelles, soit en développant un petit
Ça fait plaisir de voir encore des gens qui utilisent la traduction française correcte : "expression rationnelle". Merci pour ça.