IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

CREATE VIEW sur Access


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 108
    Par défaut CREATE VIEW sur Access
    Bonjour !

    voici mon problème : je n'arrive pas à créer de vues sur access !!!

    j'ai utilisé la syntaxe suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE VIEW Vue (Codeclient) AS SELECT Clients.identifiant FROM Clients
    exemple tout bête, pourtant Access me dit 'erreur de syntaxe dans l'instruction CREATE TABLE'

    et le focus se met sur le mot 'VIEW'

    je ne comprends pas cette erreur, est-il impossible de créer de vues sur Access??

  2. #2
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Bonsoir,

    Le moteur de base de données Jet ne prend pas en charge CREATE VIEW, à moins que tu n'actives le mode ANSI SQL 92.

    Ou alors, tu passes par une connexion ADO.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim strSQL As String
     
    strSQL = "CREATE VIEW Vue (Codeclient) AS SELECT Clients.identifiant FROM Clients"
    CurrentProject.Connection.Execute strSQL
    A+

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Par défaut
    Bonjour,

    Slici
    Quel est ton objectif ?

    Apparemment tu utilises Access avec son propre moteur de bases de données (Jet) pour des fichiers MDB.
    Jet utilise un dialecte de SQL, et en plus dans 2 modes distincts: le mode ANSI 92 (lié à l'utilisation de la bibilothèque ADO) et le mode "rustique" plus ancien (lié à la bibliothèque DAO).
    C'est ce SQL "rustique" qui est en vigueur dans l'interface utilisateur d'Access 2000.

    Si ton but est d'utiliser Access pour apprendre le SQL standard, alors ce n'est peut être pas une bonne idée.

    Si tu découvres Access, avec des connaissances d'autres SGBD, peut être cherches-tu à appliquer ce que tu connais déjà ?
    Dans ce cas, tu peux t'intéresser aux "Requêtes Access" qui sont enregistrées dans le fichier MDB. Ces requêtes peuvent elles mêmes être utilisées comme sources de données d'autres requêtes, de formulaires, d'états....

    Finalement, une Requête Access est assez proche d'une vue.
    _

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 108
    Par défaut
    je pensais creer une vue temporaire pour ensuite croiser cette vue avec une autre requete.

    Par exemple, on veut connaitre les clients qui ont un CA de plus de 10.000€ sur le Produit 'A' en Janvier 2008 ET QUI ONT aussi un CA de moins de 50.000€ en février 2008 sur le produit 'X'.

    Access 2000 ne connaissant pas les instruction INTERSECT ou UNION, ma solution actuelle est de passer par des IN, mais dans l'exemple ci dessus, je doit faire deux requetes imbriquées....

    je pensais créer une première requete, puis l'enregistrer comme une vue temporaire ensuite créer une seconde requete incluant les données de la vue.

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Par défaut
    Bonjour,

    Citation Envoyé par Slici Voir le message
    Access 2000 ne connaissant pas les instruction INTERSECT ou UNION,
    Erreur (tout au moins pour UNION)... Le SQL de Jet gère très bien l'UNION.
    Petite limitation: dans Access, tu dois obligatoirement créer ta requête UNION en SQL (pas de mode QBE possible).

    Citation Envoyé par Slici Voir le message
    je pensais créer une première requete, puis l'enregistrer comme une vue temporaire ensuite créer une seconde requete incluant les données de la vue.
    Je traduis en Access:
    je pensais créer une requête Access de type sélection (SELECT * FROM...)
    ensuite créer une seconde requête Access basée sur ma première requête Access.
    _

Discussions similaires

  1. [MySQL-5.6] create view sur un lien odbc
    Par charlyoleg dans le forum Requêtes
    Réponses: 0
    Dernier message: 18/04/2013, 16h47
  2. Champs auto_incremente sur un CREATE VIEW
    Par steven78700 dans le forum Requêtes
    Réponses: 5
    Dernier message: 05/04/2012, 22h32
  3. Creat view sur deux bases
    Par fozzeuh dans le forum Requêtes
    Réponses: 5
    Dernier message: 11/08/2011, 11h27
  4. Erreurs de syntaxes CREATE TABLE sur Access + MySQL
    Par bmarcesche dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 17/06/2009, 08h56
  5. Oracle 9.2 Privileges insuffisants sur Create View
    Par lunab54 dans le forum Oracle
    Réponses: 5
    Dernier message: 24/05/2006, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo