Accesstablescript

Soyez le premier à donner votre avis sur cette source.

Vue 7 433 fois - Téléchargée 687 fois

Description

Petit outils permettant de générer des scripts de création de table au format SQL 2000 à partir d'une base de données Access.

Pour un projet au boulot, je devais migrer les données d'une base Access vers une base SQL 2000.
L'outil intégré à Access ne me convenait pas, étant donné que je devais aussi faire des modifications dans la structure de la base.
J'ai donc pris l'option de me faire assez rapidement un p'tit outil pendant mes temps libres.

Pour accéder aux informations des tables, j'utilise une connexion ADO et la méthode "OpenSchema". Par contre, pour les types Identity (auto_incrément), je n'ai pas réussit par cette méthode, je passe par une requête select classique, puis je regarde les propriétés du champs. Je le fait seulement sur les types entier long.
Je suis preneur d'une solution par la méthode "OpenSchema", pour les champs auto-incrément.

Le fonctionnement est très simple, il suffit de sélectionner la base Access en cliquant sur le bouton à coté du champs "Base Access". D'entrer le mot de passe si besoin, de cliquer sur "Connexion", de sélectionner la ou les tables voulues puis de cliquer sur "Créer la requête".

Source / Exemple :


Tout est dans le ZIP.

Conclusion :


Egalement disponible ici : http://manshivassoft.free.fr/blog/index.php?2008/03/24/3-accesstablescript

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
4
Date d'inscription
dimanche 15 janvier 2006
Statut
Membre
Dernière intervention
6 mai 2008

Salut,

j'arrive aux mêmes remarques que CRAMFR, après avoir moi-même ajouté ces [ et ] dans ta fonction ifIndentity

--> rs.Open "SELECT TOP 1 [" & strChamps & "] FROM [" & strTable & "]", cnx, adOpenKeyset, adLockOptimistic

...eh oui, le monde n'est pas encore parfait, des noms de colonnes et de tables avec des espaces..mais il faut croire que c'est voulu puisque Sql server le permet également ;-)

En tout cas, bravo pour cette démonstration / compilation , bon boulot.
Messages postés
160
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
8 juillet 2008

Salut,
Oui je sais que les espaces ne sont pas recommander mais j'ai testé sur une appli de 108 tables. imagine pour trouver la bonne table... J'ai donc regroupé par type en définissant après le groupe un " - " et la precision concernant la table comme çà je ne cherche pas 3 heures ;-)

@+
cramfr
Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008

Merci pour tes remarques,

Je ferrais prochainement une correction.
Le projet pour lequel je l'ai faites est retardé, je n'ai donc pas eut l'occasion de la tester en "réel", pas mois de 31 tables à basculer, ce qui permettra de faire un bon test...
Sinon, quel idée de mettre des espaces dans des noms de table... ;-), j'ai pire que ça sur des applis en maintenance.....
Messages postés
160
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
8 juillet 2008

Encore un souci pour des valeurs par defaut sous forme de chaîne de caractère il faut mettre ' au lieu de " sinon problème au niveau de l'importation

bonne continuation,
cramfr
Messages postés
160
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
8 juillet 2008

Bonjour,
J'ai utilisé ton application pour voir. Le but est interessant. Mais il est vraiment dommage que sur des PRIMARY KEY On trouve des NULL avec DEFAULT 0 ;-)

Autre petit souci, Si les tables comportent des espaces il y a un plantage... Pense à mettre des [ et ] autour des noms des tables

Cramfr

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.