Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD > Migration
Migration Forum d'entraide sur la migration de bases de données
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/02/2005, 20h12   #1
Membre du Club
 
Inscription : février 2004
Messages : 237
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 237
Points : 52
Points : 52
Par défaut Migration Access vers Oracle

Salut à tous,

Voila j'ai fait une base de données sous access et un programme qui la gère (visualisation des données, saisie des données, modification des données...).

Cependant je dois maintenant le faire sous Oracle 8i!
j'ai son descriptif SQL et tout semble OK! j'ai gardé le même nom de table... Mais je me pose une question au niveau des requêtes cela va t-il changer?

Par exemple mon soucis majeur se trouve au niveau de l'insertion avec un numéro automatique! Ce que je fais c'est une requete qui récupère le plus grand numéro (select max()) et ensuite dans mon programme j'incrément le compteur et j'introduit la nouvelle ligne!

Est ce que cela va toujours fonctionner?
ou se trouve les grandes différences entre acces et oracle?
Pfeffer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2005, 21h02   #2
Expert Confirmé
 
Avatar de LeoAnderson
 
Inscription : septembre 2004
Messages : 2 942
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 2 942
Points : 2 972
Points : 2 972
Sous Access, l'auto-increment existe en type standard, il me semble.
Par contre, je suis sûr que sous Oracle, il n'existe pas mais il existe une technique assez simple (trigger+sequence) pour l'implémenter, mais en en aucun cas il ne faut passer par un select max() ....


Sinon, au niveau des différences entre Access et Oracle ? c'est comme si je vous demandais la différence entre un studio et un loft ! ;-)
LeoAnderson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2005, 21h13   #3
Membre du Club
 
Inscription : février 2005
Messages : 68
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 68
Points : 45
Points : 45
access une base de données ??? :-)
mollux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2005, 21h44   #4
Membre du Club
 
Inscription : février 2004
Messages : 237
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 237
Points : 52
Points : 52
Merci de vos réponses mais pourquoi il ne faut pas passer par un SElect max()?

Je trouvais que c'était une bonne solution!

Est ce qu'on est obligé de mettre un point virgule à chaque fon de requête sous Oracle par exemple! Je sais que pour access il n' y en a pas besoin!
Pfeffer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2005, 09h51   #5
Membre du Club
 
Inscription : février 2005
Messages : 68
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 68
Points : 45
Points : 45
le ; est obligatoire sous oracle et on ne peut faire autrement ...
mollux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2005, 09h57   #6
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
Citation:
Envoyé par Pfeffer
Merci de vos réponses mais pourquoi il ne faut pas passer par un SElect max()?

Je trouvais que c'était une bonne solution!
simplement parce que c'est très peu performant, imagine un select max sur plusieurs millions de lignes ... ça prendrait plusieurs minutes pour faire un insert de quelques millisecondes en passant par les séquences
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h47.


 
 
 
 
Partenaires

Hébergement Web