Réinitialisation d'un BDD

Résolu
Dane6 Messages postés 24 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 28 mai 2008 - 26 mai 2008 à 23:16
Dane6 Messages postés 24 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 28 mai 2008 - 28 mai 2008 à 21:59
Bonjour,

Existe il une synthaxe pour vider complètement les champs d'une table, d'une base de données ? Sans supprimer les champs, ni la table, ni la base de données...

Merci

5 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
28 mai 2008 à 20:52
Re
ADODC a l'avantage de pouvoir coupler directement les données à des composants.
ADODB n'est qu'une connexion sans interface pour les données, mais beaucoup plus souple dès qu'il s'agit de lancer des requètes.

C'est plutôt ADODB qu'il te faudrait utiliser.
Si tu n'es pas familier de composant, charge quelques sources que tu trouveras avec le mot ADODB
+ le lien que je t'ai donné dans ma réponse précédente.

Côté ADODC, je n'ai pas l'expérience.
Je pense qu'en lisant une ou deux sources que tu trouveras avec le mot ADODC, tu verras comment supprimer UN enregistrement, suffira de regarder s'il est possible de faire la même chose à plus large échelle.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
26 mai 2008 à 23:56
Salut
Oui, une commande SQL :   "Delete ù From maTable" supprimera tous les enregistrements de la table sans toucher à la structure.
Bémol : Avec les bases de données Access, on a beau supprimer les enregistrements, le fichier de la BDD garde pratiquement sa taille.
Pour retrouver la taille normale, il faut lui faire un compactage : Menu "Outils", "Utilitaire de base de données", "Compactage"
Hélas, il s'agit d'une procédure du programme Access et non d'une propriété de la BDD.
Impossible donc de reproduire la même chose avec une simple commande.

En fait, ce que fait le compactage :
- Ouvre une BDD vierge
- Recréé la structure des tables identique à ta BDD
- Transfère les données de chaque table dans cette nouvelle BDD
- Supprime ton acienne DBB
- Renomme la nouvelle avec le nom de l'ancienne.
Les données ainsi réécrite fraichement n'utiliseront que leur espace, donc un minimum.
Voir <ce code> qui permet de recopier la structure d'une DB
Attention toutefois si tu as des relations (ou des trucs compliqués), je ne me rappelle plus si cette source les reproduit aussi

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
26 mai 2008 à 23:57
Delete * From maTable
( *, pas ù)
0
Dane6 Messages postés 24 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 28 mai 2008
27 mai 2008 à 19:00
Où dois-je placer ce code ? Je dois utiliser un adodc ? et place le code dans la recherche SQL ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dane6 Messages postés 24 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 28 mai 2008
28 mai 2008 à 21:59
Merci
0
Rejoignez-nous