Script SQLite

Résolu/Fermé
babagreen Messages postés 102 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 1 juin 2015 - 20 mai 2015 à 10:57
babagreen Messages postés 102 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 1 juin 2015 - 22 mai 2015 à 15:21
Bonjour,
J'ai généré un script SQLite avec la création des tables, des indexes et les insertions.

Pour ce qui est des tables et des indexes aucuns soucis, mais pour les insertions il y a un soucis quasiment toutes les données ne vont pas.
Par exemple dans la table client j'ai nom_clien qui est un varchar de 50, les clients n'ont pas tous un nom de 50 caractères de long et lors de la création du script ça a automatiquement complété les nom inférieur à 50 caractères par des espaces après. Ce qui propose problème car BDD est utiliser sur windev et la personne charger de faire les tests à le problème suivant:
Quand elle lance une requête par exemple select nom_clien from client where nom_clien = 'sdb';
il n'y a pas de retour du client sdb car le nom à été enregistrer avec les espaces.

Savez vous comment dans le script je peut supprimer ces espaces?
Et pas à la main car la base contient énormément de données je ne peut donc pas toutes les modifier une par une.

Merci.
A voir également:

3 réponses

Utilisateur anonyme
20 mai 2015 à 15:25
Bonjour

Pas facile de dire quoi modifier dans ton script sans savoir à quoi il ressemble. Il est sûrement mal fichu pour ajouter des espaces comme ça.
Par contre, tu peux facilement supprimer les espaces en trop avec une simple requête :
UPDATE client SET nom_clien=trim(nom_clien)
0
babagreen Messages postés 102 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 1 juin 2015 1
Modifié par babagreen le 20/05/2015 à 16:05
Alors le soucis c'est que il n'y a pas que nom_clien qui est comme ça ça me l'a fait pour tous.
et en base si je regarde les données pour le nom sdb ba il a enregistré 'sdb '
et tous faire à la main ça va être long le script fait près de 70 000 lignes, 110 tables
0
Utilisateur anonyme
20 mai 2015 à 16:44
Alors il faut prendre le mal à la source et corriger ce programme qui invente des espaces là où il n'y en a pas. D'où le sors-tu ?
0
babagreen Messages postés 102 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 1 juin 2015 1
22 mai 2015 à 09:18
Alors j'utilisais full converter 6.11
0
Utilisateur anonyme
22 mai 2015 à 15:04
J'ai fait une petite recherche, j'ai trouvé un full converter 6.11 chez softpedia. Si c'est bien celui-là, à 300€, je ne vais pas l'essayer. Mais à ce prix là, je suis sûr (enfin, j'espère ...) qu'il y a moyen de le paramétrer correctement pour qu'il n'ajoute pas de caractères superflus.

Sinon, il ne doit quand même pas être très difficile de faire une boucle sur toutes les tables qui corrige tous les champs avec la requête que je t'ai donnée plus haut. Je ne dis pas que ça se fait en cinq minutes, mais ça ne devrait pas te prendre toute la journée non plus d'écrire deux "for" imbriqués.
0
babagreen Messages postés 102 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 1 juin 2015 1
22 mai 2015 à 15:21
Oui c'est celui là de logiciel ouais 2for c'est maxi 5 minutes à écrire
0