voici mon pb.
J'ai développé un module d'intégration de fichiers excel basé sur des
descriptions XML.
Mes données sont chargées dans une table mémoire selon ces
descriptions, Puis en intégration, je vais générer des ordres insert
(en bulk) ou update que je déclencherai après avoir relu ma table
mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais
contrôler. Si un drole s'avise de me créer dans un meme fichier deux
lignes avec un meme identifiant, je vais être dans la situation d'un
plantage sur clé en double.
Ma question est très simple :
de quelle façon puis je m'assurer dans une colonne de table mémoire
qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ...
tout ça me semble un peu lourd et long. N'y aurait-il pas une
instruction magique ?
Merci de vos réponses.
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
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
Gilles
Dans son message précédent, Roumégou Eric a écrit :
Bonjour,
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Heuuu? Tablecherche?? Ou alors j'ai pas compris le besoin ;) (Mais ça m'étonne que tu ne connaisses pas ça, donc je dois mal comprendre le besoin ;) )
Dans son message précédent, Roumégou Eric a écrit :
Bonjour,
Ma question est très simple :
de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y
ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout
ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique
?
Heuuu? Tablecherche?? Ou alors j'ai pas compris le besoin ;)
(Mais ça m'étonne que tu ne connaisses pas ça, donc je dois mal
comprendre le besoin ;) )
Dans son message précédent, Roumégou Eric a écrit :
Bonjour,
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Heuuu? Tablecherche?? Ou alors j'ai pas compris le besoin ;) (Mais ça m'étonne que tu ne connaisses pas ça, donc je dois mal comprendre le besoin ;) )
Firetox
bonjour,
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
bon deb @+
"Roumégou Eric" a écrit dans le message de news:
Bonjour,
voici mon pb. J'ai développé un module d'intégration de fichiers excel basé sur des descriptions XML. Mes données sont chargées dans une table mémoire selon ces descriptions, Puis en intégration, je vais générer des ordres insert (en bulk) ou update que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Merci de vos réponses.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
bonjour,
mettre replace a la place d'insert dans ton bulk
et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens
et si le fichier est vide en destination comme insert mais sans doublon
bon deb
@+
"Roumégou Eric" <UtilisezleLien@fin.msg> a écrit dans le message de
news:mn.2cc07da376b65a68.97767@fin.msg...
Bonjour,
voici mon pb.
J'ai développé un module d'intégration de fichiers excel basé sur des
descriptions XML.
Mes données sont chargées dans une table mémoire selon ces descriptions,
Puis en intégration, je vais générer des ordres insert (en bulk) ou update
que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais
contrôler. Si un drole s'avise de me créer dans un meme fichier deux
lignes avec un meme identifiant, je vais être dans la situation d'un
plantage sur clé en double.
Ma question est très simple :
de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il
n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ...
tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction
magique ?
Merci de vos réponses.
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
bon deb @+
"Roumégou Eric" a écrit dans le message de news:
Bonjour,
voici mon pb. J'ai développé un module d'intégration de fichiers excel basé sur des descriptions XML. Mes données sont chargées dans une table mémoire selon ces descriptions, Puis en intégration, je vais générer des ordres insert (en bulk) ou update que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Merci de vos réponses.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Gilles
Dans son message précédent, Firetox a écrit :
bonjour,
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
J'utiliserai pas replace dans un cas pareil... S'il y a deux lignes dans le fichier, il y en a une des deux qui est bonne... écraser arbitrairement avec une des deux valeurs, fonctionnellement...
En outre, replace faisant un delete/insert et pas un update, les effets ne sont pas mineurs sur les logs.
A utiliser avec parcimonie. Ca ne devrait pas être utilisé comme paliatif à une erreur dans un fichier en entrée.
Ce n'est qu'un avis personnel ;)
Dans son message précédent, Firetox a écrit :
bonjour,
mettre replace a la place d'insert dans ton bulk
et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens
et si le fichier est vide en destination comme insert mais sans doublon
J'utiliserai pas replace dans un cas pareil...
S'il y a deux lignes dans le fichier, il y en a une des deux qui est
bonne... écraser arbitrairement avec une des deux valeurs,
fonctionnellement...
En outre, replace faisant un delete/insert et pas un update, les effets
ne sont pas mineurs sur les logs.
A utiliser avec parcimonie. Ca ne devrait pas être utilisé comme
paliatif à une erreur dans un fichier en entrée.
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
J'utiliserai pas replace dans un cas pareil... S'il y a deux lignes dans le fichier, il y en a une des deux qui est bonne... écraser arbitrairement avec une des deux valeurs, fonctionnellement...
En outre, replace faisant un delete/insert et pas un update, les effets ne sont pas mineurs sur les logs.
A utiliser avec parcimonie. Ca ne devrait pas être utilisé comme paliatif à une erreur dans un fichier en entrée.
Ce n'est qu'un avis personnel ;)
Firetox
BOnjour,
prenons un exemple
je fait les insert si j'ai un doublon je ne met qu'une ligne (sinon cela revien a tester tout le fichier sur toutes le colonne pour determiner si l'enreg est bon ou non). comme erci fait des insert je suppose que le fichier destination est vide sinon ily aurais un mecaniseme qui verifierais si'il faut faire un update (peut etre est ce le cas)
donc suivant ce cas et l'algo de la fonction REPLACE : elle conveint parfaitement
1. Insertion de la ligne dans la table 2. Si une erreur de clé dupliqué ou de clé unique ou de clé primaire survient : 1.Annuler les changements de clés 2 Delete de la ligne dans la table correspondante 3.Essayer à nouveau d'insérer la clé primaire et unique dans la table
mais effectivement j'utilise ce mecanisme sur des inserts sur une table vide en fonction soit d'un select soit d'un fichier mais je ne doit pas m'arreter au doublon et si doublon il y a les 2 lignes sont correctes mais identiques donc aucun souci avec le REPLACE
tout depend de la finalite
sinon il faut le faire au moment du chargement de la table memoire (savoir s'il ya un doublon avec tableCherche et savoir si la ligne en doublon est bonne ou non (peut etre que c'etait la premiere qui n'etait pas bonne)
Bon dev @+
"Gilles" a écrit dans le message de news:4b92069e$0$24284$
Dans son message précédent, Firetox a écrit :
bonjour,
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
J'utiliserai pas replace dans un cas pareil... S'il y a deux lignes dans le fichier, il y en a une des deux qui est bonne... écraser arbitrairement avec une des deux valeurs, fonctionnellement...
En outre, replace faisant un delete/insert et pas un update, les effets ne sont pas mineurs sur les logs.
A utiliser avec parcimonie. Ca ne devrait pas être utilisé comme paliatif à une erreur dans un fichier en entrée.
Ce n'est qu'un avis personnel ;)
BOnjour,
prenons un exemple
je fait les insert si j'ai un doublon je ne met qu'une ligne (sinon cela
revien a tester tout le fichier sur toutes le colonne pour determiner si
l'enreg est bon ou non).
comme erci fait des insert je suppose que le fichier destination est vide
sinon ily aurais un mecaniseme qui verifierais si'il faut faire un update
(peut etre est ce le cas)
donc suivant ce cas et l'algo de la fonction REPLACE : elle conveint
parfaitement
1. Insertion de la ligne dans la table
2. Si une erreur de clé dupliqué ou de clé unique ou de clé primaire
survient :
1.Annuler les changements de clés
2 Delete de la ligne dans la table correspondante
3.Essayer à nouveau d'insérer la clé primaire et unique dans la
table
mais effectivement j'utilise ce mecanisme sur des inserts sur une table vide
en fonction soit d'un select soit d'un fichier mais je ne doit pas m'arreter
au doublon et si doublon il y a les 2 lignes sont correctes mais identiques
donc aucun souci avec le REPLACE
tout depend de la finalite
sinon il faut le faire au moment du chargement de la table memoire (savoir
s'il ya un doublon avec tableCherche et savoir si la ligne en doublon est
bonne ou non (peut etre que c'etait la premiere qui n'etait pas bonne)
Bon dev
@+
"Gilles" <boulot_NOSPAM_ARETIRER@neogie.com> a écrit dans le message de
news:4b92069e$0$24284$426a74cc@news.free.fr...
Dans son message précédent, Firetox a écrit :
bonjour,
mettre replace a la place d'insert dans ton bulk
et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens
et si le fichier est vide en destination comme insert mais sans doublon
J'utiliserai pas replace dans un cas pareil...
S'il y a deux lignes dans le fichier, il y en a une des deux qui est
bonne... écraser arbitrairement avec une des deux valeurs,
fonctionnellement...
En outre, replace faisant un delete/insert et pas un update, les effets ne
sont pas mineurs sur les logs.
A utiliser avec parcimonie. Ca ne devrait pas être utilisé comme paliatif
à une erreur dans un fichier en entrée.
je fait les insert si j'ai un doublon je ne met qu'une ligne (sinon cela revien a tester tout le fichier sur toutes le colonne pour determiner si l'enreg est bon ou non). comme erci fait des insert je suppose que le fichier destination est vide sinon ily aurais un mecaniseme qui verifierais si'il faut faire un update (peut etre est ce le cas)
donc suivant ce cas et l'algo de la fonction REPLACE : elle conveint parfaitement
1. Insertion de la ligne dans la table 2. Si une erreur de clé dupliqué ou de clé unique ou de clé primaire survient : 1.Annuler les changements de clés 2 Delete de la ligne dans la table correspondante 3.Essayer à nouveau d'insérer la clé primaire et unique dans la table
mais effectivement j'utilise ce mecanisme sur des inserts sur une table vide en fonction soit d'un select soit d'un fichier mais je ne doit pas m'arreter au doublon et si doublon il y a les 2 lignes sont correctes mais identiques donc aucun souci avec le REPLACE
tout depend de la finalite
sinon il faut le faire au moment du chargement de la table memoire (savoir s'il ya un doublon avec tableCherche et savoir si la ligne en doublon est bonne ou non (peut etre que c'etait la premiere qui n'etait pas bonne)
Bon dev @+
"Gilles" a écrit dans le message de news:4b92069e$0$24284$
Dans son message précédent, Firetox a écrit :
bonjour,
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
J'utiliserai pas replace dans un cas pareil... S'il y a deux lignes dans le fichier, il y en a une des deux qui est bonne... écraser arbitrairement avec une des deux valeurs, fonctionnellement...
En outre, replace faisant un delete/insert et pas un update, les effets ne sont pas mineurs sur les logs.
A utiliser avec parcimonie. Ca ne devrait pas être utilisé comme paliatif à une erreur dans un fichier en entrée.
Ce n'est qu'un avis personnel ;)
JeAn-PhI
Roumégou Eric a exposé le 05/03/2010 :
Bonjour,
voici mon pb. J'ai développé un module d'intégration de fichiers excel basé sur des descriptions XML. Mes données sont chargées dans une table mémoire selon ces descriptions, Puis en intégration, je vais générer des ordres insert (en bulk) ou update que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Merci de vos réponses.
lors du chargement de la table mémoire pourquoi ne pas stocker les id dans un tableau avant l'ajout dans la table mémoire et finalement n'ajouter dans la table mémoire que les id sans doublons
-- Cordialement JeAn-PhI
Roumégou Eric a exposé le 05/03/2010 :
Bonjour,
voici mon pb.
J'ai développé un module d'intégration de fichiers excel basé sur des
descriptions XML.
Mes données sont chargées dans une table mémoire selon ces descriptions, Puis
en intégration, je vais générer des ordres insert (en bulk) ou update que je
déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler.
Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme
identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple :
de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y
ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout
ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique
?
Merci de vos réponses.
lors du chargement de la table mémoire pourquoi ne pas stocker les id
dans un tableau avant l'ajout dans la table mémoire et finalement
n'ajouter dans la table mémoire que les id sans doublons
voici mon pb. J'ai développé un module d'intégration de fichiers excel basé sur des descriptions XML. Mes données sont chargées dans une table mémoire selon ces descriptions, Puis en intégration, je vais générer des ordres insert (en bulk) ou update que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Merci de vos réponses.
lors du chargement de la table mémoire pourquoi ne pas stocker les id dans un tableau avant l'ajout dans la table mémoire et finalement n'ajouter dans la table mémoire que les id sans doublons
-- Cordialement JeAn-PhI
Roumégou Eric
Firetox a exposé le 05/03/2010 :
bonjour,
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
bon deb @+
Merci de vos réponses à tous.
oui ce peut être une solution.
Mais est-ce que cela marche en mysql 4.22 ? N'est ce pas plus pénalisant qu'un insert ? Cela marche en bulk ?
En fait je veux contrôler qq chose qui n'est pas sensé arriver, mais je ne voudrais pas que cela alourdisse trop le traitement.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Firetox a exposé le 05/03/2010 :
bonjour,
mettre replace a la place d'insert dans ton bulk
et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens
et si le fichier est vide en destination comme insert mais sans doublon
bon deb
@+
Merci de vos réponses à tous.
oui ce peut être une solution.
Mais est-ce que cela marche en mysql 4.22 ?
N'est ce pas plus pénalisant qu'un insert ?
Cela marche en bulk ?
En fait je veux contrôler qq chose qui n'est pas sensé arriver, mais je
ne voudrais pas que cela alourdisse trop le traitement.
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
mettre replace a la place d'insert dans ton bulk et tu n'auras pas de doublon
replace = insert des nouveaux , update des anciens et si le fichier est vide en destination comme insert mais sans doublon
bon deb @+
Merci de vos réponses à tous.
oui ce peut être une solution.
Mais est-ce que cela marche en mysql 4.22 ? N'est ce pas plus pénalisant qu'un insert ? Cela marche en bulk ?
En fait je veux contrôler qq chose qui n'est pas sensé arriver, mais je ne voudrais pas que cela alourdisse trop le traitement.
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roumégou Eric
Le 06/03/2010, JeAn-PhI a supposé :
Roumégou Eric a exposé le 05/03/2010 :
Bonjour,
voici mon pb. J'ai développé un module d'intégration de fichiers excel basé sur des descriptions XML. Mes données sont chargées dans une table mémoire selon ces descriptions, Puis en intégration, je vais générer des ordres insert (en bulk) ou update que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Merci de vos réponses.
lors du chargement de la table mémoire pourquoi ne pas stocker les id dans un tableau avant l'ajout dans la table mémoire et finalement n'ajouter dans la table mémoire que les id sans doublons
oui mais je me demandais s'il n'y avait pas plus rapide ? je vais surement en arriver à cette solution
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Le 06/03/2010, JeAn-PhI a supposé :
Roumégou Eric a exposé le 05/03/2010 :
Bonjour,
voici mon pb.
J'ai développé un module d'intégration de fichiers excel basé sur des
descriptions XML.
Mes données sont chargées dans une table mémoire selon ces descriptions,
Puis en intégration, je vais générer des ordres insert (en bulk) ou update
que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais
contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes
avec un meme identifiant, je vais être dans la situation d'un plantage sur
clé en double.
Ma question est très simple :
de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il
n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ...
tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction
magique ?
Merci de vos réponses.
lors du chargement de la table mémoire pourquoi ne pas stocker les id dans un
tableau avant l'ajout dans la table mémoire et finalement n'ajouter dans la
table mémoire que les id sans doublons
oui mais je me demandais s'il n'y avait pas plus rapide ?
je vais surement en arriver à cette solution
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
voici mon pb. J'ai développé un module d'intégration de fichiers excel basé sur des descriptions XML. Mes données sont chargées dans une table mémoire selon ces descriptions, Puis en intégration, je vais générer des ordres insert (en bulk) ou update que je déclencherai après avoir relu ma table mémoire.
ça marche comme je veux mais il y a juste un truc que je voudrais contrôler. Si un drole s'avise de me créer dans un meme fichier deux lignes avec un meme identifiant, je vais être dans la situation d'un plantage sur clé en double.
Ma question est très simple : de quelle façon puis je m'assurer dans une colonne de table mémoire qu'il n'y ait pas deux fois la mème valeur ?
tabletrie puis verif rupture, lire et stocker dans une zone mémoire ... tout ça me semble un peu lourd et long. N'y aurait-il pas une instruction magique ?
Merci de vos réponses.
lors du chargement de la table mémoire pourquoi ne pas stocker les id dans un tableau avant l'ajout dans la table mémoire et finalement n'ajouter dans la table mémoire que les id sans doublons
oui mais je me demandais s'il n'y avait pas plus rapide ? je vais surement en arriver à cette solution
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)