begin process at 2012 02 11 05:58:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

SQL Server, MSDE, SQL Express

 > 

Divers

 > 

Trigger ???


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Trigger ???

mardi 28 novembre 2006 à 11:07:21 | Trigger ???

BasicInstinct

Membre Club
bonjour tout le monde,

je cherche à remplacer des caractères parasites à l'insertion ou modification de données effectuées par un programme tierce ( dont je n'ai pas les sources).

En gros, j'ai une table 'maTable', qui possede un champ 'monChamp'.
je veux remplacer les retours chariots (13+10)  par un espace a l'insertion et modification de données.

Si j'ai tout compris, il faut que je crée un trigger, mais je suis complètement perdu.

Y'aurait il une ame charitable pour me donner un petit coup de main ?



BasicInstinct
samedi 16 décembre 2006 à 13:37:56 | Re : Trigger ???

skweeky

Membre Club Administrateur CodeS-SourceS
Bonjour,

Pour la partie remplacement personnellement je ferais un REPLACE sur les caractères CHAR(10) et CHAR(13).

Après tout dépend on peut très mettre la commande remplacement dans la requête qui fait l'insertion :

INSERT INTO MaTable(MonChamp)
SELECT REPLACE(MonChamp2, CHAR(10), '')

Idem sur un UPDATE... Sinon c'est effectivement possible dans un trigger :

CREATE TRIGGER MonTrigger ON MaTable FOR INSERT
AS

UPDATE MaTable
SET MonChamp = REPLACE(MonChamp, CHAR(10), '')
WHERE MonId IN (SELECT MonId FROM inserted)

GO

En fait la "pseudo" table inserted contient la liste des enregistrements qui ont été inserés (le trigger s'execute après l'insertion).
Je fais un UPDATE sur la table comme je l'aurais fait pour mettre à jour le champ, et j'indique dans le WHERE que la liste des enregistrement se fait grace à MonId basé sur les enregistrements insérés.

Il a d'autres possibilités aussi...

Cordialement,

Christian Robert - Winwise
http://blogs.developpeur.org/christian/
MCT - Database Development / Database Administration


Cette discussion est classée dans : données, insertion, remplacer, modification, trigger


Répondre à ce message

Sujets en rapport avec ce message

[trigger] Ajouter le n° de client lors d'une insertion d'enregistrement [ par gderenne ] Bonjour,J'ai développé un Trigger pour concevoir un n° de client de type 2006-00011 afin de l'ajouter à l'enregistrement que mon appli inserera dans l Insertion de données [ par Hirald ] Alors, voilà mon problème,J'ai 2 tables, la première contient les champs a,b,c,g et la deuxieme, les champs d,e,f,gJ'ai crée une autre table avec les insertion des données dans ma base [ par d3dzied ] bon soire j'ai essai ce code sur mysql INSERT INTO client (`nomclient`,'preclient') VALUES ('ddd','dhhfhj');MySQL a répondu:#1064 - Erreur de syntaxe help insertion de données [ par tommie ] bonjour, j'ai une base ACCESS avec une table enfant qui est faite de la forme:matricule numeriquedate_naissance datenumenfant numeriqueavec comme donn Trigger et recupération des données [ par croftman ] Bonjour! Voila j'ai ce trigger : [code=autre]DELIMITER | DROP TRIGGER test| CREATE TRIGGER test BEFORE DELETE ON clients FOR EACH ROW BEGIN DECL SQL 2000 insertion [ par rikardo ] bonjour, je fais une insertion de masse avec une requete du type insert into TABLE1(CHAMP1,CHAMP2.) SELECT a.champ1,b.champ2 FROM ... cette requete Insertion des données dans 2tables !! [ par goldray ] Salut à tous , j'ai une table nommé : Client d'attributs : Id_Client,Nom_Client,Adresse_Client,Tel_Client,Gsm,Client . la 2éme table ,qui est une tabl Date de modification des données d'une table [ par demonsurf ] Bonjour à tous. J'explique mon problème : j'ai besoin de pouvoir contrôler la date de la dernière modification des tables de ma BDD. Je fais déjà un Langue étrangere et outils ETL [ par Ncasty ] Bonjour, Etant dans une entreprise internationale, je suis venu ici pour connaitre plus à propos d'outils ETL et les langues dans lesquelles on peut


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,794 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales