inserer des champs d'un formulaire dans une requete SQL - ODBC
1 réponse
sirgio
Bonjour, je desire importer ponctuellement (une fois pas mois) des
données d'une base oracle vers Access, la base oracle n'etant pas
toujours accessible.
En ODBC avec DSN ...
Pour cela je dispose de la requete "importation de données" suivante:
where T1."NUM_CLIENT_LIVR"=T2."NUM_CLIENT" and
T1."DATE_CREATION" between to_date('2002-09-01
00:00:00', 'YYYY-MM-DD HH24:MI:SS') and to_date('2002-09-30 00:00:00',
'YYYY-MM-DD HH24:MI:SS') and
T1."CODE_CIAL"<>'PORT'
order by 10 asc, 1 asc, 2 asc
quand je clique sur cette requete, elle s'execute bien et j'obtiens
toutes les données que je veux!
Ce que je voudrais maintenant c'est la lancer a partir d'un formulaire
en passant en parametre les dates.
Mon problème:
cette requete ne s'ouvre qu'en mode SQL ou feuilles de données mais
pas en mode création, et surtout je ne peux pas y mettre des trucs du
genre "forms!nom_formulaire!nom_champs ... parceque c'est pas du SQl
!!
étant un super debutant, la solution est peut etre simple, mais ...
pas pour moi!
merci pour votre aide
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Benoit Compoint [MS]
Bonsoir,
Vous pouvez exécuter des requêtes SELECT INTO pour importer des données d'une base Oracle dans une base Access.
Les requêtes de type SELECT INTO diffèrent de votre requête puisque ce ne sont pas des requêtes "SQL Direct". Les fonctions définies au niveau d'Oracle ne sont donc pas utilisables dans ces requêtes SELECT INTO.
Mais vous pouvez utiliser des fonctions VBA à la place des fonctions "Oracle".
En reprenant votre exemple, vous pouvez essayer de remplacer : TO_CHAR(T1."DATE_CREATION" ,'YYYY') par : Format(T1.DATE_CREATION ,'YYYY') ou par : Year(T1.DATE_CREATION)
Exemple de requête SELECT INTO créant une table dans la base MDB à partir de deux tables stockées dans une base SQL Server :
SELECT orders.OrderID INTO MesCommandes FROM [ODBC;DRIVER=SQL Server;SERVER=(local);UID=sa;PWD=sesame;DATABASE=NorthwindCS].orders, [ODBC;DRIVER=SQL Server;SERVER=(local);UID=sa;PWD=sesame;DATABASE=NorthwindCS].employees WHERE (((orders.EmployeeID)=employees.employeeID));
Benoit Compoint
"Serge" wrote in message news:
Bonjour, je desire importer ponctuellement (une fois pas mois) des données d'une base oracle vers Access, la base oracle n'etant pas toujours accessible. En ODBC avec DSN ... Pour cela je dispose de la requete "importation de données" suivante:
where T1."NUM_CLIENT_LIVR"=T2."NUM_CLIENT" and T1."DATE_CREATION" between to_date('2002-09-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS') and to_date('2002-09-30 00:00:00', 'YYYY-MM-DD HH24:MI:SS') and T1."CODE_CIAL"<>'PORT'
order by 10 asc, 1 asc, 2 asc
quand je clique sur cette requete, elle s'execute bien et j'obtiens toutes les données que je veux!
Ce que je voudrais maintenant c'est la lancer a partir d'un formulaire en passant en parametre les dates.
Mon problème: cette requete ne s'ouvre qu'en mode SQL ou feuilles de données mais pas en mode création, et surtout je ne peux pas y mettre des trucs du genre "forms!nom_formulaire!nom_champs ... parceque c'est pas du SQl !!
étant un super debutant, la solution est peut etre simple, mais ... pas pour moi! merci pour votre aide
Bonsoir,
Vous pouvez exécuter des requêtes SELECT INTO pour importer des données
d'une base Oracle dans une base Access.
Les requêtes de type SELECT INTO diffèrent de votre requête puisque ce ne
sont pas des requêtes "SQL Direct".
Les fonctions définies au niveau d'Oracle ne sont donc pas utilisables dans
ces requêtes SELECT INTO.
Mais vous pouvez utiliser des fonctions VBA à la place des fonctions
"Oracle".
En reprenant votre exemple, vous pouvez essayer de remplacer :
TO_CHAR(T1."DATE_CREATION" ,'YYYY')
par :
Format(T1.DATE_CREATION ,'YYYY')
ou par :
Year(T1.DATE_CREATION)
Exemple de requête SELECT INTO créant une table dans la base MDB à partir de
deux tables stockées dans une base SQL Server :
SELECT orders.OrderID INTO MesCommandes
FROM [ODBC;DRIVER=SQL
Server;SERVER=(local);UID=sa;PWD=sesame;DATABASE=NorthwindCS].orders,
[ODBC;DRIVER=SQL
Server;SERVER=(local);UID=sa;PWD=sesame;DATABASE=NorthwindCS].employees
WHERE (((orders.EmployeeID)=employees.employeeID));
Benoit Compoint
"Serge" <sirgio@caramail.com> wrote in message
news:75ee4546.0401130313.63e3e67b@posting.google.com...
Bonjour, je desire importer ponctuellement (une fois pas mois) des
données d'une base oracle vers Access, la base oracle n'etant pas
toujours accessible.
En ODBC avec DSN ...
Pour cela je dispose de la requete "importation de données" suivante:
where T1."NUM_CLIENT_LIVR"=T2."NUM_CLIENT" and
T1."DATE_CREATION" between to_date('2002-09-01
00:00:00', 'YYYY-MM-DD HH24:MI:SS') and to_date('2002-09-30 00:00:00',
'YYYY-MM-DD HH24:MI:SS') and
T1."CODE_CIAL"<>'PORT'
order by 10 asc, 1 asc, 2 asc
quand je clique sur cette requete, elle s'execute bien et j'obtiens
toutes les données que je veux!
Ce que je voudrais maintenant c'est la lancer a partir d'un formulaire
en passant en parametre les dates.
Mon problème:
cette requete ne s'ouvre qu'en mode SQL ou feuilles de données mais
pas en mode création, et surtout je ne peux pas y mettre des trucs du
genre "forms!nom_formulaire!nom_champs ... parceque c'est pas du SQl
!!
étant un super debutant, la solution est peut etre simple, mais ...
pas pour moi!
merci pour votre aide
Vous pouvez exécuter des requêtes SELECT INTO pour importer des données d'une base Oracle dans une base Access.
Les requêtes de type SELECT INTO diffèrent de votre requête puisque ce ne sont pas des requêtes "SQL Direct". Les fonctions définies au niveau d'Oracle ne sont donc pas utilisables dans ces requêtes SELECT INTO.
Mais vous pouvez utiliser des fonctions VBA à la place des fonctions "Oracle".
En reprenant votre exemple, vous pouvez essayer de remplacer : TO_CHAR(T1."DATE_CREATION" ,'YYYY') par : Format(T1.DATE_CREATION ,'YYYY') ou par : Year(T1.DATE_CREATION)
Exemple de requête SELECT INTO créant une table dans la base MDB à partir de deux tables stockées dans une base SQL Server :
SELECT orders.OrderID INTO MesCommandes FROM [ODBC;DRIVER=SQL Server;SERVER=(local);UID=sa;PWD=sesame;DATABASE=NorthwindCS].orders, [ODBC;DRIVER=SQL Server;SERVER=(local);UID=sa;PWD=sesame;DATABASE=NorthwindCS].employees WHERE (((orders.EmployeeID)=employees.employeeID));
Benoit Compoint
"Serge" wrote in message news:
Bonjour, je desire importer ponctuellement (une fois pas mois) des données d'une base oracle vers Access, la base oracle n'etant pas toujours accessible. En ODBC avec DSN ... Pour cela je dispose de la requete "importation de données" suivante:
where T1."NUM_CLIENT_LIVR"=T2."NUM_CLIENT" and T1."DATE_CREATION" between to_date('2002-09-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS') and to_date('2002-09-30 00:00:00', 'YYYY-MM-DD HH24:MI:SS') and T1."CODE_CIAL"<>'PORT'
order by 10 asc, 1 asc, 2 asc
quand je clique sur cette requete, elle s'execute bien et j'obtiens toutes les données que je veux!
Ce que je voudrais maintenant c'est la lancer a partir d'un formulaire en passant en parametre les dates.
Mon problème: cette requete ne s'ouvre qu'en mode SQL ou feuilles de données mais pas en mode création, et surtout je ne peux pas y mettre des trucs du genre "forms!nom_formulaire!nom_champs ... parceque c'est pas du SQl !!
étant un super debutant, la solution est peut etre simple, mais ... pas pour moi! merci pour votre aide