Conversion base Acess vers SQL

Résolu/Fermé
ordilibre - 12 déc. 2005 à 10:17
blux Messages postés 25978 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 19 avril 2024 - 25 mars 2008 à 22:27
Bonjour,

Me voilà confronté à la transcription d'une BDD Access vers SQL.
Tout va bien concernant les tables et les vues.
Par contre, dans access, je disposais de fonctions en VBA qui me permetaient d'insérer dans une colonne d'une requête un calcul du genre:

function qté (CA as double, Qté as double, qté2 as double) as double
if CA<0 et Qté>0 then qté=qté2
end function

Il me suffisait alors dans la requête Access, d'utiliser la fonction "qté (Ca, Qté, qté2)" dans une colonne et le tour était joué.

Comment puis-je reproduire ce principe dans SQL? Dois je utiliser plutot les "fonctions définies par utilisateur" ou les "procédures stockées"? Comment s'en servir dans les vues?

Ou puis je trouver un site claire présentant le sujet?

Merci d'avance de vos tuyaux et bonne journée.
A voir également:

8 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
8 nov. 2007 à 10:32
Bonjour,

Dans la barre de menu Access -> Outils -> Utilitaires de base de données -> Assistant de migration SQL Serveur, puis suivre les instructions.

;o)

Polux
4
blux Messages postés 25978 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 19 avril 2024 3 287
12 déc. 2005 à 10:39
Bonjour,

SQL n'est pas une base de données, mais un langage d'interrogation...

Nous ne pourrons pas t'aider tant que tu ne nous auras pas dit vers quel SGBDR tu veux migrer :

ORACLE, SQL Server, MySQL, DB2, Ingres, Informix...?
1
Oui, biensûr. Il s'agit d'une migration vers SQL server.
1
deus Messages postés 93 Date d'inscription mercredi 20 novembre 2002 Statut Membre Dernière intervention 24 mai 2007 91
12 déc. 2005 à 16:04
Salut,

a priori tu peux utiliser une User Defined function pour faire ça.
Si tu as Sql Server tu as probablement le BookOnline (fais F1 à partir du Entreprise Manager/query analyser).
C'est assez complet.
pour info voilà un exemple qui s'y trouve et qui pourrait t'aider:

CREATE FUNCTION ISOweek (@DATE datetime)
RETURNS int
AS
BEGIN
DECLARE @ISOweek int
SET @ISOweek= DATEPART(wk,@DATE)+1
-DATEPART(wk,CAST(DATEPART(yy,@DATE) as CHAR(4))+'0104')
--Special cases: Jan 1-3 may belong to the previous year
IF (@ISOweek=0)
SET @ISOweek=dbo.ISOweek(CAST(DATEPART(yy,@DATE)-1
AS CHAR(4))+'12'+ CAST(24+DATEPART(DAY,@DATE) AS CHAR(2)))+1
--Special case: Dec 29-31 may belong to the next year
IF ((DATEPART(mm,@DATE)=12) AND
((DATEPART(dd,@DATE)-DATEPART(dw,@DATE))>= 28))
SET @ISOweek=1
RETURN(@ISOweek)
END


ciao
0

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

Posez votre question
Un grand merci.

C'est effectivement comme cela que je vais m'y prendre.
Après une matinée de recherche, j'ai finalement trouvé.
J'ai buté un moment sur la définition d'une variable qui nécessite un @ dans sql server. C'est bête mais encore faut il le savoir.

Merci pour le lien vers l'aide.
0
salut

j'ai une base de donnee access je veux la convertir en sql server pouvez vous m'aider

merci
archnumrtt
a+
0
Bonjour a tous,
Je souhaite exploiter une base de donnée access sur PHP

Est il possible de la part de php de travailler avec access
Le but final est de creer un site web dynamiques pour exploiter ma base access
Merci
0
blux Messages postés 25978 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 19 avril 2024 3 287
25 mars 2008 à 22:27
Oui, tu peux accéder à ta base access via odbc sous php

https://www.php.net/odbc
0