[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-team] [SQL] Problme avec apostrophes et mise a jour
Bonjour,
Je bosse sur un programme qui me met a jour une base de donnee via SQL.
L'operation se deroule comme suit :
- il lit dans un fichier texte la nouvelle "base" (suite de lignes)
produit que donne un fournisseur,
- il pond une requete SQL et met a jour la vraie base de donnee.
Le probleme, c'est que :
- de nouveaux articles peuvent arriver
- le prix d'article existant deja peuvent changer
- des articles peuvent ne plus faire partie du catalogue fournisseur (mais
il faut les garder dans la base pour pouvoir imprimer les vieilles factures)
Les solutions respectives aux problemes :
- insert into Produit.......
- update Produit .......
- ne rien faire pour l'instant
Les problemes (respectifs) des solutions !! :
- ne met pas a jour un produit deja present
- ne rajoute pas un nouveau produit
Donc si vous avez une solution aux deux derniers problemes de solutions de
problemes !!! Et bien faites m'en part.
Sinon, toujours en SQL, mais dans une autre categorie, la designation de
certains article comporte une apostrophe ('). Mais l'apostrophe est le
separateur (l'encadreur) des valeurs alphanumeriques. Donc pour l'instant
je me cantonne a changer toutes les ' en ". Mais ca ne peut pas durer comme
ca apres la periode de developpement.
La encore : Solution -> j'suis preneur !
Pour info un (petit) extrait du fichier d'origine :
ACEA20 RECHARGE ACETYLENE REF ACEA20 DG 248,00
ACEA30 RECHARGE ACETYLENE REF ACEA30 DG 334,00
ACEA34 RECHARGE ACETYLENE REF ACEA34 DG 363,00
ACEA40 RECHARGE ACETYLENE REF ACEA40 DG 363,00
ACEA60 RECHARGE ACETYLENE REF ACEA60 DG 546,00
ACEA70 RECHARGE ACETYLENE REF ACEA70 DG 637,00
ARGB05 RECHARGE ARGON REF ARGB05 DG 292,00
ARGB20 RECHARGE ARGON REF ARGB20 DG 498,00
Il y a pres de 13000 lignes comme ca dans le fichier texte.
Pour info la solution actuelle, qui plante au bout de quelques
enregistrements (250), fait ceci :
- select * from produit;
- combien d'enregistrement resultant ?
- si 1 ou plus :
- update produit.....
- sinon
- insert into produit....
Et en plus cette manip prend un temps dingue... Je suis pret a aller
jusqu'a la procedure stockee s'il le faut, mais il faut que ca marche de
facon sur et certaine. Et pas a la vitesse d'un escargot, meme si il faudra
faire cette operation que tous les mois.
A+
Yo
/----------------------------/
/ M. MASSE /
/ masse@meon-com.fr /
/ Mobile 06 60 53 39 94 /
/ Fax 06 61 66 00 14 /
/ Meon Communication /
/ Comores - Anjouan 88 /
/ 521, ch du Puy /
/ 06600 ANTIBES /
/ FRANCE /
/----------------------------/
---------
Visit the Linux Supertore Online: http://www.redcorp.com !
If you want to be deleted from the list, send a mail to
majordomo@rtfm.be with "unsubscribe linux-team" in the body.